fix ignored '%template(Foo)' after '%ignore Foo'
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8628 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
d6757125c2
commit
3fe6f9717e
1 changed files with 12 additions and 3 deletions
|
|
@ -429,7 +429,9 @@ static void add_symbols(Node *n) {
|
||||||
n = nextSibling(n);
|
n = nextSibling(n);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (strncmp(Char(symname),"$ignore",7) == 0) {
|
if (GetFlag(n,"feature:ignore")) {
|
||||||
|
Swig_symbol_add(0, n);
|
||||||
|
} else if (strncmp(Char(symname),"$ignore",7) == 0) {
|
||||||
char *c = Char(symname)+7;
|
char *c = Char(symname)+7;
|
||||||
SetFlag(n,"feature:ignore");
|
SetFlag(n,"feature:ignore");
|
||||||
if (strlen(c)) {
|
if (strlen(c)) {
|
||||||
|
|
@ -2625,10 +2627,17 @@ template_directive: SWIGTEMPLATE LPAREN idstringopt RPAREN idcolonnt LESSTHAN va
|
||||||
Setattr(templnode,k_symtypename,"1");
|
Setattr(templnode,k_symtypename,"1");
|
||||||
}
|
}
|
||||||
if ($3) {
|
if ($3) {
|
||||||
String *symname = Swig_name_make(templnode,0,$3,0,0);
|
/*
|
||||||
|
Comment this out for 1.3.28. We need to
|
||||||
|
renable it later but first we need to
|
||||||
|
move %ignore from using %rename to use
|
||||||
|
%feature(ignore).
|
||||||
|
|
||||||
|
String *symname = Swig_name_make(templnode,0,$3,0,0);
|
||||||
|
*/
|
||||||
|
String *symname = $3;
|
||||||
Swig_cparse_template_expand(templnode,symname,temparms,tscope);
|
Swig_cparse_template_expand(templnode,symname,temparms,tscope);
|
||||||
Setattr(templnode,k_symname,symname);
|
Setattr(templnode,k_symname,symname);
|
||||||
Delete(symname);
|
|
||||||
} else {
|
} else {
|
||||||
static int cnt = 0;
|
static int cnt = 0;
|
||||||
String *nname = NewStringf("__dummy_%d__", cnt++);
|
String *nname = NewStringf("__dummy_%d__", cnt++);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue