diff options
author | Ziang Wan <ziangw2@illinois.edu> | 2019-08-01 00:16:43 +0000 |
---|---|---|
committer | Ziang Wan <ziangw2@illinois.edu> | 2019-08-01 00:16:43 +0000 |
commit | 87b668befe19d47dd14919b2f322a81f1478e49d (patch) | |
tree | f9931482012c959d866e42a7972bd23b7e7be852 /clang/test/Sema/implicit-int-float-narrowing.cpp | |
parent | 153f20057c2f17d48c4feb08514811e61a86d0a8 (diff) | |
download | bcm5719-llvm-87b668befe19d47dd14919b2f322a81f1478e49d.tar.gz bcm5719-llvm-87b668befe19d47dd14919b2f322a81f1478e49d.zip |
[Sema] Enable -Wimplicit-float-conversion for integral to floating point precision loss
Issue an warning when the code tries to do an implicit int -> float
conversion, where the float type ha a narrower significant than the
float type.
The new warning is controlled by flag -Wimplicit-int-float-conversion,
under -Wimplicit-float-conversion and -Wconversion. It is also silenced
when c++11 narrowing warning is issued.
Differential Revision: https://reviews.llvm.org/D64666
llvm-svn: 367497
Diffstat (limited to 'clang/test/Sema/implicit-int-float-narrowing.cpp')
-rw-r--r-- | clang/test/Sema/implicit-int-float-narrowing.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/Sema/implicit-int-float-narrowing.cpp b/clang/test/Sema/implicit-int-float-narrowing.cpp new file mode 100644 index 00000000000..6de637e78c5 --- /dev/null +++ b/clang/test/Sema/implicit-int-float-narrowing.cpp @@ -0,0 +1,10 @@ +// RUN: %clang_cc1 %s -verify -Wno-conversion -Wno-c++11-narrowing -Wimplicit-int-float-conversion + +void testNoWarningOnNarrowing() { + // Test that we do not issue duplicated warnings for + // C++11 narrowing. + float a = {222222222222L}; // expected-no-diagnostics + + long b = 222222222222L; + float c = {b}; // expected-no-diagnostics +} |