finishing the first stage of the typemap unification scheme, fixing issues with gcc and valgrind

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@7692 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2005-10-20 09:47:56 +00:00
commit ba3efb0917
44 changed files with 565 additions and 426 deletions

View file

@ -2,45 +2,54 @@
* error manipulation
* ----------------------------------------------------------------------------- */
%insert("runtime") "swigerrors.swg"
%insert("header") %{
SWIGINTERN VALUE
SWIG_Ruby_ErrorType(int SWIG_code) {
VALUE type;
switch (SWIG_code) {
case SWIG_MemoryError:
return rb_eNoMemError;
type = rb_eNoMemError;
break;
case SWIG_IOError:
return rb_eIOError;
type = rb_eIOError;
break;
case SWIG_RuntimeError:
return rb_eRuntimeError;
type = rb_eRuntimeError;
break;
case SWIG_IndexError:
return rb_eIndexError;
type = rb_eIndexError;
break;
case SWIG_TypeError:
return rb_eTypeError;
type = rb_eTypeError;
break;
case SWIG_DivisionByZero:
return rb_eZeroDivError;
type = rb_eZeroDivError;
break;
case SWIG_OverflowError:
return rb_eRangeError;
type = rb_eRangeError;
break;
case SWIG_SyntaxError:
return rb_eSyntaxError;
type = rb_eSyntaxError;
break;
case SWIG_ValueError:
return rb_eArgError;
type = rb_eArgError;
break;
case SWIG_SystemError:
return rb_eFatal;
type = rb_eFatal;
break;
case SWIG_AttributeError:
return rb_eRuntimeError;
type = rb_eRuntimeError;
break;
case SWIG_UnknownError:
return rb_eRuntimeError;
type = rb_eRuntimeError;
break;
default:
return rb_eRuntimeError;
type = rb_eRuntimeError;
}
}
SWIGINTERN void
SWIG_Ruby_SetErrorMsg(VALUE type, const char *msg) {
rb_raise(type, msg);
return type;
}
%}