Index: Lib/typemaps/exception.swg =================================================================== RCS file: /cvsroot/swig/SWIG/Lib/typemaps/exception.swg,v retrieving revision 1.8 diff -u -4 -r1.8 exception.swg --- Lib/typemaps/exception.swg 7 Mar 2006 00:14:10 -0000 1.8 +++ Lib/typemaps/exception.swg 17 Mar 2006 00:10:52 -0000 @@ -12,9 +12,9 @@ /* macros for error manipulation */ #define %nullref_fmt() "invalid null reference " #define %varfail_fmt(_type,_name) "in variable '"`_name`"' of type '"`_type`"'" -#define %argfail_fmt(_type,_name,_argn) "in method '" `_name` "', argument " `_argn`" of type '" `_type`"'" +#define %argfail_fmt(_type,_name,_argn) "in method '" `_name` "', expected argument " `_argn`" of type '" `_type`"'" #define %outfail_fmt(_type) "in output value of type '"_type"'" #define %argnullref_fmt(_type,_name,_argn) %nullref_fmt() %argfail_fmt(_type, _name, _argn) #define %varnullref_fmt(_type,_name) %nullref_fmt() %varfail_fmt(_type, _name) #define %outnullref_fmt(_type) %nullref_fmt() %outfail_fmt(_type) Index: Source/Modules/python.cxx =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Modules/python.cxx,v retrieving revision 1.203 diff -u -4 -r1.203 python.cxx --- Source/Modules/python.cxx 16 Mar 2006 01:46:50 -0000 1.203 +++ Source/Modules/python.cxx 17 Mar 2006 00:10:52 -0000 @@ -39,9 +39,8 @@ static File *f_directors_h = 0; static File *f_init = 0; static File *f_shadow_py = 0; static String *f_shadow = 0; -static String *f_shadow_imports = 0; static String *f_shadow_stubs = 0; static String *methods; static String *class_name; @@ -669,9 +668,8 @@ } Delete(filen); filen = NULL; f_shadow = NewString(""); - f_shadow_imports = NewString(""); f_shadow_stubs = NewString(""); Swig_register_filebyname("shadow",f_shadow); Swig_register_filebyname("python",f_shadow); @@ -817,12 +815,8 @@ Printf(f_wrappers,"}\n"); Printf(f_wrappers,"#endif\n"); if (shadow) { - /* - Printf(f_shadow_imports,"\nimport %s\n", module); - Printv(f_shadow_py, f_shadow_imports, "\n",NIL); - */ Printv(f_shadow_py, f_shadow, "\n",NIL); Printv(f_shadow_py, f_shadow_stubs, "\n",NIL); Close(f_shadow_py); @@ -882,14 +876,11 @@ } // finally, output the name of the imported module if (shadowimport) { - if (!options || (!Getattr(options, "noshadow") && !Getattr(options, "noproxy"))) { - Printf(import, "_%s\n", modname); - if (!Strstr(f_shadow_imports, import)) { - Printf(f_shadow, "import %s\n", modname); - Printv(f_shadow_imports, import, NULL); - } + if (!options || (!Getattr(options, "noshadow") && !Getattr(options, "noproxy"))) { + Printf(import, "%s\n", modname); + Printf(f_shadow, "%s", import); } } Delete(import); @@ -1154,10 +1145,15 @@ // Do the param type too? if (showTypes) { type = SwigType_base(type); - lookup = Swig_symbol_clookup(type, 0); - if (lookup) type = Getattr(lookup, "sym:name"); + SwigType* qt = SwigType_typedef_resolve_all(type); + if (SwigType_isenum(qt)) + type = NewString("int"); + else { + lookup = Swig_symbol_clookup(type, 0); + if (lookup) type = Getattr(lookup, "sym:name"); + } Printf(doc, "%s ", type); } if (name) {