[Prev][Next][Index]

Thanks and SgArrayType::baseType()




Dennis and Beata - Thanks for the quick response. I am still using
Sage 1.3.1, so I'm bound to trip over some fixed bugs. Sorry. 

Here's another item that bit me today. Note that it causes a bug in
getTrueType. The fix is appended.

* 5 Nov 94

** SgArrayType::baseType() behaves differently from SgType::baseType 
for `double *x[2]'. Applying it to T_ARRAY(0)->T_PTR(+1)->T_DOUBLE
results in T_DOUBLE being returned for the base type, not
T_PTR(+1)->T_DOUBLE as should be returned. This is the fault of 
`lookForInternalBasetype' (or SgArrayType::baseType for calling it).


This causes a bug in getTrueType --- in the T_ARRAY case,
the line:
                 return the_array->baseType()->getTrueType(mask,
                                                           follow_typedefs);
should be changed to:
                 /* use `this' and not `the_array' because SgArrayType
                    overrides the expected behaviour for baseType
                    (5 Nov 94) */
                 
                 return this->baseType()->getTrueType(mask,
                                                      follow_typedefs);


/Andrew/