diff --git a/Source/CParse/parser.y b/Source/CParse/parser.y index aafec5cbb..dfbfa43b6 100644 --- a/Source/CParse/parser.y +++ b/Source/CParse/parser.y @@ -4468,12 +4468,11 @@ templateparameterstail : COMMA templateparameter templateparameterstail { /* Namespace support */ cpp_using_decl : USING idcolon SEMI { - String *uname = Swig_symbol_type_qualify($2,0); + String *uname = Swig_symbol_type_qualify($2,0); String *name = Swig_scopename_last($2); - $$ = new_node("using"); + $$ = new_node("using"); Setattr($$,"uname",uname); Setattr($$,"name", name); - Swig_symbol_add_using(name, uname, $$); Delete(uname); Delete(name); add_symbols($$); diff --git a/Source/Swig/swig.h b/Source/Swig/swig.h index 9f7b2cbca..76691269e 100644 --- a/Source/Swig/swig.h +++ b/Source/Swig/swig.h @@ -221,7 +221,6 @@ extern "C" { extern void Swig_symbol_print_tables_summary(void); extern void Swig_symbol_print_symbols(void); extern void Swig_symbol_print_csymbols(void); - extern void Swig_symbol_add_using(String *name, String *uname, Node *n); extern void Swig_symbol_init(void); extern void Swig_symbol_setscopename(const_String_or_char_ptr name); extern String *Swig_symbol_getscopename(void); diff --git a/Source/Swig/symbol.c b/Source/Swig/symbol.c index 66c73ae02..aacaf24be 100644 --- a/Source/Swig/symbol.c +++ b/Source/Swig/symbol.c @@ -382,29 +382,6 @@ String *Swig_symbol_qualified_language_scopename(Symtab *n) { return result; } -/* ----------------------------------------------------------------------------- - * Swig_symbol_add_using() - * - * Adds a node to the C symbol table for a using declaration. - * Used for using-declarations within classes/structs. - * ----------------------------------------------------------------------------- */ - -void Swig_symbol_add_using(String *name, String *uname, Node *n) { - Hash *h; - h = Swig_symbol_clookup(uname, 0); - if (h && (checkAttribute(h, "kind", "class") || checkAttribute(h, "kind", "struct"))) { - String *qcurrent = Swig_symbol_qualifiedscopename(0); - if (qcurrent) { - Append(qcurrent, "::"); - Append(qcurrent, name); - } else { - qcurrent = NewString(name); - } - Setattr(symtabs, qcurrent, n); - Delete(qcurrent); - } -} - /* ----------------------------------------------------------------------------- * Swig_symbol_newscope() * @@ -1097,19 +1074,7 @@ static Node *symbol_lookup_qualified(const_String_or_char_ptr name, Symtab *symt Delete(qalloc); return st; } - if (checkAttribute(st, "nodeType", "using")) { - String *uname = Getattr(st, "uname"); - if (uname) { - st = Getattr(symtabs, uname); - if (st) { - n = symbol_lookup(name, st, checkfunc); - } else { - fprintf(stderr, "Error: Found corrupt 'using' node\n"); - } - } - } else if (Getattr(st, "csymtab")) { - n = symbol_lookup(name, st, checkfunc); - } + n = symbol_lookup(name, st, checkfunc); } if (qalloc) Delete(qalloc);