Commit graph

34 commits

Author SHA1 Message Date
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
William S Fulton
d95a07f486 Warning fix for Visual C++. const is incorrectly being defined away to nothing.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5495 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-07 00:29:00 +00:00
Marcelo Matus
ad8819f01e Check the protected constructor case. They don't get into the director.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5486 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-05 06:08:54 +00:00
Marcelo Matus
0f19564193 Fixes to support protected members with director, proper virtual member recognition and support of the nodirector feature
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5485 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-05 01:59:28 +00:00
Dave Beazley
d61738778a Fixed parsing problem with = &x[]. This was causing the
Java java-lib_various.i test to fail.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5419 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-26 19:54:09 +00:00
Dave Beazley
9a0a04303d [ 756552 ] missing default argument class scope with "|"
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5403 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-25 19:27:17 +00:00
Dave Beazley
075af8535a [ 840878 ] support for %inline { ... } (PATCH)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5401 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-25 18:48:11 +00:00
Dave Beazley
e7c45edd39 Fixed [ 836903 ] C++ inconsistency (with void arguments).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5398 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-25 18:26:03 +00:00
Dave Beazley
ed4fd6b6cd Fixed [ 791835 ] Default argument with cast: txt = (char *)"txt" syntax Error.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5392 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-25 16:48:51 +00:00
Dave Beazley
603a9e5076 Added error message for using %template with qualified names inside of
a namespace.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5174 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-30 18:57:45 +00:00
Dave Beazley
8ae4c60d39 Major refactoring of DOH List/Hash iterators. See CHANGES
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5101 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-11 20:26:57 +00:00
Dave Beazley
aa9c5cc68e Fixed [ 797573 ] no way to rename classes coming from C structures.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5051 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-09-01 17:54:22 +00:00
Dave Beazley
2ff7dfb6c1 Work on embedded typemaps. Highly experimental--probably broken
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5007 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-08-17 21:19:27 +00:00
Dave Beazley
5f076c6540 Fixed template partial specialization argument expansion bug
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4650 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-04-01 19:08:25 +00:00
Dave Beazley
8af562f3a0 Fixed "bloody hell" expression evaluation problem.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4638 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-27 22:58:40 +00:00
Dave Beazley
c2dc5bbab1 Fixed default argument problem.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4632 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-26 23:21:04 +00:00
Dave Beazley
e7206b20a6 Fixed segfault problem. We should probably release 1.3.19 fairly soon as this
problem was serious.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4631 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-26 19:18:32 +00:00
William S Fulton
6b4f4c9d21 minor warning fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4614 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-21 22:24:18 +00:00
Dave Beazley
c64bd1716e Fixed overloaded constructor+%extend problem.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4606 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-21 17:11:06 +00:00
Dave Beazley
815f414e65 Fixed odd class scope bug.
class Foo {
public:
    int Foo::bar(int x);
};

SWIG just drops the "Foo" prefix the method and continues (previously,
the declaration was ignored entirely).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4591 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-20 19:36:51 +00:00
Dave Beazley
a13e0a67c1 Fix to escape code handling.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4494 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-10 14:03:05 +00:00
William S Fulton
6116a681bc gcc -Wall warnings fix
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4426 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-03-03 23:29:53 +00:00
Dave Beazley
adb6edca34 Fixed [ 653548 ] error parsing casting operator definition.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4418 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-27 19:34:07 +00:00
Dave Beazley
6bf0ddc233 Added support for anonymous bit-fields.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4416 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-27 17:21:48 +00:00
Dave Beazley
8ab03e95ec Fixed [ 642112 ] Constants char bug
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4402 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-26 19:13:28 +00:00
Dave Beazley
dd74b7ea59 Extremely scary template patch to fix Luigi's partial specialization argument handling bug.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4398 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-26 17:44:28 +00:00
Dave Beazley
cdce67d492 Fixed arrayref.i test.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4396 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-25 22:37:41 +00:00
William S Fulton
2579240289 enumvalue attribute always has a value now. If there is no explicit value set
in the code being wrapped, then a value is constructed which is
1+ the previous enum value. For example:
enum numbers { zero, one, seven=7, eight};
has enumvalue attributes of '0', 'zero+1', '7' and 'seven+1'

Based on patch by Heiner Petith.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4363 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-19 23:06:10 +00:00
Dave Beazley
a6390f2d45 Fixed missing line break in %except warning message
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4349 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-19 13:51:38 +00:00
Dave Beazley
e7c56d083a Fixed Luigi's template+%extend magic trick.
Marcelo should verify that his codes still work... ;-).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4344 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-18 21:26:51 +00:00
Dave Beazley
c7e970d87a Fixed explicit instantiation syntax error.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4305 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-12 17:18:35 +00:00
Dave Beazley
d0037d9ef4 Fixed [ 675491 ] parse error with global namespace qualification
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4255 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-02-06 16:57:32 +00:00
Dave Beazley
37d8bc265b Added support for the unary plus operator in expressions.
Amazingly, this never seems to be have been added to SWIG
before ;-).


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4247 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-01-31 17:28:51 +00:00
Dave Beazley
12a43edc2d The great merge
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@4141 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2002-11-30 22:01:28 +00:00