How to access initialized values of global variables
Swati
swatirathi@cse.iitb.ac.in
Thu May 10 06:26:00 GMT 2012
Thanks a lot. :)
FOR_EACH_CONSTRUCTOR_ELT worked.
I can access individual fields and their values.
On Wednesday 09 May 2012 11:50 PM, Ian Lance Taylor wrote:
> Swati<swatirathi@cse.iitb.ac.in> writes:
>
>> I am trying to fetch the initialized values of global variables.
>> For eg : int i = 10;
>>
>> I am able to extract the value using DECL_INITIAL.
>> But when I have a case like below,
>>
>> struct node
>> {
>> int x;
>> int y;
>> };
>>
>> struct node n1=
>> {
>> 99,
>> 88,
>> };
>>
>> I get value as {.x=99, .y=88}
>>
>> How should I iterate to fetch 99 and 88 individually?
>> In a way I want to access individual variables initialized values.
>> Can someone tell me the way to do it.
> I assume you are talking about a GCC plugin here.
>
> The DECL_INITIAL should be a CONSTRUCTOR. CONSTRUCTOR_NELTS is the
> number of elements and CONSTRUCTOR_ELTS is the elements themselves. You
> can iterate over them using FOR_EACH_CONSTRUCTOR_ELT, which will give
> you the index and value for each entry in the constructor. The index
> will be a FIELD_DECL.
>
> Ian
More information about the Gcc-help
mailing list