25 nov 2008 kl. 12.48 skrev Eli Friedman:
On Tue, Nov 25, 2008 at 8:43 AM, Eli Friedman <[EMAIL PROTECTED]> wrote:On Mon, Nov 24, 2008 at 7:55 PM, Anders Carlsson <[EMAIL PROTECTED]> wrote:24 nov 2008 kl. 13.27 skrev Eli Friedman:On Sun, Nov 23, 2008 at 9:24 PM, Anders Carlsson <[EMAIL PROTECTED]> wrote:+ case StringLiteralClass: + case ObjCStringLiteralClass: + return true;We shouldn't need a special-case here, I don't think... what's motivatingthis?Just my laziness :) Since string literals are arrays, Expr::Evaluate doesn't work on them yet - Do you think adding an ArrayExprEvaluator is the correctway to go?Mmm... string literals are an unusual case; I don't think it should gointo Evaluate. The only way we can run into a bare string literal is an array initializer. I guess leaving it as-is is okay.Actually, it might be better to rename isConstantExpr to isConstantInitializer, since that's what it really appears to be computing.
That sounds like a good idea, I'll do that. We also have bool CheckForConstantInitializer(Expr *e, QualType t); bool CheckArithmeticConstantExpression(const Expr* e); bool CheckAddressConstantExpression(const Expr* e); bool CheckAddressConstantExpressionLValue(const Expr* e); in Sema - not sure what to do about them. Can they use Evaluate? Anders
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
