swig/Source
Olly Betts 975f8fcfdb Avoid undefined behaviour in DOH Replace() function
If the source and replacement strings were the same length, the code
was performing undefined pointer arithmetic involving a NULL pointer.
I'm not aware of any observable effects of this in practice, but it's
potentially problematic.  It's detected by ubsan, for example when
running `make check-python-test-suite`:

DOH/string.c:839:4: runtime error: applying non-zero offset to non-null pointer 0x602000001558 produced null pointer
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior DOH/string.c:839:4 in
2020-09-04 10:44:49 +12:00
..
CParse Recognize C++ conversion operators with trailing '= 0' as abstract 2020-02-13 20:16:44 +01:00
DOH Avoid undefined behaviour in DOH Replace() function 2020-09-04 10:44:49 +12:00
Doxygen Fix for missing space after \endlink in doxygen 2020-05-02 18:42:55 -05:00
Include Add iterator safety check in DoxygenParser::parse 2019-07-06 11:30:56 -05:00
Modules Fix crashes in swig_connect_director during director class construction. 2020-08-28 18:23:47 +01:00
Preprocessor Fix regression parsing gcc preprocessor linemarkers 2019-02-19 21:32:04 +00:00
Swig naming: Add unreachable return to !HAVE_PCRE path 2020-08-13 09:19:37 -07:00
Makefile.am Disable CFFI Common Lisp target language 2019-02-05 18:42:23 +00:00
README update this README 2008-11-03 13:32:33 +00: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.

Historic directories which may be in CVS, but have been removed:

 Source/Modules1.1   -  Old SWIG-1.1 modules. Empty.

 Source/LParse       -  Experimental parser.  Officially dead
                        as CParse is more capable.

 Source/SWIG1.1      -  Old SWIG1.1 core. Completely empty now.