diff options
-rw-r--r-- | ChangeLog | 28 | ||||
-rw-r--r-- | ChangeLog.0 | 2 | ||||
-rw-r--r-- | NEWS | 10 | ||||
-rw-r--r-- | awk.h | 12 | ||||
-rw-r--r-- | awkgram.c | 31 | ||||
-rw-r--r-- | awkgram.y | 31 | ||||
-rw-r--r-- | configh.in | 12 | ||||
-rwxr-xr-x | configure | 34 | ||||
-rw-r--r-- | configure.ac | 20 | ||||
-rw-r--r-- | custom.h | 5 | ||||
-rw-r--r-- | doc/ChangeLog | 7 | ||||
-rw-r--r-- | doc/gawk.info | 114 | ||||
-rw-r--r-- | doc/gawk.texi | 6 | ||||
-rw-r--r-- | doc/gawktexi.in | 6 | ||||
-rw-r--r-- | missing_d/ChangeLog | 4 | ||||
-rw-r--r-- | missing_d/gawkbool.h | 40 |
16 files changed, 131 insertions, 231 deletions
@@ -3,6 +3,25 @@ * field.c (do_split): Simplify the lint warnings. Based on suggested code by Eric Pruitt <eric.pruitt@gmail.com>. + Unrelated: + + * awkgram.y (check_funcs): Remove the REALLYMEAN ifdef and + simplify the lint checking code for function defined but not + called or called but not defined. + +2017-10-13 Arnold D. Robbins <arnold@skeeve.com> + + Assume a more C99 environment: + + * awk.h: Assume we have limits.h, stdarg.h and stdbool.h. + * configure.ac: Remove checks for limits.h and stdarg.h. + +2017-10-10 Arnold D. Robbins <arnold@skeeve.com> + + * configure.ac: Remove --with-whiny-user-strftime option. + * NEWS: Updated. + * ChangeLog.0: Fix a typo. :-) + 2017-10-08 Arnold D. Robbins <arnold@skeeve.com> * command.y: Fix the FSF's address. @@ -22,6 +41,14 @@ 2017-10-02 Arnold D. Robbins <arnold@skeeve.com> + Undo change of 2014-09-07: + + * configure.ac: Remove the undocumented option to enable locale + letters in identifiers. + * awkgram.y (is_alpha): Remove related code. + +2017-10-02 Arnold D. Robbins <arnold@skeeve.com> + * config.guess, config.sub: Updated. 2017-09-28 Arnold D. Robbins <arnold@skeeve.com> @@ -3710,6 +3737,7 @@ * configure.ac: Add an option to enable locale letters in identifiers. Undocumented and subject to being rescinded at any time in the future. + * awkgram.y (is_alpha): Actual code is here. * NEWS: Mention to look at configure --help. Unrelated: diff --git a/ChangeLog.0 b/ChangeLog.0 index af6bd99f..595442d4 100644 --- a/ChangeLog.0 +++ b/ChangeLog.0 @@ -7020,7 +7020,7 @@ Tue Dec 4 17:54:30 2001 Arnold D. Robbins <arnold@skeeve.com> * configure.in (AC_ARG_WITH): Add appropriate code for autoconf. * accondig.h (USE_INCLUDED_STRFTIME): Add #undef for it. - * custom.h (USE_INCLUDED_STRFTIME): Set things up write. + * custom.h (USE_INCLUDED_STRFTIME): Set things up right. Tue Dec 4 16:44:07 2001 Andreas Buening <andreas.buening@nexgo.de> @@ -5,6 +5,16 @@ are permitted in any medium without royalty provided the copyright notice and this notice are preserved. +Changes from 4.2.0 to 5.0.0 +--------------------------- + +1. The undocumented configure option and code that enabled the use of + non-English "letters" in identifiers is now gone. + +2. The `--with-whiny-user-strftime' configuration option is now gone. + +3. The code now makes some stronger assumptions about a C99 environment. + Changes from 4.1.4 to 4.2.0 --------------------------- @@ -53,9 +53,7 @@ #include <stdio.h> #include <assert.h> -#ifdef HAVE_LIMITS_H #include <limits.h> -#endif /* HAVE_LIMITS_H */ #include <ctype.h> #include <setjmp.h> @@ -73,11 +71,8 @@ #error "gawk no longer supports non-C89 environments (no __STDC__ or __STDC__ < 1)" #endif -#if defined(HAVE_STDARG_H) #include <stdarg.h> -#else -#error "gawk no longer supports <varargs.h>. Please update your compiler and runtime" -#endif +#include <stdbool.h> #include <signal.h> #include <time.h> #include <errno.h> @@ -89,11 +84,6 @@ extern int errno; #include <stdlib.h> #endif /* not STDC_HEADERS */ -#ifdef HAVE_STDBOOL_H -#include <stdbool.h> -#else -#include "missing_d/gawkbool.h" -#endif /* We can handle multibyte strings. */ #include <wchar.h> @@ -7357,22 +7357,19 @@ check_funcs() for (i = 0; i < HASHSIZE; i++) { for (fp = ftable[i]; fp != NULL; fp = fp->next) { -#ifdef REALLYMEAN - /* making this the default breaks old code. sigh. */ - if (fp->defined == 0 && ! fp->extension) { - error( - _("function `%s' called but never defined"), fp->name); - errcount++; - } -#else - if (do_lint && fp->defined == 0 && ! fp->extension) - lintwarn( - _("function `%s' called but never defined"), fp->name); -#endif + if (do_lint && ! fp->extension) { + /* + * Making this not a lint check and + * incrementing * errcount breaks old code. + * Sigh. + */ + if (fp->defined == 0) + lintwarn(_("function `%s' called but never defined"), + fp->name); - if (do_lint && fp->used == 0 && ! fp->extension) { - lintwarn(_("function `%s' defined but never called directly"), - fp->name); + if (fp->used == 0) + lintwarn(_("function `%s' defined but never called directly"), + fp->name); } } } @@ -8702,9 +8699,6 @@ install_builtins(void) bool is_alpha(int c) { -#ifdef I_DONT_KNOW_WHAT_IM_DOING - return isalpha(c); -#else /* ! I_DONT_KNOW_WHAT_IM_DOING */ switch (c) { case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': @@ -8719,7 +8713,6 @@ is_alpha(int c) return true; } return false; -#endif /* ! I_DONT_KNOW_WHAT_IM_DOING */ } /* is_alnum --- return true for alphanumeric, English only letters */ @@ -4937,22 +4937,19 @@ check_funcs() for (i = 0; i < HASHSIZE; i++) { for (fp = ftable[i]; fp != NULL; fp = fp->next) { -#ifdef REALLYMEAN - /* making this the default breaks old code. sigh. */ - if (fp->defined == 0 && ! fp->extension) { - error( - _("function `%s' called but never defined"), fp->name); - errcount++; - } -#else - if (do_lint && fp->defined == 0 && ! fp->extension) - lintwarn( - _("function `%s' called but never defined"), fp->name); -#endif + if (do_lint && ! fp->extension) { + /* + * Making this not a lint check and + * incrementing * errcount breaks old code. + * Sigh. + */ + if (fp->defined == 0) + lintwarn(_("function `%s' called but never defined"), + fp->name); - if (do_lint && fp->used == 0 && ! fp->extension) { - lintwarn(_("function `%s' defined but never called directly"), - fp->name); + if (fp->used == 0) + lintwarn(_("function `%s' defined but never called directly"), + fp->name); } } } @@ -6282,9 +6279,6 @@ install_builtins(void) bool is_alpha(int c) { -#ifdef I_DONT_KNOW_WHAT_IM_DOING - return isalpha(c); -#else /* ! I_DONT_KNOW_WHAT_IM_DOING */ switch (c) { case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': @@ -6299,7 +6293,6 @@ is_alpha(int c) return true; } return false; -#endif /* ! I_DONT_KNOW_WHAT_IM_DOING */ } /* is_alnum --- return true for alphanumeric, English only letters */ @@ -108,9 +108,6 @@ /* Define if you have the libsigsegv library. */ #undef HAVE_LIBSIGSEGV -/* Define to 1 if you have the <limits.h> header file. */ -#undef HAVE_LIMITS_H - /* Define to 1 if you have the <locale.h> header file. */ #undef HAVE_LOCALE_H @@ -186,9 +183,6 @@ /* we have sockets on this system */ #undef HAVE_SOCKETS -/* Define to 1 if you have the <stdarg.h> header file. */ -#undef HAVE_STDARG_H - /* Define to 1 if stdbool.h conforms to C99. */ #undef HAVE_STDBOOL_H @@ -341,9 +335,6 @@ /* Define to 1 if you have the `__etoa_l' function. */ #undef HAVE___ETOA_L -/* enable severe portability problems */ -#undef I_DONT_KNOW_WHAT_IM_DOING - /* disable lint checks */ #undef NO_LINT @@ -395,9 +386,6 @@ /* Define to 1 if the character set is EBCDIC */ #undef USE_EBCDIC -/* force use of our version of strftime */ -#undef USE_INCLUDED_STRFTIME - /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE @@ -763,9 +763,7 @@ ac_subst_files='' ac_user_opts=' enable_option_checking enable_silent_rules -with_whiny_user_strftime enable_lint -enable_severe_portability_problems enable_builtin_intdiv0 enable_mpfr enable_dependency_tracking @@ -1412,8 +1410,6 @@ Optional Features: --enable-silent-rules less verbose build output (undo: "make V=1") --disable-silent-rules verbose build output (undo: "make V=0") --disable-lint do not compile in gawk lint checking - --enable-severe-portability-problems - allow really nasty portability problems --enable-builtin-intdiv0 enable built-in intdiv0 function --disable-mpfr do not check for MPFR @@ -1429,9 +1425,6 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-whiny-user-strftime - force use of included version of strftime for - deficient systems --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir @@ -3214,18 +3207,6 @@ fi - -# Check whether --with-whiny-user-strftime was given. -if test "${with_whiny_user_strftime+set}" = set; then : - withval=$with_whiny_user_strftime; if test "$withval" = yes - then - -$as_echo "#define USE_INCLUDED_STRFTIME 1" >>confdefs.h - - fi - -fi - # Check whether --enable-lint was given. if test "${enable_lint+set}" = set; then : enableval=$enable_lint; if test "$enableval" = no @@ -3237,17 +3218,6 @@ $as_echo "#define NO_LINT 1" >>confdefs.h fi -# Check whether --enable-severe-portability-problems was given. -if test "${enable_severe_portability_problems+set}" = set; then : - enableval=$enable_severe_portability_problems; if test "$enableval" = yes - then - -$as_echo "#define I_DONT_KNOW_WHAT_IM_DOING 1" >>confdefs.h - - fi - -fi - # Check whether --enable-builtin-intdiv0 was given. if test "${enable_builtin_intdiv0+set}" = set; then : enableval=$enable_builtin_intdiv0; if test "$enableval" = yes @@ -8029,8 +7999,8 @@ $as_echo "#define HAVE_LC_MESSAGES 1" >>confdefs.h fi -for ac_header in arpa/inet.h fcntl.h limits.h locale.h libintl.h mcheck.h \ - netdb.h netinet/in.h stdarg.h stddef.h string.h \ +for ac_header in arpa/inet.h fcntl.h locale.h libintl.h mcheck.h \ + netdb.h netinet/in.h stddef.h string.h \ sys/ioctl.h sys/param.h sys/select.h sys/socket.h sys/time.h unistd.h \ termios.h stropts.h wchar.h wctype.h do : diff --git a/configure.ac b/configure.ac index 53bbaa47..9013a5f3 100644 --- a/configure.ac +++ b/configure.ac @@ -44,15 +44,6 @@ AM_INIT_AUTOMAKE([1.15 dist-xz dist-lzip]) AC_CONFIG_MACRO_DIR([m4]) -dnl Additional argument stuff -AC_ARG_WITH(whiny-user-strftime, - [AS_HELP_STRING([--with-whiny-user-strftime], [force use of included version of strftime for deficient systems])], - if test "$withval" = yes - then - AC_DEFINE(USE_INCLUDED_STRFTIME, 1, - [force use of our version of strftime]) - fi -) AC_ARG_ENABLE([lint], [AS_HELP_STRING([--disable-lint],[do not compile in gawk lint checking])], if test "$enableval" = no @@ -60,13 +51,6 @@ AC_ARG_ENABLE([lint], AC_DEFINE(NO_LINT, 1, [disable lint checks]) fi ) -AC_ARG_ENABLE([severe-portability-problems], - [AS_HELP_STRING([--enable-severe-portability-problems],[allow really nasty portability problems])], - if test "$enableval" = yes - then - AC_DEFINE(I_DONT_KNOW_WHAT_IM_DOING, 1, [enable severe portability problems]) - fi -) AC_ARG_ENABLE([builtin-intdiv0], [AS_HELP_STRING([--enable-builtin-intdiv0],[enable built-in intdiv0 function])], if test "$enableval" = yes @@ -158,8 +142,8 @@ AM_LANGINFO_CODESET gt_LC_MESSAGES dnl checks for header files -AC_CHECK_HEADERS(arpa/inet.h fcntl.h limits.h locale.h libintl.h mcheck.h \ - netdb.h netinet/in.h stdarg.h stddef.h string.h \ +AC_CHECK_HEADERS(arpa/inet.h fcntl.h locale.h libintl.h mcheck.h \ + netdb.h netinet/in.h stddef.h string.h \ sys/ioctl.h sys/param.h sys/select.h sys/socket.h sys/time.h unistd.h \ termios.h stropts.h wchar.h wctype.h) AC_HEADER_STDC @@ -48,11 +48,6 @@ #define HAVE_MKTIME 1 #endif -/* For whiny users */ -#ifdef USE_INCLUDED_STRFTIME -#undef HAVE_STRFTIME -#endif - /* For HP/UX with gcc */ #if defined(hpux) || defined(_HPUX_SOURCE) #undef HAVE_TZSET diff --git a/doc/ChangeLog b/doc/ChangeLog index dca86df1..1371bd9b 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -4,7 +4,12 @@ function to be syntactically and semantically correct. Thanks to Jaromir Obr <jaromir.obr@gmail.com> for the report. (POSIX String Comparison): Add some URL references in @ignore. - + + Unrelated: + + * gawktexi.in: Remove description of --with-whiny-user-strftime + configuration option. + 2017-10-08 Andrew J. Schorr <aschorr@telemetry-investments.com> * gawktexi.in: Fix discussion of AWKPATH in section on @include. diff --git a/doc/gawk.info b/doc/gawk.info index 6b826cc2..18cc047b 100644 --- a/doc/gawk.info +++ b/doc/gawk.info @@ -28933,10 +28933,6 @@ command line when compiling 'gawk' from scratch, including: desirable, but it may bring you some slight performance improvement. -'--with-whiny-user-strftime' - Force use of the included version of the C 'strftime()' function - for deficient systems. - Use the command './configure --help' to see the full list of options supplied by 'configure'. @@ -32877,8 +32873,6 @@ Index * --traditional option, --posix option and: Options. (line 286) * --use-lc-numeric option: Options. (line 232) * --version option: Options. (line 318) -* --with-whiny-user-strftime configuration option: Additional Configuration Options. - (line 42) * -b option: Options. (line 69) * -c option: Options. (line 82) * -C option: Options. (line 89) @@ -33582,8 +33576,6 @@ Index (line 32) * configuration option, --disable-nls: Additional Configuration Options. (line 37) -* configuration option, --with-whiny-user-strftime: Additional Configuration Options. - (line 42) * configuration options, gawk: Additional Configuration Options. (line 6) * constant regexps: Regexp Usage. (line 57) @@ -36409,58 +36401,58 @@ Node: Unix Installation1161877 Node: Quick Installation1162559 Node: Shell Startup Files1164973 Node: Additional Configuration Options1166062 -Node: Configuration Philosophy1168051 -Node: Non-Unix Installation1170420 -Node: PC Installation1170880 -Node: PC Binary Installation1171718 -Node: PC Compiling1172153 -Node: PC Using1173270 -Node: Cygwin1176315 -Node: MSYS1177085 -Node: VMS Installation1177586 -Node: VMS Compilation1178377 -Ref: VMS Compilation-Footnote-11179606 -Node: VMS Dynamic Extensions1179664 -Node: VMS Installation Details1181349 -Node: VMS Running1183602 -Node: VMS GNV1187881 -Node: VMS Old Gawk1188616 -Node: Bugs1189087 -Node: Bug address1189750 -Node: Usenet1192542 -Node: Maintainers1193319 -Node: Other Versions1194580 -Node: Installation summary1201375 -Node: Notes1202577 -Node: Compatibility Mode1203442 -Node: Additions1204224 -Node: Accessing The Source1205149 -Node: Adding Code1206586 -Node: New Ports1212805 -Node: Derived Files1217293 -Ref: Derived Files-Footnote-11222939 -Ref: Derived Files-Footnote-21222974 -Ref: Derived Files-Footnote-31223572 -Node: Future Extensions1223686 -Node: Implementation Limitations1224344 -Node: Extension Design1225527 -Node: Old Extension Problems1226681 -Ref: Old Extension Problems-Footnote-11228199 -Node: Extension New Mechanism Goals1228256 -Ref: Extension New Mechanism Goals-Footnote-11231620 -Node: Extension Other Design Decisions1231809 -Node: Extension Future Growth1233922 -Node: Old Extension Mechanism1234758 -Node: Notes summary1236521 -Node: Basic Concepts1237703 -Node: Basic High Level1238384 -Ref: figure-general-flow1238666 -Ref: figure-process-flow1239351 -Ref: Basic High Level-Footnote-11242652 -Node: Basic Data Typing1242837 -Node: Glossary1246165 -Node: Copying1278115 -Node: GNU Free Documentation License1315654 -Node: Index1340772 +Node: Configuration Philosophy1167923 +Node: Non-Unix Installation1170292 +Node: PC Installation1170752 +Node: PC Binary Installation1171590 +Node: PC Compiling1172025 +Node: PC Using1173142 +Node: Cygwin1176187 +Node: MSYS1176957 +Node: VMS Installation1177458 +Node: VMS Compilation1178249 +Ref: VMS Compilation-Footnote-11179478 +Node: VMS Dynamic Extensions1179536 +Node: VMS Installation Details1181221 +Node: VMS Running1183474 +Node: VMS GNV1187753 +Node: VMS Old Gawk1188488 +Node: Bugs1188959 +Node: Bug address1189622 +Node: Usenet1192414 +Node: Maintainers1193191 +Node: Other Versions1194452 +Node: Installation summary1201247 +Node: Notes1202449 +Node: Compatibility Mode1203314 +Node: Additions1204096 +Node: Accessing The Source1205021 +Node: Adding Code1206458 +Node: New Ports1212677 +Node: Derived Files1217165 +Ref: Derived Files-Footnote-11222811 +Ref: Derived Files-Footnote-21222846 +Ref: Derived Files-Footnote-31223444 +Node: Future Extensions1223558 +Node: Implementation Limitations1224216 +Node: Extension Design1225399 +Node: Old Extension Problems1226553 +Ref: Old Extension Problems-Footnote-11228071 +Node: Extension New Mechanism Goals1228128 +Ref: Extension New Mechanism Goals-Footnote-11231492 +Node: Extension Other Design Decisions1231681 +Node: Extension Future Growth1233794 +Node: Old Extension Mechanism1234630 +Node: Notes summary1236393 +Node: Basic Concepts1237575 +Node: Basic High Level1238256 +Ref: figure-general-flow1238538 +Ref: figure-process-flow1239223 +Ref: Basic High Level-Footnote-11242524 +Node: Basic Data Typing1242709 +Node: Glossary1246037 +Node: Copying1277987 +Node: GNU Free Documentation License1315526 +Node: Index1340644 End Tag Table diff --git a/doc/gawk.texi b/doc/gawk.texi index e1eea073..bb5aee3c 100644 --- a/doc/gawk.texi +++ b/doc/gawk.texi @@ -39278,12 +39278,6 @@ MPFR support is not available. Disable all message-translation facilities. This is usually not desirable, but it may bring you some slight performance improvement. - -@cindex @option{--with-whiny-user-strftime} configuration option -@cindex configuration option, @code{--with-whiny-user-strftime} -@item --with-whiny-user-strftime -Force use of the included version of the C @code{strftime()} -function for deficient systems. @end table Use the command @samp{./configure --help} to see the full list of diff --git a/doc/gawktexi.in b/doc/gawktexi.in index cbc28419..1d7543e3 100644 --- a/doc/gawktexi.in +++ b/doc/gawktexi.in @@ -38292,12 +38292,6 @@ MPFR support is not available. Disable all message-translation facilities. This is usually not desirable, but it may bring you some slight performance improvement. - -@cindex @option{--with-whiny-user-strftime} configuration option -@cindex configuration option, @code{--with-whiny-user-strftime} -@item --with-whiny-user-strftime -Force use of the included version of the C @code{strftime()} -function for deficient systems. @end table Use the command @samp{./configure --help} to see the full list of diff --git a/missing_d/ChangeLog b/missing_d/ChangeLog index a62758ae..c8368e1d 100644 --- a/missing_d/ChangeLog +++ b/missing_d/ChangeLog @@ -1,3 +1,7 @@ +2017-10-13 Arnold D. Robbins <arnold@skeeve.com> + + * gawkbool.h: Removed. + 2017-10-08 Arnold D. Robbins <arnold@skeeve.com> * strncasecmp.c: Fix FSF's address. diff --git a/missing_d/gawkbool.h b/missing_d/gawkbool.h deleted file mode 100644 index c75a5a10..00000000 --- a/missing_d/gawkbool.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - * gawkbool.h -- replacement definitions for bool. - */ - -/* - * Copyright (C) 2012 the Free Software Foundation, Inc. - * - * This file is part of GAWK, the GNU implementation of the - * AWK Programming Language. - * - * GAWK is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 3 of the License, or - * (at your option) any later version. - * - * GAWK is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA - */ - -/* This stuff largely taken from the Autoconf doc. */ - -#ifndef __bool_true_false_are_defined -# ifndef HAVE__BOOL -# ifdef __cplusplus -typedef bool _Bool; -# else -# define _Bool signed char -# endif -# endif -# define bool _Bool -# define false 0 -# define true 1 -# define __bool_true_false_are_defined 1 -#endif |