Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src tests/lint: demonstrate wrong lint warning about complex var...
details: https://anonhg.NetBSD.org/src/rev/d7e6498a4ca6
branches: trunk
changeset: 982317:d7e6498a4ca6
user: rillig <rillig%NetBSD.org@localhost>
date: Fri Apr 09 21:07:39 2021 +0000
description:
tests/lint: demonstrate wrong lint warning about complex variables
diffstat:
distrib/sets/lists/tests/mi | 3 +-
tests/usr.bin/xlint/lint1/Makefile | 3 +-
tests/usr.bin/xlint/lint1/d_c99_complex_split.c | 34 ++++++++++++++++++++++-
tests/usr.bin/xlint/lint1/d_c99_complex_split.exp | 3 ++
4 files changed, 40 insertions(+), 3 deletions(-)
diffs (86 lines):
diff -r 02bb1a90d877 -r d7e6498a4ca6 distrib/sets/lists/tests/mi
--- a/distrib/sets/lists/tests/mi Fri Apr 09 20:49:05 2021 +0000
+++ b/distrib/sets/lists/tests/mi Fri Apr 09 21:07:39 2021 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1038 2021/04/08 22:18:26 rillig Exp $
+# $NetBSD: mi,v 1.1039 2021/04/09 21:07:39 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -6104,6 +6104,7 @@
./usr/tests/usr.bin/xlint/lint1/d_c99_bool_strict_syshdr.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_c99_complex_num.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_c99_complex_split.c tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/xlint/lint1/d_c99_complex_split.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_c99_compound_literal_comma.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_c99_decls_after_stmt2.c tests-usr.bin-tests compattestfile,atf
diff -r 02bb1a90d877 -r d7e6498a4ca6 tests/usr.bin/xlint/lint1/Makefile
--- a/tests/usr.bin/xlint/lint1/Makefile Fri Apr 09 20:49:05 2021 +0000
+++ b/tests/usr.bin/xlint/lint1/Makefile Fri Apr 09 21:07:39 2021 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.40 2021/04/08 22:18:27 rillig Exp $
+# $NetBSD: Makefile,v 1.41 2021/04/09 21:07:39 rillig Exp $
NOMAN= # defined
MAX_MESSAGE= 342 # see lint1/err.c
@@ -22,6 +22,7 @@
FILES+= d_c99_anon_union.c
FILES+= d_c99_complex_num.c
FILES+= d_c99_complex_split.c
+FILES+= d_c99_complex_split.exp
FILES+= d_c99_compound_literal_comma.c
FILES+= d_c99_decls_after_stmt.c
FILES+= d_c99_decls_after_stmt2.c
diff -r 02bb1a90d877 -r d7e6498a4ca6 tests/usr.bin/xlint/lint1/d_c99_complex_split.c
--- a/tests/usr.bin/xlint/lint1/d_c99_complex_split.c Fri Apr 09 20:49:05 2021 +0000
+++ b/tests/usr.bin/xlint/lint1/d_c99_complex_split.c Fri Apr 09 21:07:39 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: d_c99_complex_split.c,v 1.5 2021/03/27 13:59:18 rillig Exp $ */
+/* $NetBSD: d_c99_complex_split.c,v 1.6 2021/04/09 21:07:39 rillig Exp $ */
# 3 "d_c99_complex_split.c"
/*
@@ -19,3 +19,35 @@
if (b(__real__ z) && b(__imag__ z))
return;
}
+
+void sink(double _Complex);
+
+void
+set_complex_complete(double re, double im)
+{
+ double _Complex c;
+
+ __real__ c = re; /* FIXME *//* expect: may be used before set */
+ __imag__ c = im;
+ sink(c);
+}
+
+void
+set_complex_only_real(double re)
+{
+ double _Complex c;
+
+ __real__ c = re; /* FIXME *//* expect: may be used before set */
+ /* __imag__ c is left uninitialized */
+ sink(c); /* XXX: may be used before set */
+}
+
+void
+set_complex_only_imag(double im)
+{
+ double _Complex c;
+
+ /* __real__ c is left uninitialized */
+ __imag__ c = im; /* FIXME *//* expect: may be used before set */
+ sink(c); /* XXX: may be used before set */
+}
diff -r 02bb1a90d877 -r d7e6498a4ca6 tests/usr.bin/xlint/lint1/d_c99_complex_split.exp
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/usr.bin/xlint/lint1/d_c99_complex_split.exp Fri Apr 09 21:07:39 2021 +0000
@@ -0,0 +1,3 @@
+d_c99_complex_split.c(30): warning: c may be used before set [158]
+d_c99_complex_split.c(40): warning: c may be used before set [158]
+d_c99_complex_split.c(51): warning: c may be used before set [158]
Home |
Main Index |
Thread Index |
Old Index