rsmith added a comment. Maybe we could remove `CK_BooleanToSignedFloating` and model that conversion as a sequence of `CK_BooleanToSignedIntegral` followed by `CK_IntegralToFloating`? I don't imagine it's a common operation, so the simpler AST representation is probably worth more than the minor memory savings.
================ Comment at: lib/AST/ExprConstant.cpp:7794 @@ -7790,1 +7793,3 @@ + IntResult = (uint64_t)-1; + return Success(IntResult, E); } ---------------- I think this will produce the wrong value when the destination type of the cast is `__int128`. We should probably fix this by making `ASTContext::MakeIntValue` sign-extend if necessary when the target type is signed. http://reviews.llvm.org/D14877 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits