[cfe-commits] r40716 - /cfe/trunk/AST/Expr.cpp
Steve Naroff
snaroff at apple.com
Wed Aug 1 21:09:23 PDT 2007
Author: snaroff
Date: Wed Aug 1 23:09:23 2007
New Revision: 40716
URL: http://llvm.org/viewvc/llvm-project?rev=40716&view=rev
Log:
Tweak to Expr::isIntegerConstantExpr...make sure the result is appropriately size for TypesCompatibleExpr's.
Modified:
cfe/trunk/AST/Expr.cpp
Modified: cfe/trunk/AST/Expr.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/AST/Expr.cpp?rev=40716&r1=40715&r2=40716&view=diff
==============================================================================
--- cfe/trunk/AST/Expr.cpp (original)
+++ cfe/trunk/AST/Expr.cpp Wed Aug 1 23:09:23 2007
@@ -305,9 +305,12 @@
Result.setIsUnsigned(!getType()->isSignedIntegerType());
break;
}
- case TypesCompatibleExprClass:
- Result = cast<TypesCompatibleExpr>(this)->typesAreCompatible();
+ case TypesCompatibleExprClass: {
+ const TypesCompatibleExpr *TCE = cast<TypesCompatibleExpr>(this);
+ Result.zextOrTrunc(Ctx.getTypeSize(getType(), TCE->getLocStart()));
+ Result = TCE->typesAreCompatible();
break;
+ }
case DeclRefExprClass:
if (const EnumConstantDecl *D =
dyn_cast<EnumConstantDecl>(cast<DeclRefExpr>(this)->getDecl())) {
More information about the cfe-commits
mailing list