swig/Source
Vadim Zeitlin 9dd1301ec4 Improve the fix for exceptions support with multiple modules
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.
2021-11-27 00:19:05 +01:00
..
CParse Fix -Wchar-subscripts warning 2021-04-26 22:32:52 +01:00
DOH Fix few unused variable warnings 2021-03-07 11:20:31 +00:00
Doxygen Don't use invalid iterators in Doxygen command parsing code 2021-02-22 21:15:03 +01:00
Include Merge branch 'master' into C 2021-10-04 16:03:36 +02:00
Modules Improve the fix for exceptions support with multiple modules 2021-11-27 00:19:05 +01:00
Preprocessor Allow customizing type mangling in SWIG preprocessor 2021-11-10 00:53:39 +01:00
Swig Use SWIG-specific suffix for non-overloaded %extend functions too 2021-11-10 00:53:39 +01:00
Makefile.am Merge branch 'master' into C 2019-07-24 20:26:50 +02:00
README Remove details of long-removed directories 2021-05-16 08:42:39 +12:00

SWIG Source directory

 Source/DOH          -  A core set of basic datatypes including
                        strings, lists, hashes, and files.  Used
                        extensively by the rest of SWIG.

 Source/Swig         -  Swig core. Type-system, utility functions.

 Source/Preprocessor -  SWIG C Preprocessor

 Source/CParse       -  SWIG C Parser (still messy)

 Source/Modules      -  Language modules.

 Source/Include      -  Include files.