I has builded a plugins ( do not do nothing ) with a call back PLUGIN_PRE_GENERICIZE to analise the AST, for undocumented reason i get N callback where N-1 callback has incomplete AST and the N has complete AST, there is a way to avoid the N-1 callbacks ? .................................................. ............................................... void collect (tree ns) { tree decl; cp_binding_level* level (NAMESPACE_LEVEL (ns)); // Collect declarations. // for (decl = level->names; decl != 0; decl = TREE_CHAIN (decl)) { if (DECL_IS_BUILTIN (decl)) continue; if (TREE_CODE(decl) == FUNCTION_DECL) std::cerr << IDENTIFIER_POINTER(DECL_NAME(decl)) << " " << DECL_SAVED_TREE(decl) << "\n"; } } extern "C" void gate_callback (void*, void*) { if (errorcount || sorrycount) return; // int r (0); std::cerr << "processing " << main_input_filename << "\n"; collect (global_namespace); // exit (r); } extern "C" int plugin_init (plugin_name_args* info, plugin_gcc_version* ver) { if (!plugin_default_version_check (ver, &gcc_version)) return 1; int r (0); std::cerr << "starting " << info->base_name << "\n"; asm_file_name = HOST_BIT_BUCKET; register_callback (info->base_name, PLUGIN_PRE_GENERICIZE, &gate_callback, 0); return r; } _________________________________________________________________ Il tuo mondo MSN a portata di clic. Scarica IE8 per MSN http://events.it.msn.com/internet-explorer-8