fix for smart_pointers + friends, fix for errant Delete
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@6914 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
3e64c5b3c2
commit
4eeb33782e
2 changed files with 4 additions and 2 deletions
|
|
@ -13,6 +13,8 @@
|
||||||
static int zx;
|
static int zx;
|
||||||
|
|
||||||
static int boo() { return 0;}
|
static int boo() { return 0;}
|
||||||
|
|
||||||
|
friend int foo(Foo* foo) { return 0;}
|
||||||
};
|
};
|
||||||
|
|
||||||
class Bar {
|
class Bar {
|
||||||
|
|
|
||||||
|
|
@ -272,7 +272,8 @@ class Allocate : public Dispatcher {
|
||||||
} else if (Strcmp(nodeType(c),"cdecl") == 0) {
|
} else if (Strcmp(nodeType(c),"cdecl") == 0) {
|
||||||
if (!Getattr(c,"feature:ignore")) {
|
if (!Getattr(c,"feature:ignore")) {
|
||||||
String *storage = Getattr(c,"storage");
|
String *storage = Getattr(c,"storage");
|
||||||
if (!((Cmp(storage,"typedef") == 0))) {
|
if (!((Cmp(storage,"typedef") == 0))
|
||||||
|
&& !((Cmp(storage,"friend") == 0))) {
|
||||||
String *name = Getattr(c,"name");
|
String *name = Getattr(c,"name");
|
||||||
String *symname = Getattr(c,"sym:name");
|
String *symname = Getattr(c,"sym:name");
|
||||||
Node *e = Swig_symbol_clookup_local(name,0);
|
Node *e = Swig_symbol_clookup_local(name,0);
|
||||||
|
|
@ -321,7 +322,6 @@ class Allocate : public Dispatcher {
|
||||||
} else {
|
} else {
|
||||||
Append(methods,cp);
|
Append(methods,cp);
|
||||||
}
|
}
|
||||||
Delete(cp);
|
|
||||||
cc = Getattr(cc,"sym:nextSibling");
|
cc = Getattr(cc,"sym:nextSibling");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue