Hi, I have the following problem. I wrote a plugin for gcc-4.5.1 navigating through all namespaces like: cp_binding_level* level (NAMESPACE_LEVEL (ns)); tree decl; for (decl = level->names; decl != 0; decl = TREE_CHAIN (decl)) { if (DECL_IS_BUILTIN (decl)) continue; set->insert(decl); } for(decl = level->namespaces; decl != 0; decl = TREE_CHAIN (decl)) { if (DECL_IS_BUILTIN (decl)) continue; collect (decl); } The idea is just to print out all static declarations of a program. Maybe you see the idea is from the page http://www.codesynthesis.com/~boris/blog/2010/05/17/parsing-cxx-with-gcc- plugin-part-3 . But printing out all VAR_DECL is not working as i want. Many static declaration with block scope are missing. The only one which is returned has the wrong type (integer_type, "long long int"), but it should be a self-defined external class. For a small test-class it returns the same if the static-block declaration is e.g. a selfreferencing pointer. All static POD declarations in- between a block are missing. Where can I get the missing declarations from or what am I doing wrong? How can I obtain the correct type name? Tanks, Stefan