摘要: 1 调用接口cp_lexer_get_preprocessor_token: // in cp/ parser.c,C++分析器 => c_lex_with_flags => 标记C++关键字c_lex_with_flags: // in c-lex.c,C语言词法分析 => cpp_get_token // in cpplib => 过滤掉CPP_PADDING类型的标记 => 对各类型做进一步精化处理,构造tree结构2 内存接口 C和C++共用一个cpp_reader *parse_in接口(在c-common.c中定义,cp/decl2.c中有对其的外部声 阅读全文
posted @ 2006-11-14 22:50 Goncely 阅读(284) 评论(0) 推荐(0)
摘要: 在gcc中,几乎所有的东西都是用树结构串起来的,从而形成抽象语法树。tree可以看作是指向树节点的指针,所有的树节点都有一个共同的基类:tree_common。在文件coretypes.h中,tree的定义如下:#ifndef USED_FOR_TARGET...typedef union tree_node *tree; ...#else...#define tree union _dont_use_tree_here_ *...#endif可见,当USED_FOR_TARGET宏未被定义的时候,tree是指向联合类型tree_node的指针类型;否则,tree是一个定义为union _do 阅读全文
posted @ 2006-11-14 22:46 Goncely 阅读(463) 评论(0) 推荐(0)