Rakete1111 created this revision. Rakete1111 added a project: clang. This patch removes the empty `""` when using `static_assert(1 + 1 == 3, "");` in the diagnostic:
main.cpp:1:1: error: static_assert failed static_assert(1 + 1 == 3, ""); ^ ~~~~~~~~~~ https://reviews.llvm.org/D39360 Files: lib/Sema/SemaDeclCXX.cpp Index: lib/Sema/SemaDeclCXX.cpp =================================================================== --- lib/Sema/SemaDeclCXX.cpp +++ lib/Sema/SemaDeclCXX.cpp @@ -13319,8 +13319,9 @@ Expr *AssertExpr, Expr *AssertMessageExpr, SourceLocation RParenLoc) { - StringLiteral *AssertMessage = - AssertMessageExpr ? cast<StringLiteral>(AssertMessageExpr) : nullptr; + auto *AssertMessage = cast_or_null<StringLiteral>(AssertMessageExpr); + if (AssertMessage && !AssertMessage->getLength()) + AssertMessage = nullptr; if (DiagnoseUnexpandedParameterPack(AssertExpr, UPPC_StaticAssertExpression)) return nullptr;
Index: lib/Sema/SemaDeclCXX.cpp =================================================================== --- lib/Sema/SemaDeclCXX.cpp +++ lib/Sema/SemaDeclCXX.cpp @@ -13319,8 +13319,9 @@ Expr *AssertExpr, Expr *AssertMessageExpr, SourceLocation RParenLoc) { - StringLiteral *AssertMessage = - AssertMessageExpr ? cast<StringLiteral>(AssertMessageExpr) : nullptr; + auto *AssertMessage = cast_or_null<StringLiteral>(AssertMessageExpr); + if (AssertMessage && !AssertMessage->getLength()) + AssertMessage = nullptr; if (DiagnoseUnexpandedParameterPack(AssertExpr, UPPC_StaticAssertExpression)) return nullptr;
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits