[cfe-dev] My understanding of AST
Journeyer J. Joh
oosaprogrammer at gmail.com
Fri Nov 2 05:03:46 PDT 2012
Hello list,
I'd like to share my understanding and also want some review or
comment about it.
Let's say there is a function.
====================
int func()
{
int array[3];
return 0;
}
====================
I investigated how an AST node for the declaration of array above forms.
1. ConstantArrayType is registered into ASTContext (this Clang::Type
is distinguished by it's size(3) and type(int))
2. a TypeSourceInfo is created with the clang::Type above (which is
registered in ASTContext) and the Locations(ArrayTypeLoc,
BuiltinTypeLoc)
3. a VarDecl is created with the TypeSourceInfo above and the name of
the variable, ('array' this case)
?. So I think the VarDecl is itself the AST node for the array declaration!
I am not sure especially for the one marked by '?'.
I think all 'Decl's is itself is a node of AST. And I wonder if this is correct.
Thank you very much!
Also I wonder if this kind of question is not proper in this mail
list. If anyone think so let me know. I will stop asking this kind of
question here.
Best regards
--
----------------------------------------
Journeyer J. Joh
o o s a p r o g r a m m e r
a t
g m a i l d o t c o m
----------------------------------------
More information about the cfe-dev
mailing list