swig/Source
Marcelo Matus 9c372c5c64 Fixed more %rename errors, and moving
the function 'need_protected' outside parser.y,
ie, if more subtle cases appear, they can be
fixed without changing parser.y.

Now parser.y looks much more like the original 1.32.

 Source/CParse/parser.y: moving and fixing 'need_protected'
 Source/CParse/util.c:  moving and fixing 'need_protected'
 Examples/test-suite/director_protected.i: more %rename cases
 Examples/test-suite/director_using.i: fixing bad module name

The errors in question where related to the mix of
%rename + (typedef|static)  + protected + dirprot_mode:


%rename(s) Foo::p;
%rename(q) Foo::r;

%inline {
class Foo {
public:
  virtual ~Foo() {}

  int p(){ return 1;}
  int r(){ return 1;}

protected:

  typedef int q();
  static int s();
};

since q and s look like functions, the parser was adding them
completly to the symbol table, and clashing latter with the
attemped renames.

The error was only visible when dirprot was enabled, with
the old behavior it was ok.

Marcelo


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5533 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 03:59:18 +00:00
..
CParse Fixed more %rename errors, and moving 2003-12-11 03:59:18 +00:00
DOH [ 829317 ] Adds DohSplitLines function 2003-10-31 17:36:37 +00:00
Include *** empty log message *** 2003-11-20 02:49:12 +00:00
Modules Lateral change to add runtime "reprotection" at the python 2003-12-11 01:59:12 +00:00
Preprocessor Fixed [ 850666 ] #include extra line added 2003-11-28 18:08:13 +00:00
Swig Fixed casting problem with references to arrays in gcc-3.3 (and maybe other versions). 2003-11-28 19:06:35 +00:00
.cvsignore Missing files 2003-05-08 13:02:58 +00:00
Makefile.am *** empty log message *** 2003-12-08 15:24:50 +00:00
README *** empty log message *** 2002-12-03 20:43:22 +00:00

SWIG Source directory

This directory currently contains a mix of legacy SWIG1.1 code and
recent development work.  As a result, it's still a little messy.
Here is a rough breakdown of the directories:

 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.


The following directories may be in CVS, but are largely deprecated:

 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.