[cfe-dev] Distinguish in the AST constant array declarations which size is set directly and by the initializer.

Eli Friedman eli.friedman at gmail.com
Wed Feb 18 14:55:00 PST 2009


On Wed, Feb 18, 2009 at 8:46 AM, Paolo Bolzoni <bolzoni at cs.unipr.it> wrote:
> About arrays, I noticed there was still one free bit pattern (2 bit
> allocated, 3 possible size modifiers) so I added NormalImplicit
> size modifier that has the same meaning of Normal but indicates that the size
> was implicitly defined by the initialiser.

Hmm, that seems like it'll work.  I'll take another look once the bug
below is fixed.

> Unfortunately, it happens that the second assert fails because
> getConstantArrayType returns the previous QualType instead of a new one.
> This is caused by the fact that two constant array types are considered
> identical no matter the storage class.

Ouch, that's nasty... would you file a bug?  I think the bug is in the
implementations of Profile for ConstantArrayType and
IncompleteArrayType.

-Eli



More information about the cfe-dev mailing list