diff options
Diffstat (limited to 'clang/test/SemaCXX/warn-literal-conversion.cpp')
| -rw-r--r-- | clang/test/SemaCXX/warn-literal-conversion.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/warn-literal-conversion.cpp b/clang/test/SemaCXX/warn-literal-conversion.cpp index 875aa1dec5e..7efcf90fd96 100644 --- a/clang/test/SemaCXX/warn-literal-conversion.cpp +++ b/clang/test/SemaCXX/warn-literal-conversion.cpp @@ -48,4 +48,11 @@ void test1() { // values. bool b3 = 0.0f; bool b4 = 0.0; + + // These all warn because they overflow the target type. + short s = 32768.0; // expected-warning{{implicit conversion of out of range value from 'double' to 'short' is undefined}} + unsigned short us = 65536.0; // expected-warning{{implicit conversion of out of range value from 'double' to 'unsigned short' is undefined}} + + short s2 = -32769.0; // expected-warning{{implicit conversion of out of range value from 'double' to 'short' is undefined}} + unsigned short us2 = -65537.0; // expected-warning{{implicit conversion of out of range value from 'double' to 'unsigned short' is undefined}} } |

