”GCC-3.4.6源代码学习笔记“ 的搜索结果

     4. 源代码解析 从lang_dependent_init返回,编译器终于差不多准备好了,可以开始对我们的源代码进行解析。这里看到,每次从命令行执行源文件的编译,编译器都要进行上面那些复杂的初始化过程。这样一次编译,...

      <br />5.12.4.2.2.2.2.  解析实参列表 然后调用cp_parser_enclosed_template_argument_list来解析template-id中所包含的模板实参列表。在这个处理之前,parser的greater_than_is_operator_p域将被设置...

      <br />5.12.4.2.2.2.3.  完成template-id 如果模板名是一个IDENTIFER_NODE,它可能是一个成员模板;而如果它是应该类模板的TEMPLATE_DECL,template-id 本身是一个类名;而如果是FUNCTION_DECL,...

      <br />5.12.3.2.1.2.1.2.2.  完成阶段 函数cp_parser_function_body只是调用cp_parser_compound_statement来解析复合语句。这里我们跳过解析复合语句的细节,不过记住每个语句都会构建节点并链入语句链...

     4.1.5. 最后确定参数在调整完用于目标平台的选项参数后,现在可以最后确定其他参数。对于每个-falign-*标识符,都有对应的*_log变量,其值为不小于这个变量值的最小2的指数倍数,用于.align输出。...

     5.9.2.访问控制 函数perform_or_defer_access_check的行为取决于deferred_access_stack栈顶成员的延迟类型。如果栈顶成员是类型dk_deferred,那么对该函数的每次调用,实参binfo及decl将被链入deferred_access_...

      5.12.3.2.1.1.1.4. 加入类的TYPE_DECL 现在d是被TEMPLATE_DECL的results域所指向的TYPE_DECL,并由push_template_decl_real所返回。而b是在函数开头就找到的名字空间“Loki”的作用域。...

     5.6.1.1.2.3. 字符、字符串常量 当预处理器碰到字符或字符串常量时,它忠实地记录其内容,但不去解释它,因为预处理器没有掌握其格式、编码的信息。这是这里的函数的任务。   c_lex_with_flags ...

     4.1.3.1.2.1.2. 读入中间形式的PCH内容之前,我们已经看到一些变量在声明中使用了GTY((…)),GC程序(垃圾回收器)将解析指定的文件(在指定列表外的文件中的GTY((…))是不被解析的,它们将导致编译错误——未定义...

      <br />5.12.3.2.1.1.3.6.1.  退出嵌套类 进一步的,当“消化”掉了类末尾的“;”的时候,它表示我们将要退出类的作用域,并重新进入包含它的作用域。这个操作由5257行的popclass执行。...

      4.3.1.7.5.6.5. 处理内建函数的属性 4.3.1.7.5.6.5.1. 建立属性处理方法 虽然我们已经为内建函数的属性创建了节点,我们还未将它们加入到内建函数的节点中。而且即使没有属性,我们也需要在函数...

      4.3.1.7.7.  具有C++链接性的C++语言成分4.3.1.7.7.1.  bad_alloc current_lang_name表示程序所用的语言,现在它被更新为表示C++语言的标识符。它确定了标识符的链接性。例如,C++的标识符需要其名字...

      <br />5.12.3.2.1.1.3.4.3.  缓存内联函数体 函数start_method为这个method-declaration的声明符构建了节点,随后如果方法有缺省参数,这些参数将被parser的unparsed_functions_queues域所记录。...

     4.2.6.准备循环优化遍4.2.6.1. 概览 回到backend_init,下一个调用init_loop。这个函数准备那些用于循环优化中的变量。这个优化把常量表达式移出循环体,并且可选地执行强度降低(strength-reduction,期间...

     5.3.1.3. 内建宏—pragma指示的处理 所谓的内建宏,也即是标准所定义的宏,计有:__TIME__,__DATE__,__FILE__,__BASE_FILE__,__LINE__,__INCLUDE_LEVEL__,_Pragma及__STDC__(参考builtin_array),其...

      5.12.3.2.1.1.3. 解析类体 正常的话,跟在class-head后面的符号应该是“{”,不过要是发生了错误,就不能肯定该符号一定会出现。保险起见,“}”之前的符号都将丢弃,并触发错误。否则,就可以继续放心...

     1.1.1. tree_code —— 树节点的ID在tree_node的定义中,结构体,象tree_type,tree_decl 等,用于代表相应的语法成分。比如,tree_type用于类的定义,而type_decl用于声明。但如果需要进一步分别,比如tree_decl...

      5.12.3.2.1.1.2. 开始类定义 跟在class-head后,应该是符号“{”,那么在下面的11890行的函数cp_parser_check_type_definition检查定义新的类型在当前上下文是否允许(通过检查parser的type_definition_...

     5.6.1.1.2.2. 浮点数 解析整数字符串已经相当麻烦,而浮点数字符串的情况更要复杂得多。同样首先为将要创建的REAL_CST节点选定伴随的类型节点。默认的浮点数具有类型double(CPP_N_MEDIUM)。...

9   
8  
7  
6  
5  
4  
3  
2  
1