Commit graph

2,446 commits

Author SHA1 Message Date
William S Fulton
cf768a2d98 incorporated CHANGES.current entries
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5579 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-17 21:46:32 +00:00
Dave Beazley
bfe9987444 Turned on shadow classes by default.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5577 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-17 19:09:36 +00:00
Dave Beazley
df5ea38b6f Removed config.h
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5576 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-17 19:09:17 +00:00
Dave Beazley
8c60e03c6a *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5575 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-17 17:57:55 +00:00
Marcelo Matus
802da993af fixing warning code 315 -> 321
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5574 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 06:01:38 +00:00
Marcelo Matus
bcdcb96b47 Adding missing built-in functions and names to pythonkw.swg and
fixing operator! warning code in python.swg


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5573 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 06:00:09 +00:00
Dave Beazley
d923c738f8 Suppress warning 321 by default.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5572 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 03:43:51 +00:00
Dave Beazley
541803fdf9 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5571 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 03:41:33 +00:00
Dave Beazley
686a6323c6 Changed warning to 321. 315 already used. Consult Warnings.html for list.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5570 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 03:40:00 +00:00
Dave Beazley
5f113875d1 Changed warning message.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5569 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-16 01:58:23 +00:00
Marcelo Matus
0927220163 added reference to only global bad names
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5568 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-15 20:24:47 +00:00
Marcelo Matus
bc95409961 be sure the global bad names refer to global functions
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5567 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-15 19:29:09 +00:00
Dave Beazley
e69a11d030 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5566 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-14 15:48:00 +00:00
Dave Beazley
53906cdba1 Weakened constructor name check to work around nested-class hack reported by
Gustavo Niemeyer.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5565 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-14 15:42:32 +00:00
William S Fulton
6bd65bba28 Test typemaps are being found for templated classes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5564 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-14 00:17:22 +00:00
William S Fulton
feae681f4e arrays of structures runtime test
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5563 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-14 00:02:33 +00:00
William S Fulton
71e1ac56cc remove SWIG_exception for director protected methods.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5562 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 23:52:31 +00:00
Marcelo Matus
409dff398b added a new broken director case. the fix is simple but
it will require to modify lang.cxx, so, it will
wait the next release.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5561 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 09:05:54 +00:00
William S Fulton
fd6917a2eb *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5560 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:27:05 +00:00
William S Fulton
fc6bdd5217 Director protected method wrapping tests
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5559 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:21:17 +00:00
William S Fulton
0116de6769 Added %javamethodmodifiers check
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5558 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:20:42 +00:00
William S Fulton
574d1db50b Removed default %csmethodmodifiers
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5557 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:18:32 +00:00
William S Fulton
f75d7cd856 Removed default %javamethodmodifiers
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5556 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:17:58 +00:00
William S Fulton
032bba26fd Windows path separator works on Cygwin in addition to the Unix path separator
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5555 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:17:09 +00:00
William S Fulton
e7d72724aa -dirprot display order
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5554 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:16:08 +00:00
William S Fulton
2e0346a3a6 %javamethodmodifiers (java) and %csmethodmodifiers (C#) operate slightly differently.
Previously this had to be present to set the method modifiers. Now this feature is only
used if it exists for the method being wrapped. The default is "public" as previous
however, when wrapping protected director methods it is "protected".


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5553 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-13 00:13:10 +00:00
William S Fulton
87cd33a6d6 Added missing function body which was causes linker errors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5552 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 23:19:07 +00:00
Dave Beazley
9494cfbf85 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5551 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 18:29:00 +00:00
Marcelo Matus
a8e552c932 added defined
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5550 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 08:25:10 +00:00
Marcelo Matus
db500c6891 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5549 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 07:45:01 +00:00
Marcelo Matus
720993e41f using code 315 for bad names only
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5548 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 07:15:00 +00:00
Marcelo Matus
c32f1d93d1 added ocaml keywords
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5547 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 07:12:42 +00:00
Marcelo Matus
8e8e0ce6e8 Forgot #undefs, add python bad names, change names from
tclkw.swg and phpkw.swg to the right ones tcl8kw.swg and php8kw.swg.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5546 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 06:15:46 +00:00
Marcelo Matus
8abe741cdc swig -DSWIG_ALLKW was too ugly. Use -Wallkw instead. Reverting swig.swg
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5545 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 06:12:29 +00:00
Marcelo Matus
2f45350a89 bad spelling in warning
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5544 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 06:09:53 +00:00
Marcelo Matus
7b8f415319 - Uniform the definition of the keyword warnings through
the supported languages.

- Added keyword list for most of the languages that didn't
  have one.

- "All keywords" warning support, through the -DSWIG_ALLKW
  option.

Read the Changes.current


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5543 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-12 02:23:52 +00:00
William S Fulton
76e67c8cee *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5542 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:44:56 +00:00
William S Fulton
6ee1c2b542 *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5541 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:39:08 +00:00
William S Fulton
d71d6d1d85 Added test for %import
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5540 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:33:34 +00:00
William S Fulton
ca64cfb093 no message
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5539 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:31:14 +00:00
William S Fulton
a998837604 Added support for accepting the Unix directory separator '/' on Windows and the Mac
in addition to the native one ( '\' on Windows). This can be used in %import, %include
and commandline options taking a path, for example -I.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5538 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:21:42 +00:00
William S Fulton
121f9b5740 Added test for %import
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5537 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:18:21 +00:00
William S Fulton
55c4bf307f base() changed to basemethod() - base is a C# keyword
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5536 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 21:16:21 +00:00
Marcelo Matus
75e38f83b7 it wasn't swig, it was my script
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5535 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 08:24:54 +00:00
Marcelo Matus
7e0e4712e6 forgot to comment the last error fix and the dirprot implications
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5534 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 07:35:43 +00:00
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
Marcelo Matus
72984676ca Lateral change to add runtime "reprotection" at the python
side for protected director members.

Lib/python/director.swg: added needed code for runtime checking
Source/Modules/python.cxx: added needed code for runtime checking
director_protected_runme.py: checks now that the runtime protection is working


The extra runtime checking is only done for protected members,
so, the old public directors members don't feel any overhead.

This finished the director protected support for the python language.
Java and Ocalm will need to add the "reprotection" mechanism latter.
But as in the python case, the changes will be localized in the
languages files, and there will be no need to touch the core
files anymore.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5532 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 01:59:12 +00:00
Marcelo Matus
c2dff1e487 Added 'sleep 3' workaround.
When used, it reduces the time for compile the
test-suite from 23 minutes to 2 minutes. It also
reduces plain swig compilation

This is how it is used:

1.- copy or link the Tools/sleep program
    into a directory in your path, like ${HOME}/bin.

2.- check the right path for the real sleep program,
    now it says

       SLEEP=/bin/sleep

    but in your system could be different

3.- compile like this

      NOSLEEP=1 make
      NOSLEEP=1 make check-python-test-suite

    or

      export NOSLEEP=1
      make
      make check-python-test-suite

    just rembember to unset NOSLEEP if you are
    not using it anymore.

I don't see any problem in the compilation
if sleep is deactivated. But if in your
system/platform the compilation fails,
just don't set NOSLEEP, and the compilation
will go back to sleep as usual again.


This is just a work around until the the 'sleep 3'
problem is further analized.

Marcelo


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5531 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-11 00:14:57 +00:00
Marcelo Matus
c41374becc %rename(x) Foo::y();
%inline %{
class Foo {
protected:
    void x();
public:
    void y();
};

%}

will work in plain or plain director mode, but it will complain the
same as before with director protected support.

The reason is that the parser emmits the warning, and at that stage it
is not possible to decide if the protected Foo::x() could or not
conflict with the renamed Foo::y(), since Foo::x() could be virtual,
even when no "virtual" attribute is used.



Core:
 parser.y: Detect the dirprot mode and prevents the generation of
           protected symbols at the parsing stage.
 lang.cxx: Export the director_protected_mode for parser.y and the
           director protected member detection is much cleaner.
 main.cxx: Fix the -dirprot flag, it was working in SWIG_FEATURE but
           not in the command line.(minor thing not relate to the error).
 swigmod.h: added Lang::dirprot_mode() for cleaner detection.
 utils.cxx: is_member_director() centralizes and improve the test.

Test suite:
 protected_rename.i: added %inline, so it can compile now.
 director_protected.i: more cases, checking using %rename.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5530 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-10 23:10:31 +00:00
Logan Johnson
b3b75149de *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5529 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-10 14:28:29 +00:00