Home | History | Annotate | Download | only in lint2
History log of /src/usr.bin/xlint/lint2/msg.c
RevisionDateAuthorComments
 1.27  24-May-2025  rillig lint: fix wording in a warning about a type conflict

An object does not have a return type, only functions do.
 1.26  30-Nov-2024  rillig lint: reword lint2 warnings, reduce punctuation

The previous diagnostics used unusual punctuation, for example by placing
spaces inside parentheses, as well as using space-space-tab and
double-colon as separators. Convert these diagnostics into readily
readable prose, and mark them clearly as coming from lint2, so that they
can be related to the tests in /usr/tests/usr.bin/xlint/lint2/msg_???.ln.

This change means that usr.bin/error no longer recognizes these messages
as coming from lint2, but that can be fixed later if necessary.
 1.25  03-Dec-2023  rillig lint: in declarations, replace tab with space

Previously, in some cases, the keywords 'const' or 'struct' were
followed by a tab, which doesn't make sense.

No functional change.
 1.24  13-Jul-2023  rillig lint: indent copyright lines consistently
 1.23  10-Jul-2023  rillig lint: push memory management one layer down

Just as with type_name in lint1, it is more convenient if the
application code does not have to deal with memory management.
 1.22  10-Jul-2023  rillig lint: replce sprintf with snprintf

Even though the sprintf calls were safe, they looked suspicious.

No functional change.
 1.21  10-Jul-2023  rillig lint: clean up lint2
 1.20  09-Jun-2023  rillig lint: indent local variables consistently

No binary change.
 1.19  19-Feb-2023  rillig lint: make basename simpler

There is no need to handle trailing slashes since lint only handles
regular files in diagnostics, not directories. Furthermore, only the
last '/' was ignored, but multiple trailing slashes would not.
 1.18  02-Feb-2023  rillig lint: clean up

In symtab_search, most of the conditions were redundant, so remove them.

In read_byte, using CHAR_MASK was conceptually wrong, as that constant
is from the target platform while the lexical analysis happens on the
host platform. It was unnecessary as well, as a hypothetical host
platform with 36-bit chars might encode the characters from the basic
source character set as numbers higher than 0x0_0000_00ff. Since lint
assumes that both the source character set as well as the execution
character set are the same and based on 8-bit bytes, nothing changes.

No functional change.
 1.17  20-May-2022  rillig lint: use __RCSID in lint mode as well

Since 1995-10-02, lint supports __asm statements and __asm modifiers.

No binary change.
 1.16  28-Aug-2021  rillig lint: un-abbreviate unsigned integer types

No functional change.
 1.15  27-Mar-2021  rillig lint: remove space between 'sizeof ('

No functional change.
 1.14  16-Jan-2021  rillig lint: replace 0 and 1 with false and true, where appropriate

Change in behavior: Passing the option -h exactly 4294967296 times or
any multiple thereof is no longer equivalent to passing it never at all,
it is now equivalent to passing it once. See main2.c, hflag++ for the
actual change.

Other than that, no functional change intended.

A very large portion of the code already conformed to the requirements
of the strict bool mode. The only missing thing was using the constant
literals false and true instead of 0 and 1. For sure there are some
integer literals left that can be converted. For now, all literals that
appeared in the form " = 0" or " = 1" have been replaced.
 1.13  29-Dec-2020  rillig lint: remove redundant parentheses around return value
 1.12  28-Dec-2020  rillig lint: sort includes
 1.11  24-May-2011  joerg Fix format string usage
 1.10  26-Apr-2008  christos print the types involved in the mismatch.
 1.9  07-Apr-2005  christos branches: 1.9.20;
Factor out tyname() so that it can be used both by lint1 and lint2.
Since type_t is different between lint1.h and lint2.h include the
appropriate file depending on the pass. Make the argument mismatch
error print the type names of the types involved. Now that we have
a tyname() function we can fix the rest of the pass2 warnings to be
more explanatory, but not now.
 1.8  20-Jun-2004  jmc Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')

Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).

Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.

Fixes PR's: PR#17762 PR#25944
 1.7  31-Jan-2002  tv branches: 1.7.4;
Protect __RCSID and __COPYRIGHT from being invoked if not defined.
 1.6  21-Jan-2002  tv Add hooks for compiling on non-NetBSD hosts.
 1.5  28-May-2001  lukem cleanup (prior to more adding more features):
- convert to ANSI KNF
- remove trailing whitespace
- translate some comments from german into english

code compiles and runs clean, and tested by running "make lint" against
xlint source using previous and this lint produces same results.
 1.4  22-Feb-1998  christos WARNSify
 1.3  03-Nov-1997  cgd implement (hack in) symbol (function and variable) renaming, so that
the function renaming tricks currently needed by libc can be tolerated
by lint. This needs some cleanup, but it appears to work.
 1.2  03-Jul-1995  cgd branches: 1.2.4;
RCS id cleanup
 1.1  03-Jul-1995  cgd branches: 1.1.1;
Initial revision
 1.1.1.1  03-Jul-1995  cgd lint(1) implementation, by Jochen Pohl. named 'xlint' for a similar
reason to why 'install' is named 'xinstall'.
 1.2.4.1  04-Nov-1997  thorpej Pull up from trunk: make renaming work and other minor fixes.
 1.7.4.1  22-Jun-2004  tron Pull up revision 1.8 (requested by jmc in ticket #527):
Completely rework how tools/compat is done. Purge all uses/references to
_NETBSD_SOURCE as this makes cross building from older/newer versions of
NetBSD harder, not easier (and also makes the resulting tools 'different')
Wrap all required code with the inclusion of nbtool_config.h, attempt to
only use POSIX code in all places (or when reasonable test w. configure and
provide definitions: ala u_int, etc).
Reviewed by lukem. Tested on FreeBSD 4.9, Redhat Linux ES3, NetBSD 1.6.2 x86
NetBSD current (x86 and amd64) and Solaris 9.
Fixes PR's: PR#17762 PR#25944
 1.9.20.1  18-May-2008  yamt sync with head.

RSS XML Feed