fixed enums & enum values language symbol table namespace

fixed skipping of %templates in %extend if they are in the wrong scope
This commit is contained in:
Vladimir Kalinin 2013-12-20 07:37:49 +04:00
commit 715e254e05
4 changed files with 62 additions and 30 deletions

View file

@ -2676,7 +2676,8 @@ template_directive: SWIGTEMPLATE LPAREN idstringopt RPAREN idcolonnt LESSTHAN va
Setattr(templnode,"sym:typename","1");
}
/* for now, nested %template is allowed only in the same scope as the template declaration */
if ($3 && !(currentOuterClass && (currentOuterClass != Getattr(nn, "nested:outer")))) {
if ($3 && !((currentOuterClass && (currentOuterClass != Getattr(nn, "nested:outer")))
||(extendmode && current_class && (current_class != Getattr(nn, "nested:outer"))))) {
/*
Comment this out for 1.3.28. We need to
re-enable it later but first we need to