Restored broken ignoring of operators etc. Added more comments.
Added check for explicit $ignore, to allow correct using protected symbols This is a single commit for patch #476
This commit is contained in:
parent
812f789db6
commit
366e8a9f06
1 changed files with 8 additions and 2 deletions
|
|
@ -466,14 +466,20 @@ static void add_symbols(Node *n) {
|
|||
if (only_csymbol || GetFlag(n,"feature:ignore") || strncmp(Char(symname),"$ignore",7) == 0) {
|
||||
/* Only add to C symbol table and continue */
|
||||
Swig_symbol_add(0, n);
|
||||
if (strncmp(Char(symname),"$ignore",7) == 0) {
|
||||
if (!only_csymbol && !GetFlag(n, "feature:ignore")) {
|
||||
/* Print the warning attached to $ignore name, if any */
|
||||
char *c = Char(symname) + 7;
|
||||
SetFlag(n, "feature:ignore");
|
||||
if (strlen(c)) {
|
||||
SWIG_WARN_NODE_BEGIN(n);
|
||||
Swig_warning(0,Getfile(n), Getline(n), "%s\n",c+1);
|
||||
SWIG_WARN_NODE_END(n);
|
||||
}
|
||||
/* If the symbol was ignored via "rename" and is visible, set also feature:ignore*/
|
||||
SetFlag(n, "feature:ignore");
|
||||
}
|
||||
if (!GetFlag(n, "feature:ignore") && Strcmp(symname,"$ignore") == 0) {
|
||||
/* Add feature:ignore if the symbol was explicitely ignored, regardless of visibility */
|
||||
SetFlag(n, "feature:ignore");
|
||||
}
|
||||
} else {
|
||||
Node *c;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue