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@5890 626c5289-ae23-0410-ae9c-e8d60b6d4f22
%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@5750 626c5289-ae23-0410-ae9c-e8d60b6d4f22
%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@5690 626c5289-ae23-0410-ae9c-e8d60b6d4f22
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@5635 626c5289-ae23-0410-ae9c-e8d60b6d4f22
%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@5530 626c5289-ae23-0410-ae9c-e8d60b6d4f22
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@5488 626c5289-ae23-0410-ae9c-e8d60b6d4f22
"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@5457 626c5289-ae23-0410-ae9c-e8d60b6d4f22
- Compliance with ISO/IEC 14882:1998(E) 17.4.3.1.2 -> eg double underscores removed
- Potential member variable and method name clashes remove by preceding with 'swig'
- consistent use of C++ booleans for the swig_disown flag across and within the modules that use this it in director code.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@5140 626c5289-ae23-0410-ae9c-e8d60b6d4f22
because that name better reflects what the function's trying to accomplish
(test whether the object for which the constructor's being called is an
instance of the class, or an instance of one of its subclasses).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4722 626c5289-ae23-0410-ae9c-e8d60b6d4f22