- map<string, VariableDeclaration *>::iterator i = r_members->find(memacc.member);
- if(i!=r_members->end())
- {
- memacc.declaration = i->second;
- if(StructDeclaration *strct = dynamic_cast<StructDeclaration *>(i->second->type_declaration))
- r_members = &strct->members.variables;
- }
- else
- r_members = 0;
+ if(iface_ref->declaration)
+ members = &iface_ref->declaration->members.variables;
+ }
+
+ VariableDeclaration *declaration = 0;
+ if(members)
+ {
+ map<string, VariableDeclaration *>::iterator i = members->find(memacc.member);
+ if(i!=members->end())
+ declaration = i->second;