('name', 'top_alias_of_alias') ('alias_of', gcc.NamespaceDecl('sub')) ('declarations', RuntimeError('gcc.NamespaceDecl.declarations is not valid for an alias',)) ('namespaces', RuntimeError('gcc.NamespaceDecl.namespaces is not valid for an alias',)) ('unalias', gcc.NamespaceDecl('sub')) ('lookup', gcc.VarDecl('foo')) ('name', 'top') ('alias_of', None) ('declarations', [gcc.NamespaceDecl('sub_alias_alias'), gcc.NamespaceDecl('sub_alias'), gcc.TypeDecl('top_union')]) ('namespaces', [gcc.NamespaceDecl('foo'), gcc.NamespaceDecl('sub')]) ('unalias', gcc.NamespaceDecl('top')) ('lookup', gcc.NamespaceDecl('foo')) ('name', 'sub_alias_alias') ('alias_of', gcc.NamespaceDecl('sub')) ('declarations', RuntimeError('gcc.NamespaceDecl.declarations is not valid for an alias',)) ('namespaces', RuntimeError('gcc.NamespaceDecl.namespaces is not valid for an alias',)) ('unalias', gcc.NamespaceDecl('sub')) ('lookup', gcc.VarDecl('foo')) ('name', 'sub_alias') ('alias_of', gcc.NamespaceDecl('sub')) ('declarations', RuntimeError('gcc.NamespaceDecl.declarations is not valid for an alias',)) ('namespaces', RuntimeError('gcc.NamespaceDecl.namespaces is not valid for an alias',)) ('unalias', gcc.NamespaceDecl('sub')) ('lookup', gcc.VarDecl('foo')) ('name', 'foo') ('alias_of', None) ('declarations', []) ('namespaces', [gcc.NamespaceDecl('bar')]) ('unalias', gcc.NamespaceDecl('foo')) ('lookup', None) ('name', 'bar') ('alias_of', None) ('declarations', []) ('namespaces', []) ('unalias', gcc.NamespaceDecl('bar')) ('lookup', None) ('name', 'sub') ('alias_of', None) ('declarations', [gcc.VarDecl('foo'), gcc.FunctionDecl('subs_function'), gcc.VarDecl('subs_int')]) ('namespaces', [gcc.NamespaceDecl('sub_sub')]) ('unalias', gcc.NamespaceDecl('sub')) ('lookup', gcc.VarDecl('foo')) ('name', 'sub_sub') ('alias_of', None) ('declarations', [gcc.FunctionDecl('foo')]) ('namespaces', []) ('unalias', gcc.NamespaceDecl('sub_sub')) ('lookup', gcc.FunctionDecl('foo'))