Home | History | Annotate | Download | only in lint2
History log of /src/usr.bin/xlint/lint2/hash.c
RevisionDateAuthorComments
 1.30  24-May-2025  rillig lint: constify
 1.29  03-Dec-2023  rillig branches: 1.29.2;
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.28  13-Jul-2023  rillig lint: indent copyright lines consistently
 1.27  10-Jul-2023  rillig lint: clean up lint2
 1.26  10-Jul-2023  rillig lint: clean up wchar_t and hash tables
 1.25  09-Jun-2023  rillig lint: indent local variables consistently

No binary change.
 1.24  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.23  16-Nov-2021  rillig lint: clean up initialization of lint2 symbol table

No functional change.
 1.22  28-Aug-2021  rillig lint: clean up hash functions

No functional change.
 1.21  28-Aug-2021  rillig lint: fold constants in hash functions

All platforms supported by lint have sizeof(unsigned int) == 4 and
CHAR_BIT == 8. There is no need to encode these expressions in a hash
function, they only made the code harder to read.

No functional change.
 1.20  28-Aug-2021  rillig lint: fix memory leak in symtab_forall_sorted (since today)
 1.19  28-Aug-2021  rillig lint: write the entries for the libraries in alphabetical order

This makes them easier to read by humans.

The checks are still performed in hashcode order since there are no
tests that would cover this change.
 1.18  28-Aug-2021  rillig lint: remove unused parameter from forall

No functional change.
 1.17  28-Aug-2021  rillig lint: un-abbreviate unsigned integer types

No functional change.
 1.16  22-Aug-2021  rillig lint: use unsigned integers for storing hash values

The computation of the hash values is unchanged, only the resulting
value (which is always less than 1009 anyway, see HSHSIZ2) is stored as
unsigned as well.

No functional change.
 1.15  02-Apr-2021  rillig lint: add parentheses after sizeof, as required by share/misc/style

No functional change.
 1.14  26-Mar-2021  rillig lint: in malloc calls, use 'sizeof *ptr' instead of 'sizeof(type)'

No functional change.
 1.13  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.12  29-Dec-2020  rillig lint: remove redundant parentheses around return value
 1.11  15-Apr-2009  christos Lukemify (WARNS=4)
 1.10  14-Apr-2009  lukem Fix -Wcast-qual issue
 1.9  20-Jun-2004  jmc branches: 1.9.36;
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.8  31-Jan-2002  tv branches: 1.8.4;
Protect __RCSID and __COPYRIGHT from being invoked if not defined.
 1.7  21-Jan-2002  tv Add hooks for compiling on non-NetBSD hosts.
 1.6  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.5  27-Jul-1998  mycroft Fix uses of uninitialized memory, and incorrect types for initializers.
From ITOH Yasufumi, PR 5861.
 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.8.4.1  22-Jun-2004  tron Pull up revision 1.9 (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.36.1  13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.29.2.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed