How to extract types of variables and its uid?
Swati Rathi
swatirathi@cse.iitb.ac.in
Thu Apr 9 10:37:00 GMT 2015
We want to store all the types associated with the class objects or
pointer to a class in a program.
Consider two variables var1 and var2 declared in different functions as
below.
class IStream *var1;
class IStream *var2;
We are extracting its type as below :
tree type1 = TREE_TYPE (TREE_TYPE (var1));
tree type2 = TREE_TYPE (TREE_TYPE (var2));
TREE_CODE (type1) and TREE_CODE (type2) is RECORD_TYPE.
We wish to record the type struct IStream.
However, when we print TYPE_UID (type1) and TYPE_UID (type2), it is
different.
TYPE_UID = 4326, tree_type : struct IStream
TYPE_UID = 7421, tree_type : struct IStream
Using TYPE_UID (TYPE_MAIN_VARIANT (type1)) and TYPE_UID
(TYPE_MAIN_VARIANT (type2)) also gives the same result.
We wish to avoid duplicate entries of the same type.
How to extract types and uid?
Regards,
Swati
More information about the Gcc
mailing list