aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2011-12-12 19:33:27 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2011-12-12 19:33:27 +0000
commit60f24e781484250d3602261477d16321db7a157b (patch)
tree26bf6a06363fbeed82c349dbc0f331d2e1857b4a
parent3b29bb99948f9e8b4a4e829445c753f6858f607e (diff)
Further tweaking of diagnostic text for casts performing reinterpret_cast
conversions in constant expressions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146406 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/Basic/DiagnosticASTKinds.td4
-rw-r--r--test/SemaCXX/constant-expression-cxx11.cpp8
2 files changed, 6 insertions, 6 deletions
diff --git a/include/clang/Basic/DiagnosticASTKinds.td b/include/clang/Basic/DiagnosticASTKinds.td
index 9f0da2d6eb..4f7169dade 100644
--- a/include/clang/Basic/DiagnosticASTKinds.td
+++ b/include/clang/Basic/DiagnosticASTKinds.td
@@ -13,8 +13,8 @@ let Component = "AST" in {
// "C does not permit evaluated commas in an integer constant expression">;
def note_expr_divide_by_zero : Note<"division by zero">;
def note_constexpr_invalid_cast : Note<
- "%select{reinterpret_cast|dynamic_cast|cast interpreted as a "
- "reinterpret_cast|cast from %1}0 is not allowed in a constant expression">;
+ "%select{reinterpret_cast|dynamic_cast|cast which performs the conversions of"
+ " a reinterpret_cast|cast from %1}0 is not allowed in a constant expression">;
// inline asm related.
let CategoryName = "Inline Assembly Issue" in {
diff --git a/test/SemaCXX/constant-expression-cxx11.cpp b/test/SemaCXX/constant-expression-cxx11.cpp
index 3ba76d4299..a7a53e11d4 100644
--- a/test/SemaCXX/constant-expression-cxx11.cpp
+++ b/test/SemaCXX/constant-expression-cxx11.cpp
@@ -307,16 +307,16 @@ struct Str {
expected-note {{reinterpret_cast is not allowed in a constant expression}}
int c : (S*)(long)(sptr) == (S*)(long)(sptr); // \
expected-warning {{not integer constant expression}} \
- expected-note {{cast interpreted as a reinterpret_cast is not allowed in a constant expression}}
+ expected-note {{cast which performs the conversions of a reinterpret_cast is not allowed in a constant expression}}
int d : (S*)(42) == (S*)(42); // \
expected-warning {{not integer constant expression}} \
- expected-note {{cast interpreted as a reinterpret_cast is not allowed in a constant expression}}
+ expected-note {{cast which performs the conversions of a reinterpret_cast is not allowed in a constant expression}}
int e : (Str*)(sptr) == (Str*)(sptr); // \
expected-warning {{not integer constant expression}} \
- expected-note {{cast interpreted as a reinterpret_cast is not allowed in a constant expression}}
+ expected-note {{cast which performs the conversions of a reinterpret_cast is not allowed in a constant expression}}
int f : &(Str&)(*sptr) == &(Str&)(*sptr); // \
expected-warning {{not integer constant expression}} \
- expected-note {{cast interpreted as a reinterpret_cast is not allowed in a constant expression}}
+ expected-note {{cast which performs the conversions of a reinterpret_cast is not allowed in a constant expression}}
int g : (S*)(void*)(sptr) == sptr; // \
expected-warning {{not integer constant expression}} \
expected-note {{cast from 'void *' is not allowed in a constant expression}}