From: Ted Kremenek Date: Thu, 29 Nov 2007 01:00:11 +0000 (+0000) Subject: Added test cases for -Wfloat-equal to test comparisons against literals that can be X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=9e7f0ecab98c1cec6e7a1600324780122b0c0347;p=clang Added test cases for -Wfloat-equal to test comparisons against literals that can be represented exactly and inexactly by APFloats. For the former, we do not emit a warning. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@44425 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/Sema/floating-point-compare.c b/test/Sema/floating-point-compare.c index ac8fed2d62..e44ff096b2 100644 --- a/test/Sema/floating-point-compare.c +++ b/test/Sema/floating-point-compare.c @@ -1,21 +1,29 @@ // RUN: clang -fsyntax-only -Wfloat-equal -verify %s -int foo(float x, float y) { +int f1(float x, float y) { return x == y; // expected-warning {{comparing floating point with ==}} } -int bar(float x, float y) { +int f2(float x, float y) { return x != y; // expected-warning {{comparing floating point with ==}} } -int qux(float x) { +int f3(float x) { return x == x; // no-warning } -int baz(float x) { +int f4(float x) { return x == 0.0; // expected-warning {{comparing}} } -int taz(float x) { +int f5(float x) { return x == __builtin_inf(); // no-warning -} \ No newline at end of file +} + +int f6(float x) { + return x == 0.0; // no-warning +} + +int f7(float x) { + return x == 3.14159; // expected-warning {{comparing}} +}