On Wed, May 15, 2013 at 5:54 PM, Richard Trieu <[email protected]> wrote:
> > > ================ > Comment at: lib/Sema/SemaType.cpp:1564-1567 > @@ -1555,2 +1563,6 @@ > << ArraySize->getSourceRange(); > + // Set array size to largest allowable size. > + getMaxArraySize(Context, T, > ConstantArrayType::getMaxSizeBits(Context), > + ConstVal); > + } > } > ---------------- > Richard Smith wrote: > > How about just returning QualType() here? An invalid type should do a > better job of suppressing follow-on diagnostics than an > array-of-unexpected-size. > Returning QualType() also would prevent the crash, however it also causes > a new error to be emitted. "initializer element is not a compile-time > constant" on __builtin_offsetof(struct Chunk2, data). I think that's basically an unrelated issue: constant expression evaluation doesn't have a way to say "evaluation failed due to an error which has already been diagnosed". I'm OK with that additional diagnostic (with a FIXME to remove it).
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
