1
0
mirror of https://git.savannah.gnu.org/git/gperf.git synced 2025-12-02 13:09:22 +00:00
Commit Graph

224 Commits

Author SHA1 Message Date
Bruno Haible
8dff71fb70 build: Remove left-overs from config.h_vms. 2025-04-16 19:21:27 +02:00
Bruno Haible
1a67526a17 Release gperf-3.2.1.
* src/version.cc (version_string): Bump.
* tests/*.exp: Update.
* NEWS: Mention the changes.
2025-04-13 18:12:04 +02:00
Bruno Haible
3bab6ab7bf Avoid "-Wundef" warnings in C++ mode on the generated code.
Reported by Heiko Becker <mail@heiko-becker.de> in
<https://lists.gnu.org/archive/html/bug-gperf/2025-04/msg00001.html>
and by Thomas Klausner <wiz@netbsd.org>.

* src/output.cc (Output::output_hash_function): Emit a
'defined __STDC_VERSION__' before the test of __STDC_VERSION__.
* tests/c-parse.exp, tests/charsets.exp, tests/chill.exp,
tests/cplusplus.exp, tests/java.exp, tests/languages.exp,
tests/modula2.exp, tests/objc.exp: Update.
2025-04-09 12:29:19 +02:00
Bruno Haible
fe7539a0f9 Release gperf-3.2.
* src/options.cc (Options::parse_options): Bump copyright year.
* NEWS: Mention a few more changes.
2025-04-05 16:31:52 +02:00
Bruno Haible
8e6a0c97c6 Tweak last commit.
* src/keyword.h (Keyword_Factory): Update comments.
2025-04-05 14:44:52 +02:00
Bruno Haible
a041291c80 Remove all occurrences of reinterpret_cast<>.
* src/keyword-list.h (Keyword_List): Add template parameter list <KT>.
(KeywordExt_List): Define as a typedef, not as a subclass.
(copy_list, delete_list, mergesort_list): Templatize accordingly.
* src/keyword-list.icc (Keyword_List): Add template parameter list <KT>.
(KeywordExt_List): Remove method definitions.
* src/keyword-list.cc (Keyword_List): Add template parameter list <KT>.
(copy_list, mergesort_list): Remove definitions on subclass.
Add explicit template instantiation.
* src/keyword.h (Keyword_Factory): Add template parameter list <KT>.
* src/keyword.cc (Keyword_Factory): Likewise.
Add explicit template instantiation.
* src/input.h (Input): Add template parameter list <KT>.
* src/input.cc (Input): Likewise. Add explicit template instantiation.
* src/main.cc (KeywordExt_Factory): Define as a typedef, not as a
subclass.
(main): Update.
2025-04-05 14:18:27 +02:00
Bruno Haible
67c697622f Make output on Windows identical to output on Unix.
* src/options.cc (Options::print_options): Drop a ".exe" suffix from the
program name before printing it.
2025-04-05 10:23:32 +02:00
Bruno Haible
2dd5061f4d Avoid "-Wzero-as-null-pointer-constant" warnings on the generated code.
Reported in
<https://lists.gnu.org/archive/html/bug-gnulib/2024-11/msg00123.html>.

* src/output.cc (Output::output_lookup_function_body): To denote a null
pointer, emit a cast expression instead of plain "0".
* tests/c-parse.exp, tests/charsets.exp, tests/chill.exp,
tests/cplusplus.exp, tests/gpc.exp, tests/incomplete.exp,
tests/java.exp, tests/languages.exp, tests/modula2.exp, tests/objc.exp,
tests/permut2.exp, tests/permut3.exp, tests/permutc2.exp,
tests/test-4.exp: Update.
2024-11-16 08:23:49 +01:00
Bruno Haible
0246553284 Fix build (regression 2024-04-04).
Reported by Pádraig Brady <P@draigBrady.com> in
<https://lists.gnu.org/archive/html/bug-gperf/2024-06/msg00000.html>.

* doc/configure.ac: Invoke AC_CONFIG_AUX_DIR, needed for locating
install-sh.
* lib/configure.ac: Likewise.
* src/configure.ac: Likewise.
* tests/configure.ac: Likewise.
2024-06-05 11:31:18 +02:00
Bruno Haible
84183912e0 Remove outdated Autoconf macro.
* aclocal.m4 (CL_PROG_INSTALL): Remove macro.
* doc/configure.ac: Invoke AC_PROG_INSTALL instead of CL_PROG_INSTALL.
* lib/configure.ac: Likewise.
* src/configure.ac: Likewise.
2024-04-04 15:10:51 +02:00
Bruno Haible
ce5106eb19 Avoid "clang -Wimplicit-fallthrough" warnings also in C mode.
* src/output.cc (Output::output_hash_function): Enhance the fallthrough
marker, to include clang >= 10 in C mode.
* tests/*.exp: Update.
2023-09-07 12:55:29 +02:00
Bruno Haible
8d68fff1c7 Avoid "gcc -Wmissing-field-initializers" warnings on the generated code.
* src/options.h (Options::has_initializer_suffix): New declaration.
* src/options.cc (Options::has_initializer_suffix): New function.
* src/output.cc (Output::output_keyword_table): If option -t is
specified and option -F is not specified, emit '#pragma GCC diagnostic'
lines, to silence -Wmissing-field-initializers warnings from gcc or
clang.
* tests/charsets.exp: Update.
* tests/gpc.exp: Likewise.
* tests/incomplete.exp: Likewise.
* tests/languages.exp: Likewise.
* tests/objc.exp: Likewise.
* tests/test-4.exp: Likewise.
2023-09-05 21:20:51 +02:00
Bruno Haible
91ed1621cc Avoid "gcc -Wunused-parameter" warnings on the generated hash function.
Reported by Vinícius dos Santos Oliveira <vini.ipsmaker@gmail.com> in
<https://savannah.gnu.org/bugs/index.php?64393>.

* src/output.cc (Output::output_hash_function): If str is not used, emit
a cast from str to void. If len is not used, emit a cast from len to
void.
* tests/permut2.exp: Update.
* tests/permut3.exp: Likewise.
* tests/permutc2.exp: Likewise.
2023-07-08 12:30:47 +02:00
Bruno Haible
1862c6e57a Add support for reproducible builds.
Suggested by Richard Purdie <richard.purdie@linuxfoundation.org> in
<https://lists.gnu.org/archive/html/bug-gperf/2022-07/msg00000.html>.

* autogen.sh: Import also lib/filename.h.
* Makefile.in (IMPORTED_FILES): Add lib/filename.h.
* src/options.cc: Include filename.h.
(Options::print_options): Print only the base name of the program name.
* tests/*.exp: Update.
2022-07-05 07:51:46 +02:00
Bruno Haible
6d53a2dbe0 Release gperf-3.2.
* src/version.cc (version_string): Bump to 3.2.
* src/options.cc (Options::parse_options): Bump copyright year.
* tests/*.exp: Update.
* doc/gperf.texi: Bump date.
2022-01-05 12:59:54 +01:00
Michael Drake
96ebd0b95d Honor --readonly-tables when outputting table for --ignore-case.
* src/output.cc (output_upperlower_table): Add 'const' when suitable.
2021-06-06 11:23:17 +02:00
Bruno Haible
8cb07d4235 Fix warnings from Autoconf 2.69c.
* configure.ac: Invoke AC_INIT, AC_OUTPUT without arguments.
* doc/configure.ac: Likewise.
* lib/configure.ac: Likewise.
* src/configure.ac: Invoke AC_INIT, AC_OUTPUT without arguments. Use
AC_CACHE_CHECK, AC_LANG_PUSH/AC_LANG_POP, AC_COMPILE_IFELSE
* tests/configure.ac: Invoke AC_INIT, AC_OUTPUT without arguments. Use
ac_cv_c_compiler_gnu instead of ac_cv_prog_gcc, and
ac_cv_cxx_compiler_gnu instead of ac_cv_prog_gxx. Don't use 'test' with
option '-a'.
2020-10-05 00:45:25 +02:00
Bruno Haible
4706572628 Update after gnulib changed.
* configure.ac (AC_PREREQ): Require Autoconf >= 2.64.
* doc/configure.ac (AC_PREREQ): Likewise.
* lib/configure.ac (AC_PREREQ): Likewise.
* src/configure.ac (AC_PREREQ): Likewise.
* tests/configure.ac (AC_PREREQ): Likewise.
* autogen.sh: Update comment.
2020-08-30 02:06:20 +02:00
Bruno Haible
0a2ed64ff7 Rely entirely on the GNU Build System.
* Makefile.vms: Remove file.
* INSTALL.vms: Remove file.
* Makefile.in (SOURCE_FILES): Remove them.
* Makefile.devel (src/config.h_vms): Remove target.
(totally-clean): Update.
* src/Makefile.in (GENERATED_FILES): Remove config.h_vms.
2020-02-11 03:14:38 +01:00
Bruno Haible
9f4f11ab13 Update after gnulib changed. 2018-10-24 11:59:45 +02:00
Bruno Haible
b3c3566855 Prefer https URLs where possible. 2018-09-17 16:53:00 +02:00
Bruno Haible
50840436d5 Avoid "implicit fallthrough" warnings also from clang. 2018-09-09 01:14:20 +02:00
Bruno Haible
5f4cf73df2 Don't print uninitialized hash values in debug mode. 2018-09-08 16:37:56 +02:00
Bruno Haible
24f492fd8d Improve the speed of the positions search. 2018-09-08 16:08:09 +02:00
Bruno Haible
947854520b Really prefer more efficient hash functions over less efficient ones. 2018-09-08 15:56:21 +02:00
Bruno Haible
a720310c28 Correct width of columns when outputting the asso_values array.
Patch by Frank Wojcik <frankw@touristinresidence.com>.

* src/output.cc (Output::output_hash_function): Increase the
field_width by 1 if _max_hash_value+1 is a power of 10.
2018-09-08 15:36:36 +02:00
Bruno Haible
0d37a8763d Avoid "implicit fallthrough" warnings in the generated code. 2018-07-26 02:00:39 +02:00
Bruno Haible
13c9383b10 Support input files with CR/LF line terminators. 2018-04-24 09:25:10 +02:00
Bruno Haible
283b51086a Don't use an undocumented Autoconf macro. 2018-01-23 08:59:13 +01:00
Bruno Haible
a459641a53 Initialize the Keyword::_lineno field through the constructor. 2017-04-16 17:39:15 +02:00
Bruno Haible
825b077bf4 Fix copyright years. 2017-02-22 15:32:38 +01:00
Marcel Schaible
d551865672 Adjusted the version information for the release 2017-01-02 19:00:16 +01:00
Bruno Haible
a705809f3d Drop the inline specifiers from the generated lookup function. 2016-11-26 18:42:05 +01:00
Bruno Haible
0414be8fff Change mailing list address to <bug-gperf@gnu.org>. 2016-11-26 18:08:57 +01:00
Bruno Haible
d519d1a821 Change the 'len' parameter type to 'size_t'. 2016-11-26 17:54:33 +01:00
Bruno Haible
b468e3aae0 Avoid warning in output code on 64-bit native Windows platforms. 2016-11-26 02:54:25 +01:00
Bruno Haible
baf89d87f0 Don't use 'register' storage-class specifier in C++ output code. 2016-11-26 02:26:31 +01:00
Bruno Haible
658e826478 Avoid 'warning: use of old-style cast' in output code. 2016-11-26 02:25:50 +01:00
Bruno Haible
bbe4d732f3 Avoid 'warning: implicit conversion changes signedness' in output code. 2016-11-26 02:25:44 +01:00
Bruno Haible
b3356507ce Avoid 'warning: implicit conversion changes signedness' in output code. 2016-11-26 01:05:14 +01:00
Bruno Haible
efd1fd8439 Fix g++ -Wall warnings. 2016-11-25 20:03:51 +01:00
Bruno Haible
0003342367 Fix "make clean" with MSVC. 2012-07-01 19:02:44 +02:00
Bruno Haible
064483191f Fix compilation error with MSVC. 2012-07-01 18:07:20 +02:00
Bruno Haible
bf93ebd28e Remove old infrastructure for building with MSVC. 2012-07-01 18:05:30 +02:00
Bruno Haible
238fa3bf09 Move build infrastructure files to build-aux/. 2012-07-01 16:44:26 +02:00
Bruno Haible
008922a2e9 Remove autotools generated files from version control. 2012-07-01 16:04:36 +02:00
Bruno Haible
9386cd6fc4 Create tarballs through an Automake-like "make dist" command. 2012-07-01 15:40:25 +02:00
Bruno Haible
b392998058 Regenerated with autoconf-2.69. 2012-04-28 20:58:26 +02:00
Bruno Haible
00e5f0c388 Bump copyright year. 2011-01-16 16:56:58 +01:00
Bruno Haible
5ac5f15a74 New option --constants-prefix. 2011-01-16 16:45:09 +01:00