swig/Source
William S Fulton 31b5f36b74 Fix line number and file name reporting for some macro preprocessor warnings.
The line number of the macro argument has been corrected and the line number
of the start of the macro instead of one past the end is used. Some examples:
  file.h:11: Error: Illegal macro argument name '..'
  file.h:19: Error: Macro 'DUPLICATE' redefined,
  file.h:15: Error: previous definition of 'DUPLICATE'.
  file.h:25: Error: Variable-length macro argument must be last parameter
  file.h:32: Error: Illegal character in macro argument name
  file.i:37: Error: Macro 'SIT' expects 2 arguments

Code used for testing:
// file.h
%define SIT(ax,b)
abc(
%enddef

%define MISSING_DOT1(a,
b,
..)
xxx
%enddef

%define MISSING_DOT2(..)
xxx
%enddef

%define DUPLICATE(a,b)
abc
%enddef

%define DUPLICATE(b)
xxx
%enddef

%define VARARGS_WRONG(a,
x,
...,
 b)
xxx
%enddef

%define BAD_ARGNAME(
a,
b{c
)
xxx
%enddef

SIT(1)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12195 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-08-29 23:32:49 +00:00
..
CParse Fix wrapping of C++ enum boolean values 2010-05-14 18:46:20 +00:00
DOH Make argument of DohWrite() const. 2010-07-22 16:59:29 +00:00
Include Remove the -rename option in the Go language support. Do a much 2010-06-17 18:59:26 +00:00
Modules Include the values of configurable options in swig -version. 2010-07-22 17:02:55 +00:00
Preprocessor Fix line number and file name reporting for some macro preprocessor warnings. 2010-08-29 23:32:49 +00:00
Swig Fix bug in applying regex replacement to non-matching strings. 2010-08-14 14:12:23 +00:00
Makefile.am make beautify-file fixes and other cosmetics 2010-06-11 06:36:51 +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.