The approach of the parent commit almost worked, but broke down if the main module itself redefined typemaps for SWIGTYPE, as this broke generation of SWIG_CException wrappers when we finally did it at the end. This probably could be salvaged by explicitly defining the typemaps for SWIG_CException itself and also "int" and "char*", used for its functions, but this just seems too fragile so switch to a different approach instead: examine the parse tree immediately when starting generation to check if it contains any %imports, and decide whether we need to generate exceptions support in this module based on this. New version seems more robust and easier to understand, and is probably not noticeably slower. Still keep the one in the previous commit just in case we need/want to return to it later -- but keep in min the typemap redefinition problem described above if we do it. |
||
|---|---|---|
| .. | ||
| allocate.cxx | ||
| browser.cxx | ||
| c.cxx | ||
| cffi.cxx | ||
| contract.cxx | ||
| csharp.cxx | ||
| d.cxx | ||
| directors.cxx | ||
| emit.cxx | ||
| go.cxx | ||
| guile.cxx | ||
| interface.cxx | ||
| java.cxx | ||
| javascript.cxx | ||
| lang.cxx | ||
| lua.cxx | ||
| main.cxx | ||
| mzscheme.cxx | ||
| nested.cxx | ||
| ocaml.cxx | ||
| octave.cxx | ||
| overload.cxx | ||
| perl5.cxx | ||
| php.cxx | ||
| python.cxx | ||
| r.cxx | ||
| README | ||
| ruby.cxx | ||
| scilab.cxx | ||
| swigmain.cxx | ||
| swigmod.h | ||
| tcl8.cxx | ||
| typepass.cxx | ||
| utils.cxx | ||
| xml.cxx | ||
06/25/2002 This directory contains all of the SWIG language modules. Many of these modules contain code that dates back to SWIG1.0. The module API has changed a lot in the development releases so this is fairly messy. We're working on cleaning it up, but you'll have to bear with us until it's done. -- Dave