swig/Source
Repository files (latest commit first)
Filename Latest commit message Latest commit date
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.