On Feb 18, 2009, at 7:41 PM, Eli Friedman wrote: > On Wed, Feb 18, 2009 at 7:22 PM, Mike Stump <[email protected]> wrote: >> On Feb 18, 2009, at 7:12 PM, Eli Friedman wrote: >>> >>> On Wed, Feb 18, 2009 at 5:01 PM, Mike Stump <[email protected]> wrote: >>>> >>>> --- cfe/trunk/lib/AST/ExprConstant.cpp (original) >>>> +++ cfe/trunk/lib/AST/ExprConstant.cpp Wed Feb 18 19:01:04 2009 >>>> @@ -260,6 +260,7 @@ >>>> APValue VisitAddrLabelExpr(AddrLabelExpr *E) >>>> { return APValue(E, 0); } >>>> APValue VisitCallExpr(CallExpr *E); >>>> + APValue VisitBlockExpr(BlockExpr *E) { return APValue(E, 0); } >>> >>> Aren't there some missing checks here? >> >> Work in progress. There is all sorts of checking, semantics and >> codegen >> missing. > > That's fine, but it would be nice to at least put in a FIXME for the > missing checks.
[ pause ] Ok, added enough code to add the check. > This initializer for y must be illegal because it can't be evaluated > at compile-time: the returned value changes! Therefore, blocks aren't > constant in the general case. Yes, I know that, but, spending time adding the check was time taken away from actually working on BlockDeclRefExprs. :-( _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
