Module Name: src Committed By: rillig Date: Sun Feb 28 01:30:22 UTC 2021
Modified Files: src/tests/usr.bin/xlint/lint1: msg_130.c msg_130.exp src/usr.bin/xlint/lint1: err.c tree.c Log Message: lint: add type information to enum type mismatch To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/tests/usr.bin/xlint/lint1/msg_130.c cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/msg_130.exp cvs rdiff -u -r1.83 -r1.84 src/usr.bin/xlint/lint1/err.c cvs rdiff -u -r1.223 -r1.224 src/usr.bin/xlint/lint1/tree.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/msg_130.c diff -u src/tests/usr.bin/xlint/lint1/msg_130.c:1.4 src/tests/usr.bin/xlint/lint1/msg_130.c:1.5 --- src/tests/usr.bin/xlint/lint1/msg_130.c:1.4 Sat Feb 27 13:43:36 2021 +++ src/tests/usr.bin/xlint/lint1/msg_130.c Sun Feb 28 01:30:22 2021 @@ -1,7 +1,7 @@ -/* $NetBSD: msg_130.c,v 1.4 2021/02/27 13:43:36 rillig Exp $ */ +/* $NetBSD: msg_130.c,v 1.5 2021/02/28 01:30:22 rillig Exp $ */ # 3 "msg_130.c" -// Test for message: enum type mismatch, op %s [130] +// Test for message: enum type mismatch: '%s' '%s' '%s' [130] enum color { RED = 1 << 0, Index: src/tests/usr.bin/xlint/lint1/msg_130.exp diff -u src/tests/usr.bin/xlint/lint1/msg_130.exp:1.3 src/tests/usr.bin/xlint/lint1/msg_130.exp:1.4 --- src/tests/usr.bin/xlint/lint1/msg_130.exp:1.3 Sat Feb 27 13:43:36 2021 +++ src/tests/usr.bin/xlint/lint1/msg_130.exp Sun Feb 28 01:30:22 2021 @@ -1,3 +1,3 @@ -msg_130.c(27): warning: enum type mismatch, op : [130] -msg_130.c(29): warning: enum type mismatch, op != [130] -msg_130.c(30): warning: enum type mismatch, op == [130] +msg_130.c(27): warning: enum type mismatch: 'enum color' ':' 'enum daytime' [130] +msg_130.c(29): warning: enum type mismatch: 'enum color' '!=' 'enum size' [130] +msg_130.c(30): warning: enum type mismatch: 'enum color' '==' 'enum size' [130] Index: src/usr.bin/xlint/lint1/err.c diff -u src/usr.bin/xlint/lint1/err.c:1.83 src/usr.bin/xlint/lint1/err.c:1.84 --- src/usr.bin/xlint/lint1/err.c:1.83 Sun Feb 28 01:06:57 2021 +++ src/usr.bin/xlint/lint1/err.c Sun Feb 28 01:30:22 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: err.c,v 1.83 2021/02/28 01:06:57 rillig Exp $ */ +/* $NetBSD: err.c,v 1.84 2021/02/28 01:30:22 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) && !defined(lint) -__RCSID("$NetBSD: err.c,v 1.83 2021/02/28 01:06:57 rillig Exp $"); +__RCSID("$NetBSD: err.c,v 1.84 2021/02/28 01:30:22 rillig Exp $"); #endif #include <sys/types.h> @@ -189,7 +189,7 @@ const char *msgs[] = { "'&' before array or function: ignored", /* 127 */ "operands have incompatible pointer types, op %s (%s != %s)", /* 128 */ "expression has null effect", /* 129 */ - "enum type mismatch, op %s", /* 130 */ + "enum type mismatch: '%s' '%s' '%s'", /* 130 */ "conversion to '%s' may sign-extend incorrectly", /* 131 */ "conversion from '%s' to '%s' may lose accuracy", /* 132 */ "conversion of pointer to '%s' loses bits", /* 133 */ Index: src/usr.bin/xlint/lint1/tree.c diff -u src/usr.bin/xlint/lint1/tree.c:1.223 src/usr.bin/xlint/lint1/tree.c:1.224 --- src/usr.bin/xlint/lint1/tree.c:1.223 Sun Feb 28 01:06:57 2021 +++ src/usr.bin/xlint/lint1/tree.c Sun Feb 28 01:30:22 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: tree.c,v 1.223 2021/02/28 01:06:57 rillig Exp $ */ +/* $NetBSD: tree.c,v 1.224 2021/02/28 01:30:22 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,7 +37,7 @@ #include <sys/cdefs.h> #if defined(__RCSID) && !defined(lint) -__RCSID("$NetBSD: tree.c,v 1.223 2021/02/28 01:06:57 rillig Exp $"); +__RCSID("$NetBSD: tree.c,v 1.224 2021/02/28 01:30:22 rillig Exp $"); #endif #include <float.h> @@ -1732,8 +1732,9 @@ check_enum_type_mismatch(op_t op, int ar type_name(ln->tn_type), type_name(rn->tn_type)); break; default: - /* enum type mismatch, op %s */ - warning(130, mp->m_name); + /* enum type mismatch: '%s' '%s' '%s' */ + warning(130, type_name(ln->tn_type), mp->m_name, + type_name(rn->tn_type)); break; } } else if (Pflag && mp->m_comparison && op != EQ && op != NE) {