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中有对其的外部声明)。
c_common_init_options(在c-opts.c中实现)函数调用cpp_create_reader(在cpplib中实现)创建cpp_reader对象,并将结果赋给parse_in。
cpp_create_reader是一个重要的接口函