Marcelo Matus
5023285fb8
Fix directors + protected pure virtual members + protected
...
constructor.
Now it doesn't crash, you don't need to use dirprot, and no, it is not
emitting all the protected members, unless dirprot is used.
Swig only emits the protected members or constructors needed to prevent
the compilation for crashing. The rest of the protected members
are emitted when dirprot is used.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6493 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-24 05:58:15 +00:00
Marcelo Matus
1ecf1e4726
fix missed check for director_prot_ctor_code
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6487 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-22 23:34:10 +00:00
Marcelo Matus
452b7bedc5
fix for language that don't support directors
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6480 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-22 08:10:37 +00:00
Marcelo Matus
114c703acd
fix director + abstract + constructors, reported by Brian Kelley
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6478 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-22 07:25:42 +00:00
William S Fulton
74f9ab820b
compact default arguments feature (original default argument wrapping mode)
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6449 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-20 20:59:33 +00:00
Marcelo Matus
01bde715f4
ix variable wrapping with private assign operator + fix SwigValueWrapper
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6442 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-19 23:31:40 +00:00
Marcelo Matus
c388088863
fix for bug 901706
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6438 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-18 09:10:23 +00:00
Marcelo Matus
4804b899db
fix feature director/nodirector, fix callback for python, reduce the SwigValueWrapper use
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6425 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-18 01:32:11 +00:00
Marcelo Matus
1ea4adbcd4
add Scott Fix for directors+rename, and testExamples/test-suite/director_basic.i
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6388 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-11 22:53:24 +00:00
Marcelo Matus
b5c610922a
more valuewrapper cases
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6380 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-08 20:32:20 +00:00
Marcelo Matus
3264efdfbf
add tests and fix the value wrapper for opaque types, including the template cases
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6374 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-08 09:08:06 +00:00
William S Fulton
dc85fd5f30
%extend and default args fixes
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6366 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-07 20:36:10 +00:00
Marcelo Matus
48d1b19bb7
fix empty throw() + directors
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6322 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-05 21:06:56 +00:00
Marcelo Matus
776f15623e
several fixes, see CHANGES.current 10/04/2004
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6317 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-05 00:19:26 +00:00
Marcelo Matus
625985875d
fix %callback and add %pythoncallback
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6279 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-10-01 21:44:26 +00:00
William S Fulton
1b90037d2e
memory leak fix
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6219 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-09-03 22:13:41 +00:00
William S Fulton
4c02e7cc0e
Fix for enum forward declarations
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6117 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-08-23 20:10:51 +00:00
William S Fulton
3ff1711d49
patch by Kevin Smith to emit directors when %feature("director") is specified for a class with no virtual methods, but a virtual destructor
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5905 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-05-12 21:18:09 +00:00
William S Fulton
be3e61a82c
Revert typemaps changes for member variables (and static members and globals for some languages ).
...
The typemaps were changed to use const ref typemaps (C++ only, not C).
Inconsistency removed and the pointer typemaps used again.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5890 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-26 20:24:18 +00:00
Marcelo Matus
553698d489
fix dirprot mode
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5874 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 12:20:04 +00:00
Marcelo Matus
aa33886558
error fix in lang.cxx and more comments
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5871 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 08:09:57 +00:00
Marcelo Matus
405a7335a7
fix java reg. tests and add -directors flag
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5867 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-11 05:55:35 +00:00
William S Fulton
d19287dc1f
enum support function for looking up the enum node from the symbol table given any enum string type
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5848 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-04-09 19:33:05 +00:00
Marcelo Matus
e74ce651ca
better support for member vars
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5794 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-28 14:05:53 +00:00
Henning Thielemann
a5a254d7fa
'const' for parameters of addSymbol
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5765 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-18 18:40:26 +00:00
Marcelo Matus
cf8a1c311c
Allowing the empty %template directive, such as
...
%template() std::vector<int>;
to process the class "typedef"s and "typemap"s. Before
only the internal "typedef"s were processed.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5750 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-03-17 08:18:17 +00:00
William S Fulton
f451962c82
fix classLookup() to return consistent results when %ignore specified
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5697 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-02-03 21:19:19 +00:00
Marcelo Matus
6dceec6fdb
Simple patch to allow fragments to include other fragments:
...
%fragment("Hello","header") "..."
%fragment("Hi","header",fragment="Hello") "..."
the latter fragment will include the first one if is invoked.
more than one fragment can be included at the time, just
keep adding fragment="f1",fragment="f2", etc.
this is used to emulate typemaps reuse, where all the
reusable typemap code is put in a fragment static method,
and then it can be included from another fragment typemap
as needed.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5690 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-27 23:39:35 +00:00
Marcelo Matus
f5fc2d494d
sorry, last commit was from an older version
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5669 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-22 07:17:05 +00:00
Marcelo Matus
6e49d626d4
more comments and cases in the unrollVirtual method, still there is one that is not working...
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5668 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-22 07:07:41 +00:00
Marcelo Matus
5078783796
better treatment of the '0' director methods case
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5658 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-21 01:04:50 +00:00
Marcelo Matus
9cfb9a490b
fixes for the nodirector feature and the '0' director member case
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5657 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-21 00:46:08 +00:00
William S Fulton
b0df32dd1a
Various warning fixes for .NET 2003 cl /W4 to work barring one warning and for gcc -ansi -Wall -pedantic to be warning free:
...
const fixes and function prototype declarations matching the definition etc
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5639 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-15 22:46:07 +00:00
Marcelo Matus
bd9aa0c7c9
- Normalize the 'Swig_error' calls and formats, before some
...
of the strings start like "Error. XXX", others like "XXX".
The format is now defined in 'error.c:Swig_error_msg_format()'.
- Normalize the multiline error/warning messages to correctly
use -Fformat definition.
- Centralize the error/warning format definitions in
'error.c:Swig_error_msg_format()'.
- Fix a minor error in cpp.c, that after finding an error, still
was emitting a redefined macro, producing duplicated error/warning
messages in parser.y.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5635 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-15 08:33:12 +00:00
Marcelo Matus
66c06af171
added support for friend declarations and clean/fix the
...
unrollVirtualMethods for the error shown in the director_redefined.i
example.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5621 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2004-01-13 01:12:53 +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
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
Marcelo Matus
2fe581fff7
minor clean up
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5528 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-09 23:57:53 +00:00
Marcelo Matus
66ae9df8b1
promote the 'using' methods to public. Also, fix a sef. fault for using with pointers, see using_pointers.i
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5525 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-09 23:24:37 +00:00
Marcelo Matus
634b973f31
The dirprot feature is now disabled by default. Added dirprot option and ruby runtime examples.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5510 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-09 02:52:08 +00:00
Marcelo Matus
93dd1e228e
fix problem with protected members, and add some of them to the test
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5507 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-08 22:50:46 +00:00
Marcelo Matus
26e9014fc9
preventing generation of director protected members for languages with no director support
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5506 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-08 22:21:11 +00:00
Marcelo Matus
7b69dddba0
director protected support cleanup
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5505 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-08 21:56:14 +00:00
Dave Beazley
9e98fd1252
Fixed bus error. Removed inline functions. Minor cleanup.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5500 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-08 15:24:39 +00:00
Marcelo Matus
bbde8dafa9
Moving the director protected member support to the top level. Now it should works in all the languages. Test it.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5498 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-07 23:00:02 +00:00
Dave Beazley
ac0be15578
Restored patch that added "classtypeobj" attribute.
...
Guys..... please be careful when committing. I added this patch a couple of days
ago and now it's suddenly gone. What's the deal? Did someone commit an old version
of lang.cxx on top of this patch?
-- Dave
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5488 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-05 18:50:16 +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
1c7cbccaa8
Added new attribute to class nodes
...
"classtypeobj"
This is the raw, SWIG type-system representation of the class type. This
should be used in all typemap lookups and operations involving the class name.
Note: There is inconsistent use of the "classtype" attribute across language modules--
especially in code related to directors. To avoid breaking the universe, I have
decided to store the correct type encoding as "classtypeobj" instead of replacing
"classtype". As modules are checked they can elect to use "classtype" or "classtypeobj"
as appropriate.
Note: William, you should use "classtypeobj" to fix the typemap problem (probably).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5457 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-12-02 18:56:59 +00:00
William S Fulton
4dfa0ed902
extern method declarations moved to header file
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5334 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-18 20:21:15 +00:00
Dave Beazley
72f738909e
Contract checking now turned on by default. Some other cleanup.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@5313 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2003-11-13 04:17:52 +00:00