|
|
|
|
| 请问gcc源码中的tree_type结构中有个main_variant域,这到底是干什么用的?多谢了 |
 请问gcc源码中的tree_type结构中有个main_variant域,这到底是干什么用的?多谢了 - nibbling [ 2005-07-20 02:17 | 0 byte(s)]
 Re: 请问gcc源码中的tree_type结构中有个main_variant域,这到底是干什么用的?多谢了 - pdqqdqq [ 2005-07-23 16:57 | 779 byte(s)]
|
|
|
|
[Original]
[Print]
[Top]
|
gcc中定义树数据结构的文件tree.def中是这样写的:
The TYPE_NEXT_VARIANT field is used to chain together types that are variants made by type modifiers such as "const" and "volatile".
The TYPE_MAIN_VARIANT field, in any member of such a chain, points to the start of the chain.
即gcc将所有带有cons或volatile修饰符的类型通过next_variant域链在一起,在此链中的每一个成员(是一个type结点)的main_variant域则指向这条链的链头。
这是我对这段原文的理解。至于为什么要有这条链则还理解不深,其中有一个原因可能是为了方便别名分析,因为gcc中相同的类型具有相同的别名集。这只是其中的原因之一,很可能不是主要的原因。
理解这个域的最好方法是:编写几个小测试程序,用gdb调试器在适当的地方设置断点来查看这个域的内容。
|
|
|
[Original]
[Print]
[Top]
|
|
« Previous thread
弱弱的问一下链接问题 |
CPU 与 编译器
第8页 |
Next thread »
编译ATLAS系统报警 |
|