This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Global Var vs Local Var ?


QiangHuang wrote:
>      I know that a variable declaration is represented as a VAR_DECL
> node or some related nodes in AST.
> 
>      But how to distinct the XXX_DECL node is for a Global Var or not?

It's in the documentation:

   DECL_CONTEXT points to the node representing
   the context in which this declaration has its scope.  For
   FIELD_DECLs, this is the RECORD_TYPE, UNION_TYPE, or
   QUAL_UNION_TYPE node that the field is a member of.  For VAR_DECL,
   PARM_DECL, FUNCTION_DECL, LABEL_DECL, and CONST_DECL nodes, this
   points to either the FUNCTION_DECL for the containing function, the
   RECORD_TYPE or UNION_TYPE for the containing type, or NULL_TREE or
   a TRANSLATION_UNIT_DECL if the given decl has "file scope".

Andrew.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]