* [PATCH 0/3] Build fixes @ 2020-12-31 5:41 Felipe Contreras 2020-12-31 5:41 ` [PATCH 1/3] src: fix build warnings Felipe Contreras ` (2 more replies) 0 siblings, 3 replies; 21+ messages in thread From: Felipe Contreras @ 2020-12-31 5:41 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras There's a couple of warnings I get all the time that I've fixed. And recently Arch Linux updated autoconf to 2.70, which throws a bunch of errors. Everything seems to be fixed now, and it works fine on autoconf 2.69 as well. Felipe Contreras (3): src: fix build warnings autoconf: remove deprecated functions autoconf: prepare for 2.70 Src/Modules/files.c | 6 --- Src/mem.c | 16 ++----- Src/pattern.c | 2 +- Src/utils.c | 3 +- Src/zsh_system.h | 21 +-------- aclocal.m4 | 8 ++-- aczsh.m4 | 104 ++++++++++++++++++++++---------------------- configure.ac | 4 +- 8 files changed, 66 insertions(+), 98 deletions(-) -- 2.30.0 ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 1/3] src: fix build warnings 2020-12-31 5:41 [PATCH 0/3] Build fixes Felipe Contreras @ 2020-12-31 5:41 ` Felipe Contreras 2021-01-02 11:22 ` Daniel Shahaf 2020-12-31 5:41 ` [PATCH 2/3] autoconf: remove deprecated functions Felipe Contreras 2020-12-31 5:41 ` [PATCH 3/3] autoconf: prepare for 2.70 Felipe Contreras 2 siblings, 1 reply; 21+ messages in thread From: Felipe Contreras @ 2020-12-31 5:41 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras pattern.c: In function ‘patcomppiece’: pattern.c:1253:14: warning: ‘from’ may be used uninitialized in this function [-Wmaybe-uninitialized] 1253 | zrange_t from, to; | ^~~~ utils.c: In function ‘getkeystring’: cc1: warning: function may return address of local variable [-Wreturn-local-addr] utils.c:6703:16: note: declared here 6703 | char *buf, tmp[1]; | ^~~ Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> --- Src/pattern.c | 2 +- Src/utils.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Src/pattern.c b/Src/pattern.c index c7c2c8bea..c28f2c9fb 100644 --- a/Src/pattern.c +++ b/Src/pattern.c @@ -1250,7 +1250,7 @@ patcomppiece(int *flagp, int paren) int hash, count; union upat up; char *nptr, *str0, *ptr, *patprev; - zrange_t from, to; + zrange_t from = 0, to; char *charstart; flags = 0; diff --git a/Src/utils.c b/Src/utils.c index 5151b89a8..37ae4c854 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -6700,7 +6700,8 @@ ucs4toutf8(char *dest, unsigned int wval) mod_export char * getkeystring(char *s, int *len, int how, int *misc) { - char *buf, tmp[1]; + static char tmp[1]; + char *buf; char *t, *tdest = NULL, *u = NULL, *sstart = s, *tbuf = NULL; char svchar = '\0'; int meta = 0, control = 0, ignoring = 0; -- 2.30.0 ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2020-12-31 5:41 ` [PATCH 1/3] src: fix build warnings Felipe Contreras @ 2021-01-02 11:22 ` Daniel Shahaf 2021-01-02 16:41 ` Mikael Magnusson 0 siblings, 1 reply; 21+ messages in thread From: Daniel Shahaf @ 2021-01-02 11:22 UTC (permalink / raw) To: Felipe Contreras, zsh-workers Felipe Contreras wrote on Thu, 31 Dec 2020 05:41 +00:00: > utils.c: In function ‘getkeystring’: > cc1: warning: function may return address of local variable [-Wreturn-local-addr] > utils.c:6703:16: note: declared here > 6703 | char *buf, tmp[1]; > | ^~~ > > diff --git a/Src/utils.c b/Src/utils.c > index 5151b89a8..37ae4c854 100644 > --- a/Src/utils.c > +++ b/Src/utils.c > @@ -6700,7 +6700,8 @@ ucs4toutf8(char *dest, unsigned int wval) > mod_export char * > getkeystring(char *s, int *len, int how, int *misc) > { > - char *buf, tmp[1]; > + static char tmp[1]; > + char *buf; The docstring explicitly promises the returned string will be newly- allocated from the heap, so this change makes the implementation inconsistent with the docstring. No comment on the pattern.c part. ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2021-01-02 11:22 ` Daniel Shahaf @ 2021-01-02 16:41 ` Mikael Magnusson 2021-01-02 18:30 ` Felipe Contreras 0 siblings, 1 reply; 21+ messages in thread From: Mikael Magnusson @ 2021-01-02 16:41 UTC (permalink / raw) To: Daniel Shahaf; +Cc: Felipe Contreras, zsh-workers On 1/2/21, Daniel Shahaf <d.s@daniel.shahaf.name> wrote: > Felipe Contreras wrote on Thu, 31 Dec 2020 05:41 +00:00: >> utils.c: In function ‘getkeystring’: >> cc1: warning: function may return address of local variable >> [-Wreturn-local-addr] >> utils.c:6703:16: note: declared here >> 6703 | char *buf, tmp[1]; >> | ^~~ >> >> diff --git a/Src/utils.c b/Src/utils.c >> index 5151b89a8..37ae4c854 100644 >> --- a/Src/utils.c >> +++ b/Src/utils.c >> @@ -6700,7 +6700,8 @@ ucs4toutf8(char *dest, unsigned int wval) >> mod_export char * >> getkeystring(char *s, int *len, int how, int *misc) >> { >> - char *buf, tmp[1]; >> + static char tmp[1]; >> + char *buf; > > The docstring explicitly promises the returned string will be newly- > allocated from the heap, so this change makes the implementation > inconsistent with the docstring. If we ever return the address of tmp, bad things are likely to happen regardless of the static so hopefully that never happens. Returning the address of a local variable basically means it will be junk (current hypothetical behavior), whereas returning a static means the function wouldn't be re-entrant (hypothetical behavior with the patch). I don't think any reading of "newly allocated from the heap" would include a location on a popped stack though, so I don't see how the docstring enters into it at all. -- Mikael Magnusson ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2021-01-02 16:41 ` Mikael Magnusson @ 2021-01-02 18:30 ` Felipe Contreras 2021-01-04 5:14 ` Daniel Shahaf 0 siblings, 1 reply; 21+ messages in thread From: Felipe Contreras @ 2021-01-02 18:30 UTC (permalink / raw) To: Mikael Magnusson; +Cc: Daniel Shahaf, Zsh hackers list On Sat, Jan 2, 2021 at 10:41 AM Mikael Magnusson <mikachu@gmail.com> wrote: > If we ever return the address of tmp, bad things are likely to happen > regardless of the static so hopefully that never happens. Returning > the address of a local variable basically means it will be junk > (current hypothetical behavior), whereas returning a static means the > function wouldn't be re-entrant (hypothetical behavior with the > patch). Correct, but one is more proper than the other, and it gets rid of the warning. The best fix is to allocate one byte, especially if it's going to be freed later on. -- Felipe Contreras ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2021-01-02 18:30 ` Felipe Contreras @ 2021-01-04 5:14 ` Daniel Shahaf 2021-03-27 19:28 ` Lawrence Velázquez 0 siblings, 1 reply; 21+ messages in thread From: Daniel Shahaf @ 2021-01-04 5:14 UTC (permalink / raw) To: Felipe Contreras; +Cc: Mikael Magnusson, Zsh hackers list Felipe Contreras wrote on Sat, 02 Jan 2021 12:30 -0600: > The best fix is to allocate one byte, especially if it's going to be > freed later on. Yes, please revise the patch to allocate byte(s) from the heap as needed. (See comments at the top of mem.c, and, for instance, dupstring() v. ztrdup().) ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2021-01-04 5:14 ` Daniel Shahaf @ 2021-03-27 19:28 ` Lawrence Velázquez 2021-04-04 6:38 ` Jun. T 0 siblings, 1 reply; 21+ messages in thread From: Lawrence Velázquez @ 2021-03-27 19:28 UTC (permalink / raw) To: Felipe Contreras; +Cc: zsh-workers Hi, On Mon, Jan 4, 2021, at 12:14 AM, Daniel Shahaf wrote: > Felipe Contreras wrote on Sat, 02 Jan 2021 12:30 -0600: > > The best fix is to allocate one byte, especially if it's going to be > > freed later on. > > Yes, please revise the patch to allocate byte(s) from the heap as > needed. (See comments at the top of mem.c, and, for instance, > dupstring() v. ztrdup().) Any plans to send a revised patch? vq ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 1/3] src: fix build warnings 2021-03-27 19:28 ` Lawrence Velázquez @ 2021-04-04 6:38 ` Jun. T 0 siblings, 0 replies; 21+ messages in thread From: Jun. T @ 2021-04-04 6:38 UTC (permalink / raw) To: zsh-workers I've pushed the patch for pattern.c. > 2021/03/28 4:28, Lawrence Velázquez <vq@larryv.me> wrote: > > On Mon, Jan 4, 2021, at 12:14 AM, Daniel Shahaf wrote: >> Felipe Contreras wrote on Sat, 02 Jan 2021 12:30 -0600: >>> The best fix is to allocate one byte, especially if it's going to be >>> freed later on. >> >> Yes, please revise the patch to allocate byte(s) from the heap as >> needed. (See comments at the top of mem.c, and, for instance, >> dupstring() v. ztrdup().) > > Any plans to send a revised patch? utils.c is more complicated. getkeystring() returns a pointer to a string allocated from heap if GETKEY_SINGLE_CHAR is not set. But if it is set, it tries to find a next character (possibly multibyte) in the given string, and returns the pointer to the byte following the found character in the string. There is no problem (aside from the compiler warning) if it finds the next character. But getkeystring() does return the pointer to tmp[] if it can't find a next character. Currently, GETKEY_SINGLE_CHAR is used only in one place in the zsh source code; line 850 in math.c, in function zzlex(): ptr = getkeystring(ptr, NULL, GETKEYS_MATH, &v); GETKEYS_MATH is defined as (GETKEY_OCTAL_ESC|GETKEY_EMACS|GETKEY_CTRL|GETKEY_SINGLE_CHAR) The code is used for finding a character after ## in arithmetic evaluation. For example, % echo $((##\M)) 0 in this case 'ptr' does points to tmp[], and continues to be used for further parsing. Although it seems we do not get coredump, I think this needs be fixed. In the patch below, I modified getkeystring() to return NULL if it can't find the next character, and math.h to check the return value. diff --git a/Src/math.c b/Src/math.c index b57ba42d4..1d0d86639 100644 --- a/Src/math.c +++ b/Src/math.c @@ -840,13 +840,18 @@ zzlex(void) if (*ptr == '#') { if (*++ptr == '\\' || *ptr == '#') { int v; + char *optr = ptr; ptr++; if (!*ptr) { zerr("bad math expression: character missing after ##"); return EOI; } - ptr = getkeystring(ptr, NULL, GETKEYS_MATH, &v); + if(!(ptr = getkeystring(ptr, NULL, GETKEYS_MATH, &v))) { + zerr("bad math expression: bad character after ##"); + ptr = optr; + return EOI; + } yyval.u.l = v; return NUM; } diff --git a/Src/utils.c b/Src/utils.c index 1ac064a4e..5a9222919 100644 --- a/Src/utils.c +++ b/Src/utils.c @@ -6697,13 +6697,21 @@ ucs4toutf8(char *dest, unsigned int wval) * * The return value is unmetafied unless GETKEY_DOLLAR_QUOTE is * in use. + * + * If GETKEY_SINGLE_CHAR is set in how, a next character in the given + * string is parsed, and the character code for it is returned in misc. + * The return value of the function is a pointer to the byte in the + * given string from where the next parsing should start. If the next + * character can't be found then NULL is returned. + * CAUTION: Currently, GETKEY_SINGLE_CHAR can be used only via + * GETKEYS_MATH. Other use of it may cause trouble. */ /**/ mod_export char * getkeystring(char *s, int *len, int how, int *misc) { - char *buf, tmp[1]; + char *buf = NULL, tmp[1]; char *t, *tdest = NULL, *u = NULL, *sstart = s, *tbuf = NULL; char svchar = '\0'; int meta = 0, control = 0, ignoring = 0; @@ -6729,9 +6737,11 @@ getkeystring(char *s, int *len, int how, int *misc) DPUTS((how & (GETKEY_DOLLAR_QUOTE|GETKEY_SINGLE_CHAR)) == (GETKEY_DOLLAR_QUOTE|GETKEY_SINGLE_CHAR), "BUG: incompatible options in getkeystring"); + DPUTS((how & GETKEY_SINGLE_CHAR) && (how != GETKEYS_MATH), + "BUG: unsupported options in getkeystring"); if (how & GETKEY_SINGLE_CHAR) - t = buf = tmp; + t = tmp; else { /* Length including terminating NULL */ int maxlen = 1; @@ -7165,13 +7175,20 @@ getkeystring(char *s, int *len, int how, int *misc) */ DPUTS((how & (GETKEY_DOLLAR_QUOTE|GETKEY_UPDATE_OFFSET)) == GETKEY_DOLLAR_QUOTE, "BUG: unterminated $' substitution"); - *t = '\0'; - if (how & GETKEY_DOLLAR_QUOTE) - *tdest = '\0'; - if (how & GETKEY_SINGLE_CHAR) + + if (how & GETKEY_SINGLE_CHAR) { + /* couldn't find a character */ *misc = 0; - else - *len = ((how & GETKEY_DOLLAR_QUOTE) ? tdest : t) - buf; + return NULL; + } + if (how & GETKEY_DOLLAR_QUOTE) { + *tdest = '\0'; + *len = tdest - buf; + } + else { + *t = '\0'; + *len = t - buf; + } return buf; } ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 2/3] autoconf: remove deprecated functions 2020-12-31 5:41 [PATCH 0/3] Build fixes Felipe Contreras 2020-12-31 5:41 ` [PATCH 1/3] src: fix build warnings Felipe Contreras @ 2020-12-31 5:41 ` Felipe Contreras 2021-03-27 19:37 ` Lawrence Velázquez 2020-12-31 5:41 ` [PATCH 3/3] autoconf: prepare for 2.70 Felipe Contreras 2 siblings, 1 reply; 21+ messages in thread From: Felipe Contreras @ 2020-12-31 5:41 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras STDC_HEADERS and TIME_WITH_SYS_TIME are deprecated. Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> --- Src/Modules/files.c | 6 ------ Src/mem.c | 16 ++++------------ Src/zsh_system.h | 21 ++------------------- configure.ac | 4 +--- 4 files changed, 7 insertions(+), 40 deletions(-) diff --git a/Src/Modules/files.c b/Src/Modules/files.c index 7ebacba6c..a1d6f6bf2 100644 --- a/Src/Modules/files.c +++ b/Src/Modules/files.c @@ -32,12 +32,6 @@ typedef int (*MoveFunc) _((char const *, char const *)); typedef int (*RecurseFunc) _((char *, char *, struct stat const *, void *)); -#ifndef STDC_HEADERS -extern int link _((const char *, const char *)); -extern int symlink _((const char *, const char *)); -extern int rename _((const char *, const char *)); -#endif - struct recursivecmd; #include "files.pro" diff --git a/Src/mem.c b/Src/mem.c index 5951e57ed..25b2bbce7 100644 --- a/Src/mem.c +++ b/Src/mem.c @@ -1072,18 +1072,10 @@ zrealloc(void *ptr, size_t size) # endif #endif -#if defined(_BSD) && !defined(STDC_HEADERS) -# define FREE_RET_T int -# define FREE_ARG_T char * -# define FREE_DO_RET -# define MALLOC_RET_T char * -# define MALLOC_ARG_T size_t -#else -# define FREE_RET_T void -# define FREE_ARG_T void * -# define MALLOC_RET_T void * -# define MALLOC_ARG_T size_t -#endif +#define FREE_RET_T void +#define FREE_ARG_T void * +#define MALLOC_RET_T void * +#define MALLOC_ARG_T size_t /* structure for building free list in blocks holding small blocks */ diff --git a/Src/zsh_system.h b/Src/zsh_system.h index 161b073b4..6f4efce96 100644 --- a/Src/zsh_system.h +++ b/Src/zsh_system.h @@ -235,16 +235,8 @@ char *alloca _((size_t)); # include <errno.h> #endif -#ifdef TIME_WITH_SYS_TIME -# include <sys/time.h> -# include <time.h> -#else -# ifdef HAVE_SYS_TIME_H -# include <sys/time.h> -# else -# include <time.h> -# endif -#endif +#include <sys/time.h> +#include <time.h> /* This is needed by some old SCO unices */ #if !defined(HAVE_STRUCT_TIMEZONE) && !defined(ZSH_OOT_MODULE) @@ -279,16 +271,7 @@ struct timespec { # include <sys/times.h> #endif -#if STDC_HEADERS || HAVE_STRING_H # include <string.h> -/* An ANSI string.h and pre-ANSI memory.h might conflict. */ -# if !STDC_HEADERS && HAVE_MEMORY_H -# include <memory.h> -# endif /* not STDC_HEADERS and HAVE_MEMORY_H */ -#else /* not STDC_HEADERS and not HAVE_STRING_H */ -# include <strings.h> -/* memory.h and strings.h conflict on some systems. */ -#endif /* not STDC_HEADERS and not HAVE_STRING_H */ #ifdef HAVE_LOCALE_H # include <locale.h> diff --git a/configure.ac b/configure.ac index 549cae3d6..c39915528 100644 --- a/configure.ac +++ b/configure.ac @@ -28,7 +28,7 @@ dnl AC_INIT AC_CONFIG_SRCDIR([Src/zsh.h]) AC_PREREQ([2.69]) -AC_CONFIG_HEADER(config.h) +AC_CONFIG_HEADERS([config.h]) dnl What version of zsh are we building ? . ${srcdir}/Config/version.mk @@ -657,8 +657,6 @@ dnl ------------------ dnl CHECK HEADER FILES dnl ------------------ AC_HEADER_DIRENT -AC_HEADER_STDC -AC_HEADER_TIME AC_HEADER_STAT AC_HEADER_SYS_WAIT -- 2.30.0 ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 2/3] autoconf: remove deprecated functions 2020-12-31 5:41 ` [PATCH 2/3] autoconf: remove deprecated functions Felipe Contreras @ 2021-03-27 19:37 ` Lawrence Velázquez 2021-04-03 15:04 ` Lawrence Velázquez 0 siblings, 1 reply; 21+ messages in thread From: Lawrence Velázquez @ 2021-03-27 19:37 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras On Thu, Dec 31, 2020, at 12:41 AM, Felipe Contreras wrote: > STDC_HEADERS and TIME_WITH_SYS_TIME are deprecated. > > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> > --- > Src/Modules/files.c | 6 ------ > Src/mem.c | 16 ++++------------ > Src/zsh_system.h | 21 ++------------------- > configure.ac | 4 +--- > 4 files changed, 7 insertions(+), 40 deletions(-) ping for review vq ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 2/3] autoconf: remove deprecated functions 2021-03-27 19:37 ` Lawrence Velázquez @ 2021-04-03 15:04 ` Lawrence Velázquez 0 siblings, 0 replies; 21+ messages in thread From: Lawrence Velázquez @ 2021-04-03 15:04 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras On Sat, Mar 27, 2021, at 3:37 PM, Lawrence Velázquez wrote: > On Thu, Dec 31, 2020, at 12:41 AM, Felipe Contreras wrote: > > STDC_HEADERS and TIME_WITH_SYS_TIME are deprecated. > > > > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> > > --- > > Src/Modules/files.c | 6 ------ > > Src/mem.c | 16 ++++------------ > > Src/zsh_system.h | 21 ++------------------- > > configure.ac | 4 +--- > > 4 files changed, 7 insertions(+), 40 deletions(-) > > ping for review The Ping for Review Part II vq ^ permalink raw reply [flat|nested] 21+ messages in thread
* [PATCH 3/3] autoconf: prepare for 2.70 2020-12-31 5:41 [PATCH 0/3] Build fixes Felipe Contreras 2020-12-31 5:41 ` [PATCH 1/3] src: fix build warnings Felipe Contreras 2020-12-31 5:41 ` [PATCH 2/3] autoconf: remove deprecated functions Felipe Contreras @ 2020-12-31 5:41 ` Felipe Contreras 2021-03-27 19:38 ` Lawrence Velázquez 2 siblings, 1 reply; 21+ messages in thread From: Felipe Contreras @ 2020-12-31 5:41 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> --- aclocal.m4 | 8 ++--- aczsh.m4 | 104 ++++++++++++++++++++++++++--------------------------- 2 files changed, 56 insertions(+), 56 deletions(-) diff --git a/aclocal.m4 b/aclocal.m4 index e91be3c0d..c26e2d834 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -35,14 +35,14 @@ ac_save_CFLAGS="$CFLAGS" for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" -Xc do CFLAGS="$ac_save_CFLAGS $ac_arg" - AC_TRY_COMPILE( + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ [#ifndef __STDC__ choke me #endif -], [int test (int i, double x); +]], [[int test (int i, double x); struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);};], -[fp_cv_prog_cc_stdc="$ac_arg"; break]) +struct s2 {int (*f) (double a);};]])], +[fp_cv_prog_cc_stdc="$ac_arg"; break],[]) done CFLAGS="$ac_save_CFLAGS" ]) diff --git a/aczsh.m4 b/aczsh.m4 index 40d3b04f2..c04bf9190 100644 --- a/aczsh.m4 +++ b/aczsh.m4 @@ -39,7 +39,7 @@ dnl before finding the right type. dnl AC_DEFUN(zsh_64_BIT_TYPE, -[AC_TRY_RUN([ +[AC_RUN_IFELSE([AC_LANG_SOURCE([[ #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif @@ -50,7 +50,7 @@ main() int bar = (int) foo; return sizeof($1) != 8; } -], $2="$1", $2=no, +]])],[$2="$1"],[$2=no], [if test x$3 != x ; then $2="$1" else @@ -113,11 +113,11 @@ void *zsh_getaddr1() }; ' > conftest1.c sed 's/zsh_getaddr1/zsh_getaddr2/' < conftest1.c > conftest2.c -if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AC_FD_CC) && -AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AC_FD_CC); then - AC_TRY_RUN([ +if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AS_MESSAGE_LOG_FD); then + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -170,7 +170,7 @@ main() if(sym1 != sym2) exit(1); exit(0); } -], [zsh_cv_shared_$1=yes], +]])],[zsh_cv_shared_$1=yes], [zsh_cv_shared_$1=no], [zsh_cv_shared_$1=no] ) @@ -195,11 +195,11 @@ else fi echo 'int fred () { return 42; }' > conftest1.c echo 'int fred () { return 69; }' > conftest2.c -if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AC_FD_CC) && -AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AC_FD_CC); then - AC_TRY_RUN([ +if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AS_MESSAGE_LOG_FD); then + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -242,7 +242,7 @@ main() if(!fred1 || !fred2) exit(1); exit((*fred1)() != 42 || (*fred2)() != 69); } -], [zsh_cv_sys_dynamic_clash_ok=yes], +]])],[zsh_cv_sys_dynamic_clash_ok=yes], [zsh_cv_sys_dynamic_clash_ok=no], [zsh_cv_sys_dynamic_clash_ok=no] ) @@ -271,11 +271,11 @@ else fi echo 'int fred () { return 42; }' > conftest1.c echo 'extern int fred(); int barney () { return fred() + 27; }' > conftest2.c -if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AC_FD_CC) && -AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AC_FD_CC); then - AC_TRY_RUN([ +if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest2.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest2.$DL_EXT $LDFLAGS $DLLDFLAGS conftest2.o $LIBS 1>&AS_MESSAGE_LOG_FD); then + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -316,7 +316,7 @@ main() if(!barneysym) exit(1); exit((*barneysym)() != 69); } -], [zsh_cv_sys_dynamic_rtld_global=yes], +]])],[zsh_cv_sys_dynamic_rtld_global=yes], [zsh_cv_sys_dynamic_rtld_global=no], [zsh_cv_sys_dynamic_rtld_global=no] ) @@ -341,11 +341,11 @@ else us= fi echo 'extern int fred(); int barney () { return fred() + 27; }' > conftest1.c -if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AC_FD_CC); then +if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD); then save_ldflags=$LDFLAGS LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS" - AC_TRY_RUN([ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -386,7 +386,7 @@ main() } int fred () { return 42; } -], [zsh_cv_sys_dynamic_execsyms=yes], +]])],[zsh_cv_sys_dynamic_execsyms=yes], [zsh_cv_sys_dynamic_execsyms=no], [zsh_cv_sys_dynamic_execsyms=no] ) @@ -415,11 +415,11 @@ elif us= fi echo 'extern int fred(); int barney() { return fred() + 27; }' > conftest1.c - AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && - AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AC_FD_CC); then + AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && + AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD); then save_ldflags=$LDFLAGS LDFLAGS="$LDFLAGS $EXTRA_LDFLAGS -s" - AC_TRY_RUN([ + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -460,7 +460,7 @@ main() } int fred () { return 42; } -], [zsh_cv_sys_dynamic_strip_exe=yes], +]])],[zsh_cv_sys_dynamic_strip_exe=yes], [zsh_cv_sys_dynamic_strip_exe=no], [zsh_cv_sys_dynamic_strip_exe=no] ) @@ -485,9 +485,9 @@ else us= fi echo 'int fred () { return 42; }' > conftest1.c -if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AC_FD_CC) && -AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS -s conftest1.o $LIBS 1>&AC_FD_CC); then - AC_TRY_RUN([ +if AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest1.c 1>&AS_MESSAGE_LOG_FD) && +AC_TRY_COMMAND($DLLD -o conftest1.$DL_EXT $LDFLAGS $DLLDFLAGS -s conftest1.o $LIBS 1>&AS_MESSAGE_LOG_FD); then + AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <stdlib.h> #ifdef HPUX10DYNAMIC #include <dl.h> @@ -526,7 +526,7 @@ main() if(!fredsym) exit(1); exit((*fredsym)() != 42); } -], [zsh_cv_sys_dynamic_strip_lib=yes], +]])],[zsh_cv_sys_dynamic_strip_lib=yes], [zsh_cv_sys_dynamic_strip_lib=no], [zsh_cv_sys_dynamic_strip_lib=no] ) @@ -564,7 +564,7 @@ dnl AC_DEFUN(zsh_TYPE_EXISTS, [AC_CACHE_CHECK([for $2], [zsh_cv_type_exists_[]translit($2, [ ], [_])], -[AC_TRY_COMPILE([$1], [$2 testvar;], +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$1]], [[$2 testvar;]])], [zsh_cv_type_exists_[]translit($2, [ ], [_])=yes], [zsh_cv_type_exists_[]translit($2, [ ], [_])=no]) ]) @@ -583,7 +583,7 @@ dnl AC_DEFUN(zsh_STRUCT_MEMBER, [AC_CACHE_CHECK([for $3 in $2], [zsh_cv_struct_member_[]translit($2, [ ], [_])_$3], -[AC_TRY_COMPILE([$1], [$2 testvar; testvar.$3;], +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[$1]], [[$2 testvar; testvar.$3;]])], [zsh_cv_struct_member_[]translit($2, [ ], [_])_$3=yes], [zsh_cv_struct_member_[]translit($2, [ ], [_])_$3=no]) ]) @@ -621,25 +621,25 @@ AC_SUBST(tzsh)dnl AC_DEFUN(zsh_COMPILE_FLAGS, [AC_ARG_ENABLE(cppflags, - AC_HELP_STRING([--enable-cppflags=...], [specify C preprocessor flags]), + AS_HELP_STRING([--enable-cppflags=...], [specify C preprocessor flags]), if test "$enableval" = "yes" then CPPFLAGS="$1" else CPPFLAGS="$enable_cppflags" fi) AC_ARG_ENABLE(cflags, - AC_HELP_STRING([--enable-cflags=...], [specify C compiler flags]), + AS_HELP_STRING([--enable-cflags=...], [specify C compiler flags]), if test "$enableval" = "yes" then CFLAGS="$2" else CFLAGS="$enable_cflags" fi) AC_ARG_ENABLE(ldflags, - AC_HELP_STRING([--enable-ldflags=...], [specify linker flags]), + AS_HELP_STRING([--enable-ldflags=...], [specify linker flags]), if test "$enableval" = "yes" then LDFLAGS="$3" else LDFLAGS="$enable_ldflags" fi) AC_ARG_ENABLE(libs, - AC_HELP_STRING([--enable-libs=...], [specify link libraries]), + AS_HELP_STRING([--enable-libs=...], [specify link libraries]), if test "$enableval" = "yes" then LIBS="$4" else LIBS="$enable_libs" @@ -658,10 +658,10 @@ AC_DEFUN([zsh_CHECK_SOCKLEN_T],[ [zsh_cv_type_socklen_t], [zsh_cv_type_socklen_t= for zsh_type in socklen_t int "unsigned long" size_t ; do - AC_TRY_COMPILE( - [#include <sys/types.h> - #include <sys/socket.h>], - [extern int accept (int, struct sockaddr *, $zsh_type *);], + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( + [[#include <sys/types.h> + #include <sys/socket.h>]], + [[extern int accept (int, struct sockaddr *, $zsh_type *);]])], [zsh_cv_type_socklen_t="$zsh_type"; break], [] ) @@ -680,15 +680,15 @@ AC_DEFUN(zsh_LIMIT_PRESENT, [Define to 1 if ]$1[ is present (whether or not as a macro).]) AC_CACHE_CHECK([for limit $1], zsh_cv_have_$1, -[AC_TRY_COMPILE([ +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include <sys/types.h> #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #endif -#include <sys/resource.h>], -[$1], - zsh_cv_have_$1=yes, - zsh_cv_have_$1=no)]) +#include <sys/resource.h>]], +[[$1]])], + [zsh_cv_have_$1=yes], + [zsh_cv_have_$1=no])]) if test $zsh_cv_have_$1 = yes; then AC_DEFINE(HAVE_$1) @@ -701,15 +701,15 @@ AC_DEFUN(zsh_LIMITS_EQUAL, [Define to 1 if RLIMIT_]$1[ and RLIMIT_]$3[ both exist and are equal.]) AC_CACHE_CHECK([if RLIMIT_]$1[ and RLIMIT_]$3[ are the same], zsh_cv_rlimit_$2_is_$4, -[AC_TRY_COMPILE([ +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ #include <sys/types.h> #ifdef HAVE_SYS_TIME_H #include <sys/time.h> #endif -#include <sys/resource.h>], -[static char x[(RLIMIT_$1 == RLIMIT_$3)? 1 : -1]], - zsh_cv_rlimit_$2_is_$4=yes, - zsh_cv_rlimit_$2_is_$4=no)]) +#include <sys/resource.h>]], +[[static char x[(RLIMIT_$1 == RLIMIT_$3)? 1 : -1]]])], + [zsh_cv_rlimit_$2_is_$4=yes], + [zsh_cv_rlimit_$2_is_$4=no])]) if test x$zsh_cv_rlimit_$2_is_$4 = xyes; then AC_DEFINE(RLIMIT_$1_IS_$3) fi]) -- 2.30.0 ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2020-12-31 5:41 ` [PATCH 3/3] autoconf: prepare for 2.70 Felipe Contreras @ 2021-03-27 19:38 ` Lawrence Velázquez 2021-04-03 15:44 ` Lawrence Velázquez 0 siblings, 1 reply; 21+ messages in thread From: Lawrence Velázquez @ 2021-03-27 19:38 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras On Thu, Dec 31, 2020, at 12:41 AM, Felipe Contreras wrote: > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> > --- > aclocal.m4 | 8 ++--- > aczsh.m4 | 104 ++++++++++++++++++++++++++--------------------------- > 2 files changed, 56 insertions(+), 56 deletions(-) ping for review vq ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-03-27 19:38 ` Lawrence Velázquez @ 2021-04-03 15:44 ` Lawrence Velázquez 2021-04-08 22:44 ` Oliver Kiddle 0 siblings, 1 reply; 21+ messages in thread From: Lawrence Velázquez @ 2021-04-03 15:44 UTC (permalink / raw) To: zsh-workers On Sat, Mar 27, 2021, at 3:38 PM, Lawrence Velázquez wrote: > On Thu, Dec 31, 2020, at 12:41 AM, Felipe Contreras wrote: > > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> > > --- > > aclocal.m4 | 8 ++--- > > aczsh.m4 | 104 ++++++++++++++++++++++++++--------------------------- > > 2 files changed, 56 insertions(+), 56 deletions(-) > > ping for review ppiinngg ffoorr rreevviieeww vq ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-03 15:44 ` Lawrence Velázquez @ 2021-04-08 22:44 ` Oliver Kiddle 2021-04-09 4:18 ` Jun T 0 siblings, 1 reply; 21+ messages in thread From: Oliver Kiddle @ 2021-04-08 22:44 UTC (permalink / raw) To: zsh-workers; +Cc: Felipe Contreras On 3 Apr, Lawrence Velázquez wrote: > > On Thu, Dec 31, 2020, at 12:41 AM, Felipe Contreras wrote: > > > Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> > > > --- > > > aclocal.m4 | 8 ++--- > > > aczsh.m4 | 104 ++++++++++++++++++++++++++--------------------------- > > > 2 files changed, 56 insertions(+), 56 deletions(-) > > ping for review > ppiinngg ffoorr rreevviieeww Both this and the preceding part 1 patch look completely fine to me. I've read through this and checked against a couple of different systems and don't see an issue but I can't claim to be following what is new with autoconf 2.70. Unless anyone sees a reason to object, I'll apply these. Thanks Felipe. Oliver ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-08 22:44 ` Oliver Kiddle @ 2021-04-09 4:18 ` Jun T 2021-04-09 20:08 ` Oliver Kiddle 0 siblings, 1 reply; 21+ messages in thread From: Jun T @ 2021-04-09 4:18 UTC (permalink / raw) To: zsh-workers > 2021/04/09 7:44, Oliver Kiddle <opk@zsh.org> wrote: > > Both this and the preceding part 1 patch look completely fine to me. > I've read through this and checked against a couple of different systems > and don't see an issue but I can't claim to be following what is new > with autoconf 2.70. Unless anyone sees a reason to object, I'll apply > these. I also tested on a few systems and fund no problems. I think mem.c can be further simplified as follows (discard unnecessary macros): PS Are there any systems that still require --enable-zsh-mem? diff --git a/Src/mem.c b/Src/mem.c index 5951e57ed..fb4be47bf 100644 --- a/Src/mem.c +++ b/Src/mem.c @@ -1072,19 +1072,6 @@ zrealloc(void *ptr, size_t size) # endif #endif -#if defined(_BSD) && !defined(STDC_HEADERS) -# define FREE_RET_T int -# define FREE_ARG_T char * -# define FREE_DO_RET -# define MALLOC_RET_T char * -# define MALLOC_ARG_T size_t -#else -# define FREE_RET_T void -# define FREE_ARG_T void * -# define MALLOC_RET_T void * -# define MALLOC_ARG_T size_t -#endif - /* structure for building free list in blocks holding small blocks */ struct m_shdr { @@ -1198,8 +1185,8 @@ static struct m_hdr *m_l; #endif /* ZSH_MEM_DEBUG */ -MALLOC_RET_T -malloc(MALLOC_ARG_T size) +void * +malloc(size_t size) { struct m_hdr *m, *mp, *mt; long n, s, os = 0; @@ -1226,7 +1213,7 @@ malloc(MALLOC_ARG_T size) #if 1 size = 1; #else - return (MALLOC_RET_T) m_high; + return (void *) m_high; #endif queue_signals(); /* just queue signals rather than handling them */ @@ -1284,7 +1271,7 @@ malloc(MALLOC_ARG_T size) #endif unqueue_signals(); - return (MALLOC_RET_T) sh; + return (void *) sh; } /* we still want a small block but there were no block with a free small block of the requested size; so we use the real allocation @@ -1426,14 +1413,14 @@ malloc(MALLOC_ARG_T size) #endif unqueue_signals(); - return (MALLOC_RET_T) (((char *)m) + sizeof(struct m_hdr)); + return (void *) (((char *)m) + sizeof(struct m_hdr)); } #ifdef ZSH_MEM_DEBUG m_m[m->len < (1024 * M_ISIZE) ? (m->len / M_ISIZE) : 1024]++; #endif unqueue_signals(); - return (MALLOC_RET_T) & m->next; + return (void *) & m->next; } /* this is an internal free(); the second argument may, but need not hold @@ -1640,14 +1627,10 @@ zfree(void *p, int sz) unqueue_signals(); } -FREE_RET_T -free(FREE_ARG_T p) +void +free(void *p) { zfree(p, 0); /* 0 means: size is unknown */ - -#ifdef FREE_DO_RET - return 0; -#endif } /* this one is for strings (and only strings, real strings, real C strings, @@ -1661,8 +1644,8 @@ zsfree(char *p) zfree(p, strlen(p) + 1); } -MALLOC_RET_T -realloc(MALLOC_RET_T p, MALLOC_ARG_T size) +void * +realloc(void *p, size_t size) { struct m_hdr *m = (struct m_hdr *)(((char *)p) - M_ISIZE), *mt; char *r; @@ -1673,12 +1656,12 @@ realloc(MALLOC_RET_T p, MALLOC_ARG_T size) queue_signals(); r = malloc(size); unqueue_signals(); - return (MALLOC_RET_T) r; + return (void *) r; } /* and some systems even do this... */ if (!p || !size) - return (MALLOC_RET_T) p; + return p; queue_signals(); /* just queue signals caught rather than handling them */ @@ -1707,17 +1690,17 @@ realloc(MALLOC_RET_T p, MALLOC_ARG_T size) free(p); unqueue_signals(); - return (MALLOC_RET_T) r; + return (void *) r; } -MALLOC_RET_T -calloc(MALLOC_ARG_T n, MALLOC_ARG_T size) +void * +calloc(size_t n, size_t size) { long l; char *r; if (!(l = n * size)) - return (MALLOC_RET_T) m_high; + return (void *) m_high; /* * use realloc() (with a NULL `p` argument it behaves exactly the same @@ -1729,7 +1712,7 @@ calloc(MALLOC_ARG_T n, MALLOC_ARG_T size) memset(r, 0, l); - return (MALLOC_RET_T) r; + return (void *) r; } #ifdef ZSH_MEM_DEBUG ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-09 4:18 ` Jun T @ 2021-04-09 20:08 ` Oliver Kiddle 2021-04-09 20:28 ` Peter Stephenson 0 siblings, 1 reply; 21+ messages in thread From: Oliver Kiddle @ 2021-04-09 20:08 UTC (permalink / raw) To: zsh-workers Jun T wrote: > I also tested on a few systems and fund no problems. Good. I've now applied them. > I think mem.c can be further simplified as follows (discard unnecessary macros): Yes, that does simplify it somewhat. No objections from me. But I'll leave you to commit it. > Are there any systems that still require --enable-zsh-mem? I don't think I ever have needed it especially. I don't know if anyone perhaps finds it useful for debug capabilities though some of the common malloc implementations probably have better functionality for that anyway. Cutting away some of this old stuff from the zsh code base may make it easier to maintain. So again, no objections from me but in this case there may be others with an interest in keeping it. Oliver ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-09 20:08 ` Oliver Kiddle @ 2021-04-09 20:28 ` Peter Stephenson 2021-04-09 23:04 ` Bart Schaefer 0 siblings, 1 reply; 21+ messages in thread From: Peter Stephenson @ 2021-04-09 20:28 UTC (permalink / raw) To: zsh-workers On Fri, 2021-04-09 at 22:08 +0200, Oliver Kiddle wrote: > > Are there any systems that still require --enable-zsh-mem? > > I don't think I ever have needed it especially. I don't know if anyone > perhaps finds it useful for debug capabilities though some of the common > malloc implementations probably have better functionality for that > anyway. Cutting away some of this old stuff from the zsh code base may > make it easier to maintain. So again, no objections from me but in this > case there may be others with an interest in keeping it. I wonder if we might even struggle to find anyone who still uses it. It was well-maintained a long time ago, but has had virtually no attention since. Unless you've been around these parts a couple of decades, you might not be more than vaguely aware of it. pws ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-09 20:28 ` Peter Stephenson @ 2021-04-09 23:04 ` Bart Schaefer 2021-04-09 23:19 ` Mikael Magnusson 2021-04-10 0:37 ` Jun. T 0 siblings, 2 replies; 21+ messages in thread From: Bart Schaefer @ 2021-04-09 23:04 UTC (permalink / raw) To: Peter Stephenson; +Cc: Zsh hackers list RE --enable-zsh-mem ... I haven't used it in a long time, and if I did it would be for debugging. RE autoconf 2.70 -- is this patch set going to mean I can't build zsh from git checkout on my ubuntu box with autoconf 2.69 ? That would make me sad. ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-09 23:04 ` Bart Schaefer @ 2021-04-09 23:19 ` Mikael Magnusson 2021-04-10 0:37 ` Jun. T 1 sibling, 0 replies; 21+ messages in thread From: Mikael Magnusson @ 2021-04-09 23:19 UTC (permalink / raw) To: Bart Schaefer; +Cc: Peter Stephenson, Zsh hackers list On 4/10/21, Bart Schaefer <schaefer@brasslantern.com> wrote: > RE --enable-zsh-mem ... I haven't used it in a long time, and if I did > it would be for debugging. I remember a few bugs in the past that were easier/only possible to debug with zsh-mem/debug enabled, so if it isn't broken I don't see a reason to remove it for now. -- Mikael Magnusson ^ permalink raw reply [flat|nested] 21+ messages in thread
* Re: [PATCH 3/3] autoconf: prepare for 2.70 2021-04-09 23:04 ` Bart Schaefer 2021-04-09 23:19 ` Mikael Magnusson @ 2021-04-10 0:37 ` Jun. T 1 sibling, 0 replies; 21+ messages in thread From: Jun. T @ 2021-04-10 0:37 UTC (permalink / raw) To: zsh-workers > 2021/04/10 8:04, Bart Schaefer <schaefer@brasslantern.com> wrote: > > RE autoconf 2.70 -- is this patch set going to mean I can't build zsh > from git checkout on my ubuntu box with autoconf 2.69 ? With the patch zsh can be built file either with autconf 2.69 or 2.71 (I didn't try 2.7). ^ permalink raw reply [flat|nested] 21+ messages in thread
end of thread, other threads:[~2021-04-10 0:38 UTC | newest] Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-12-31 5:41 [PATCH 0/3] Build fixes Felipe Contreras 2020-12-31 5:41 ` [PATCH 1/3] src: fix build warnings Felipe Contreras 2021-01-02 11:22 ` Daniel Shahaf 2021-01-02 16:41 ` Mikael Magnusson 2021-01-02 18:30 ` Felipe Contreras 2021-01-04 5:14 ` Daniel Shahaf 2021-03-27 19:28 ` Lawrence Velázquez 2021-04-04 6:38 ` Jun. T 2020-12-31 5:41 ` [PATCH 2/3] autoconf: remove deprecated functions Felipe Contreras 2021-03-27 19:37 ` Lawrence Velázquez 2021-04-03 15:04 ` Lawrence Velázquez 2020-12-31 5:41 ` [PATCH 3/3] autoconf: prepare for 2.70 Felipe Contreras 2021-03-27 19:38 ` Lawrence Velázquez 2021-04-03 15:44 ` Lawrence Velázquez 2021-04-08 22:44 ` Oliver Kiddle 2021-04-09 4:18 ` Jun T 2021-04-09 20:08 ` Oliver Kiddle 2021-04-09 20:28 ` Peter Stephenson 2021-04-09 23:04 ` Bart Schaefer 2021-04-09 23:19 ` Mikael Magnusson 2021-04-10 0:37 ` Jun. T
Code repositories for project(s) associated with this public inbox https://git.vuxu.org/mirror/zsh/ This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).