diff options
Diffstat (limited to 'Source/Swig/warn.c')
-rw-r--r-- | Source/Swig/warn.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Source/Swig/warn.c b/Source/Swig/warn.c new file mode 100644 index 0000000..8f577eb --- /dev/null +++ b/Source/Swig/warn.c @@ -0,0 +1,34 @@ +/* ----------------------------------------------------------------------------- + * See the LICENSE file for information on copyright, usage and redistribution + * of SWIG, and the README file for authors - http://www.swig.org/release.html. + * + * warn.c + * + * SWIG warning framework. This was added to warn developers about + * deprecated APIs and other features. + * ----------------------------------------------------------------------------- */ + +char cvsroot_warn_c[] = "$Id: warn.c 9604 2006-12-05 21:57:44Z beazley $"; + +#include "swig.h" + +static Hash *warnings = 0; + +/* ----------------------------------------------------------------------------- + * Swig_warn() + * + * Issue a warning + * ----------------------------------------------------------------------------- */ + +void Swig_warn(const char *filename, int line, const char *msg) { + String *key; + if (!warnings) { + warnings = NewHash(); + } + key = NewStringf("%s:%d", filename, line); + if (!Getattr(warnings, key)) { + Printf(stderr, "swig-dev warning:%s:%d:%s\n", filename, line, msg); + Setattr(warnings, key, key); + } + Delete(key); +} |