From 97e99219a7da0ae21674cc93e6a99da1739c785b Mon Sep 17 00:00:00 2001 From: Marcelo Matus Date: Mon, 30 Jan 2006 17:03:08 +0000 Subject: [PATCH] fix ignored '%template(Foo)' after '%ignore Foo' git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@8628 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Source/CParse/parser.y | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/SWIG/Source/CParse/parser.y b/SWIG/Source/CParse/parser.y index 3adda0f11..6f0774945 100644 --- a/SWIG/Source/CParse/parser.y +++ b/SWIG/Source/CParse/parser.y @@ -429,7 +429,9 @@ static void add_symbols(Node *n) { n = nextSibling(n); 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; SetFlag(n,"feature:ignore"); if (strlen(c)) { @@ -2625,10 +2627,17 @@ template_directive: SWIGTEMPLATE LPAREN idstringopt RPAREN idcolonnt LESSTHAN va Setattr(templnode,k_symtypename,"1"); } 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); Setattr(templnode,k_symname,symname); - Delete(symname); } else { static int cnt = 0; String *nname = NewStringf("__dummy_%d__", cnt++);