Module Name: src
Committed By: christos
Date: Fri Aug 19 10:21:50 UTC 2016
Modified Files:
src/tests/usr.bin/xlint/lint1: Makefile
Added Files:
src/tests/usr.bin/xlint/lint1: d_c99_union_cast.c
Log Message:
Add union cast test
To generate a diff of this commit:
cvs rdiff -u -r1.12 -r1.13 src/tests/usr.bin/xlint/lint1/Makefile
cvs rdiff -u -r0 -r1.1 src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/tests/usr.bin/xlint/lint1/Makefile
diff -u src/tests/usr.bin/xlint/lint1/Makefile:1.12 src/tests/usr.bin/xlint/lint1/Makefile:1.13
--- src/tests/usr.bin/xlint/lint1/Makefile:1.12 Thu Aug 18 10:45:56 2016
+++ src/tests/usr.bin/xlint/lint1/Makefile Fri Aug 19 06:21:50 2016
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.12 2016/08/18 14:45:56 christos Exp $
+# $NetBSD: Makefile,v 1.13 2016/08/19 10:21:50 christos Exp $
NOMAN= # defined
@@ -24,6 +24,7 @@ FILES+= d_c99_func.c
FILES+= d_c99_recursive_init.c
FILES+= d_c99_struct_init.c
FILES+= d_c99_nested_struct.c
+FILES+= d_c99_union_cast.c
FILES+= d_c99_union_init1.c
FILES+= d_c99_union_init2.c
FILES+= d_c99_union_init3.c
Added files:
Index: src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c
diff -u /dev/null src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c:1.1
--- /dev/null Fri Aug 19 06:21:50 2016
+++ src/tests/usr.bin/xlint/lint1/d_c99_union_cast.c Fri Aug 19 06:21:50 2016
@@ -0,0 +1,18 @@
+/* union cast */
+
+struct bar {
+ int a;
+ int b;
+};
+
+union foo {
+ struct bar *a;
+ int b;
+};
+
+void
+foo(void) {
+ struct bar *a;
+
+ ((union foo)a).a;
+}