Module Name: src
Committed By: rillig
Date: Sun Mar 14 22:24:24 UTC 2021
Modified Files:
src/tests/usr.bin/xlint/lint1: msg_247.c msg_247.exp
Log Message:
tests/lint: document how lint discards the typedef name in 247
To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/msg_247.c
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/msg_247.exp
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/msg_247.c
diff -u src/tests/usr.bin/xlint/lint1/msg_247.c:1.4 src/tests/usr.bin/xlint/lint1/msg_247.c:1.5
--- src/tests/usr.bin/xlint/lint1/msg_247.c:1.4 Sun Mar 14 21:44:35 2021
+++ src/tests/usr.bin/xlint/lint1/msg_247.c Sun Mar 14 22:24:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_247.c,v 1.4 2021/03/14 21:44:35 rillig Exp $ */
+/* $NetBSD: msg_247.c,v 1.5 2021/03/14 22:24:24 rillig Exp $ */
# 3 "msg_247.c"
// Test for message: pointer cast from '%s' to '%s' may be troublesome [247]
@@ -17,5 +17,16 @@ struct Other {
void
example(struct Other *arg)
{
- PDisplay display = (PDisplay)arg; /* expect: 247 */
+ PDisplay display;
+
+ /*
+ * XXX: The target type is reported as 'struct <unnamed>'. In cases
+ * like these, it would be helpful to print at least the type name
+ * of the pointer. This type name though is discarded immediately
+ * when the parser reduces 'T_TYPENAME clrtyp' to 'clrtyp_typespec'.
+ * After that, the target type of the cast is just an unnamed struct,
+ * with no hint at all that there is a typedef for a pointer to the
+ * struct.
+ */
+ display = (PDisplay)arg; /* expect: 247 */
}
Index: src/tests/usr.bin/xlint/lint1/msg_247.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_247.exp:1.2 src/tests/usr.bin/xlint/lint1/msg_247.exp:1.3
--- src/tests/usr.bin/xlint/lint1/msg_247.exp:1.2 Sun Mar 14 21:44:35 2021
+++ src/tests/usr.bin/xlint/lint1/msg_247.exp Sun Mar 14 22:24:24 2021
@@ -1 +1 @@
-msg_247.c(20): warning: pointer cast from 'pointer to struct Other' to 'pointer to struct <unnamed>' may be troublesome [247]
+msg_247.c(31): warning: pointer cast from 'pointer to struct Other' to 'pointer to struct <unnamed>' may be troublesome [247]