zsh-5.9-implicit.patch (16591B)
1 https://bugs.gentoo.org/869539 2 https://www.zsh.org/mla/workers/2022/msg00964.html 3 --- a/configure.ac 4 +++ b/configure.ac 5 @@ -583,11 +583,11 @@ if test x$zsh_cv_c_have_union_init = xye 6 fi 7 8 dnl Checking if compiler correctly cast signed to unsigned. 9 AC_CACHE_CHECK(if signed to unsigned casting is broken, 10 zsh_cv_c_broken_signed_to_unsigned_casting, 11 -[AC_RUN_IFELSE([AC_LANG_SOURCE([[main(){return((int)(unsigned char)((char) -1) == 255);}]])],[zsh_cv_c_broken_signed_to_unsigned_casting=yes],[zsh_cv_c_broken_signed_to_unsigned_casting=no],[zsh_cv_c_broken_signed_to_unsigned_casting=no])]) 12 +[AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return((int)(unsigned char)((char) -1) == 255);}]])],[zsh_cv_c_broken_signed_to_unsigned_casting=yes],[zsh_cv_c_broken_signed_to_unsigned_casting=no],[zsh_cv_c_broken_signed_to_unsigned_casting=no])]) 13 AH_TEMPLATE([BROKEN_SIGNED_TO_UNSIGNED_CASTING], 14 [Define to 1 if compiler incorrectly cast signed to unsigned.]) 15 if test x$zsh_cv_c_broken_signed_to_unsigned_casting = xyes; then 16 AC_DEFINE(BROKEN_SIGNED_TO_UNSIGNED_CASTING) 17 fi 18 @@ -1044,21 +1044,21 @@ if test x$zsh_cv_long_is_64_bit = xyes; 19 else 20 AC_CACHE_CHECK(if off_t is 64 bit, zsh_cv_off_t_is_64_bit, 21 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 22 #include <sys/types.h> 23 24 -main() { return sizeof(off_t) < 8; } 25 +int main() { return sizeof(off_t) < 8; } 26 ]])],[zsh_cv_off_t_is_64_bit=yes],[zsh_cv_off_t_is_64_bit=no],[zsh_cv_off_t_is_64_bit=no])]) 27 if test x$zsh_cv_off_t_is_64_bit = xyes; then 28 AC_DEFINE(OFF_T_IS_64_BIT) 29 fi 30 31 AC_CACHE_CHECK(if ino_t is 64 bit, zsh_cv_ino_t_is_64_bit, 32 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 33 #include <sys/types.h> 34 35 -main() { return sizeof(ino_t) < 8; } 36 +int main() { return sizeof(ino_t) < 8; } 37 ]])],[zsh_cv_ino_t_is_64_bit=yes],[zsh_cv_ino_t_is_64_bit=no],[zsh_cv_ino_t_is_64_bit=no])]) 38 if test x$zsh_cv_ino_t_is_64_bit = xyes; then 39 AC_DEFINE(INO_T_IS_64_BIT) 40 fi 41 42 @@ -1394,22 +1394,22 @@ zsh_cv_func_tgetent_accepts_null, 43 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 44 #include <fcntl.h> 45 #include <stdlib.h> 46 int tgetent(char *, char *); 47 char *tgetstr(char *, char **); 48 -main() 49 +int main() 50 { 51 char buf[4096]; 52 int r1 = tgetent(buf, "vt100"); 53 int r2 = tgetent((char*)0,"vt100"); 54 if (r1 >= 0 && r1 == r2) { 55 char tbuf[1024], *u; 56 u = tbuf; 57 tgetstr("cl", &u); 58 creat("conftest.tgetent", 0640); 59 } 60 - exit((r1 != r2) || r2 == -1); 61 + return((r1 != r2) || r2 == -1); 62 } 63 ]])],[if test -f conftest.tgetent; then 64 zsh_cv_func_tgetent_accepts_null=yes 65 else 66 zsh_cv_func_tgetent_accepts_null=no 67 @@ -1422,22 +1422,22 @@ zsh_cv_func_tgetent_zero_success, 68 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 69 #include <fcntl.h> 70 #include <stdlib.h> 71 int tgetent(char *, char*); 72 char *tgetstr(char *, char **); 73 -main() 74 +int main() 75 { 76 char buf[4096]; 77 int r1 = tgetent(buf, "!@#$%^&*"); 78 int r2 = tgetent(buf, "vt100"); 79 if (r1 < 0 && r2 == 0) { 80 char tbuf[1024], *u; 81 u = tbuf; 82 tgetstr("cl", &u); 83 creat("conftest.tgetent0", 0640); 84 } 85 - exit(r1 == r2); 86 + return(r1 == r2); 87 } 88 ]])],[if test -f conftest.tgetent0; then 89 zsh_cv_func_tgetent_zero_success=yes 90 else 91 zsh_cv_func_tgetent_zero_success=no 92 @@ -1860,27 +1860,27 @@ zsh_cv_rlim_t_is_longer, 93 #ifdef HAVE_SYS_TIME_H 94 #include <sys/time.h> 95 #endif 96 #include <sys/resource.h> 97 #include <stdlib.h> 98 -main(){struct rlimit r;exit(sizeof(r.rlim_cur) <= sizeof(long));}]])],[zsh_cv_rlim_t_is_longer=yes],[zsh_cv_rlim_t_is_longer=no],[zsh_cv_rlim_t_is_longer=yes])]) 99 +int main(){struct rlimit r;return(sizeof(r.rlim_cur) <= sizeof(long));}]])],[zsh_cv_rlim_t_is_longer=yes],[zsh_cv_rlim_t_is_longer=no],[zsh_cv_rlim_t_is_longer=yes])]) 100 if test x$zsh_cv_rlim_t_is_longer = xyes; then 101 AC_CACHE_CHECK(if rlim_t is a quad, 102 zsh_cv_rlim_t_is_quad_t, 103 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 104 #ifdef HAVE_SYS_TIME_H 105 #include <sys/time.h> 106 #endif 107 #include <stdio.h> 108 #include <sys/resource.h> 109 #include <stdlib.h> 110 -main() { 111 +int main() { 112 struct rlimit r; 113 char buf[20]; 114 r.rlim_cur = 0; 115 sprintf(buf, "%qd", r.rlim_cur); 116 - exit(strcmp(buf, "0")); 117 + return(strcmp(buf, "0")); 118 }]])],[zsh_cv_rlim_t_is_quad_t=yes],[zsh_cv_rlim_t_is_quad_t=no],[zsh_cv_rlim_t_is_quad_t=no])]) 119 if test x$zsh_cv_rlim_t_is_quad_t = xyes; then 120 AC_DEFINE(RLIM_T_IS_QUAD_T) 121 DEFAULT_RLIM_T=quad_t 122 else 123 @@ -1894,11 +1894,11 @@ else 124 #ifdef HAVE_SYS_TIME_H 125 #include <sys/time.h> 126 #endif 127 #include <sys/resource.h> 128 #include <stdlib.h> 129 - main(){struct rlimit r;r.rlim_cur=-1;exit(r.rlim_cur<0);}]])],[zsh_cv_type_rlim_t_is_unsigned=yes],[zsh_cv_type_rlim_t_is_unsigned=no],[zsh_cv_type_rlim_t_is_unsigned=no])]) 130 + int main(){struct rlimit r;r.rlim_cur=-1;return(r.rlim_cur<0);}]])],[zsh_cv_type_rlim_t_is_unsigned=yes],[zsh_cv_type_rlim_t_is_unsigned=no],[zsh_cv_type_rlim_t_is_unsigned=no])]) 131 if test x$zsh_cv_type_rlim_t_is_unsigned = xyes; then 132 AC_DEFINE(RLIM_T_IS_UNSIGNED) 133 DEFAULT_RLIM_T="unsigned $DEFAULT_RLIM_T" 134 fi 135 fi 136 @@ -2175,11 +2175,11 @@ zsh_cv_sys_fifo, 137 #include <fcntl.h> 138 #include <signal.h> 139 #include <unistd.h> 140 #include <stdlib.h> 141 #include <sys/stat.h> 142 -main() 143 +int main() 144 { 145 char c; 146 int fd; 147 int pid, ret; 148 unlink("/tmp/fifo$$"); 149 @@ -2189,19 +2189,19 @@ main() 150 if(mknod("/tmp/fifo$$", 0010600, 0) < 0) 151 #endif 152 exit(1); 153 pid = fork(); 154 if(pid < 0) 155 - exit(1); 156 + return(1); 157 if(pid) { 158 fd = open("/tmp/fifo$$", O_RDONLY); 159 - exit(fd < 0 || read(fd, &c, 1) != 1 || c != 'x'); 160 + return(fd < 0 || read(fd, &c, 1) != 1 || c != 'x'); 161 } 162 fd = open("/tmp/fifo$$", O_WRONLY); 163 ret = (fd < 0 || write(fd, "x", 1) < 1); 164 unlink("/tmp/fifo$$"); 165 - exit(ret); 166 + return(ret); 167 } 168 ]])],[zsh_cv_sys_fifo=yes],[zsh_cv_sys_fifo=no],[zsh_cv_sys_fifo=yes]) 169 ]) 170 AH_TEMPLATE([HAVE_FIFOS], 171 [Define to 1 if system has working FIFOs.]) 172 @@ -2276,24 +2276,24 @@ AC_CACHE_CHECK(if link() works, 173 zsh_cv_sys_link, 174 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 175 #include <unistd.h> 176 #include <fcntl.h> 177 #include <stdlib.h> 178 -main() 179 +int main() 180 { 181 int ret; 182 char *tmpfile, *newfile; 183 tmpfile="/tmp/zsh.linktest$$"; 184 newfile="/tmp/zsh.linktest2$$"; 185 unlink(tmpfile); 186 unlink(newfile); 187 if(creat(tmpfile, 0644) < 0) 188 - exit(1); 189 + return(1); 190 ret = link(tmpfile, newfile); 191 unlink(tmpfile); 192 unlink(newfile); 193 - exit(ret<0); 194 + return(ret<0); 195 } 196 ]])],[zsh_cv_sys_link=yes],[zsh_cv_sys_link=no],[zsh_cv_sys_link=yes])]) 197 AH_TEMPLATE([HAVE_LINK], 198 [Define to 1 if system has working link().]) 199 if test x$zsh_cv_sys_link = xyes; then 200 @@ -2309,15 +2309,15 @@ zsh_cv_sys_killesrch, 201 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 202 #include <unistd.h> 203 #include <signal.h> 204 #include <errno.h> 205 #include <stdlib.h> 206 -main() 207 +int main() 208 { 209 int pid = (getpid() + 10000) & 0xffffff; 210 while (pid && (kill(pid, 0) == 0 || errno != ESRCH)) pid >>= 1; 211 - exit(errno!=ESRCH); 212 + return(errno!=ESRCH); 213 } 214 ]])],[zsh_cv_sys_killesrch=yes],[zsh_cv_sys_killesrch=no],[zsh_cv_sys_killesrch=yes])]) 215 AH_TEMPLATE([BROKEN_KILL_ESRCH], 216 [Define to 1 if kill(pid, 0) doesn't return ESRCH, ie BeOS R4.51.]) 217 if test x$zsh_cv_sys_killesrch = xno; then 218 @@ -2339,11 +2339,11 @@ if test x$signals_style = xPOSIX_SIGNALS 219 #include <stdlib.h> 220 int child=0; 221 void handler(sig) 222 int sig; 223 {if(sig==SIGCHLD) child=1;} 224 -main() { 225 +int main() { 226 struct sigaction act; 227 sigset_t set; 228 int pid, ret; 229 act.sa_handler = &handler; 230 sigfillset(&act.sa_mask); 231 @@ -2354,11 +2354,11 @@ main() { 232 pid=fork(); 233 if(pid==0) return 0; 234 if(pid>0) { 235 sigemptyset(&set); 236 ret=sigsuspend(&set); 237 - exit(child==0); 238 + return(child==0); 239 } 240 } 241 ]])],[zsh_cv_sys_sigsuspend=yes],[zsh_cv_sys_sigsuspend=no],[zsh_cv_sys_sigsuspend=yes])]) 242 if test x$zsh_cv_sys_sigsuspend = xno; then 243 AC_DEFINE(BROKEN_POSIX_SIGSUSPEND) 244 @@ -2387,18 +2387,18 @@ case "x$zsh_working_tcsetpgrp" in 245 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 246 #include <sys/types.h> 247 #include <unistd.h> 248 #include <fcntl.h> 249 #include <stdlib.h> 250 -main() { 251 +int main() { 252 int fd; 253 int ret; 254 fd=open("/dev/tty", O_RDWR); 255 if (fd < 0) exit(2); 256 ret=tcsetpgrp(fd, tcgetpgrp(fd)); 257 if (ret < 0) exit(1); 258 - exit(0); 259 + return(0); 260 } 261 ]])],[zsh_cv_sys_tcsetpgrp=yes],[ 262 case $? in 263 1) zsh_cv_sys_tcsetpgrp=no;; 264 2) zsh_cv_sys_tcsetpgrp=notty;; 265 @@ -2434,19 +2434,19 @@ if test x$ac_cv_func_getpwnam = xyes; th 266 #include <pwd.h> 267 #include <stdio.h> 268 #include <string.h> 269 #include <stdlib.h> 270 #include <unistd.h> 271 -main() { 272 +int main() { 273 struct passwd *pw1, *pw2; 274 char buf[1024], name[1024]; 275 sprintf(buf, "%d:%d", getpid(), rand()); 276 pw1=getpwnam(buf); 277 if (pw1) strcpy(name, pw1->pw_name); 278 sprintf(buf, "%d:%d", rand(), getpid()); 279 pw2=getpwnam(buf); 280 - exit(pw1!=0 && pw2!=0 && !strcmp(name, pw2->pw_name)); 281 + return(pw1!=0 && pw2!=0 && !strcmp(name, pw2->pw_name)); 282 } 283 ]])],[zsh_cv_sys_getpwnam_faked=no],[zsh_cv_sys_getpwnam_faked=yes],[zsh_cv_sys_getpwnam_faked=no])]) 284 if test x$zsh_cv_sys_getpwnam_faked = xyes; then 285 AC_DEFINE(GETPWNAM_FAKED) 286 fi 287 @@ -2763,22 +2763,20 @@ elif test "x$dynamic" = xyes; then 288 zsh_cv_sys_elf, 289 [AC_RUN_IFELSE([AC_LANG_SOURCE([[/* Test for whether ELF binaries are produced */ 290 #include <fcntl.h> 291 #include <stdlib.h> 292 #include <unistd.h> 293 -main(argc, argv) 294 -int argc; 295 -char *argv[]; 296 +int main(int argc, char *argv[]) 297 { 298 char b[4]; 299 int i = open(argv[0],O_RDONLY); 300 if(i == -1) 301 exit(1); /* fail */ 302 if(read(i,b,4)==4 && b[0]==127 && b[1]=='E' && b[2]=='L' && b[3]=='F') 303 - exit(0); /* succeed (yes, it's ELF) */ 304 + return(0); /* succeed (yes, it's ELF) */ 305 else 306 - exit(1); /* fail */ 307 + return(1); /* fail */ 308 }]])],[zsh_cv_sys_elf=yes],[zsh_cv_sys_elf=no],[zsh_cv_sys_elf=yes])]) 309 310 # We use [0-9]* in case statements, so need to change quoting 311 changequote(, ) 312 313 @@ -2908,11 +2908,11 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[]], [[ 314 EXTRA_LDFLAGS="${EXTRA_LDFLAGS=-rdynamic}"],[zsh_cvs_rdynamic_available=no]) 315 LDFLAGS="$old_LDFLAGS") 316 AC_CACHE_CHECK(if your dlsym() needs a leading underscore, 317 zsh_cv_func_dlsym_needs_underscore, 318 [echo failed >conftestval && cat >conftest.c <<EOM 319 -fred () { } 320 +void fred () { } 321 EOM 322 AC_TRY_COMMAND($CC -c $CFLAGS $CPPFLAGS $DLCFLAGS conftest.c 1>&AS_MESSAGE_LOG_FD) && 323 AC_TRY_COMMAND($DLLD $LDFLAGS $DLLDFLAGS -o conftest.$DL_EXT conftest.o 1>&AS_MESSAGE_LOG_FD) && 324 AC_RUN_IFELSE([AC_LANG_SOURCE([[ 325 #include <stdio.h> 326 @@ -2943,34 +2941,34 @@ char *zsh_gl_sym_addr ; 327 #define RTLD_LAZY 1 328 #endif 329 330 extern int fred() ; 331 332 -main() 333 +int main() 334 { 335 void * handle ; 336 void * symbol ; 337 FILE *f=fopen("conftestval", "w"); 338 if (!f) exit(1); 339 handle = dlopen("./conftest.$DL_EXT", RTLD_LAZY) ; 340 if (handle == NULL) { 341 fprintf (f, "dlopen failed") ; 342 - exit(1); 343 + return(1); 344 } 345 symbol = dlsym(handle, "fred") ; 346 if (symbol == NULL) { 347 /* try putting a leading underscore */ 348 symbol = dlsym(handle, "_fred") ; 349 if (symbol == NULL) { 350 fprintf (f, "dlsym failed") ; 351 - exit(1); 352 + return(1); 353 } 354 fprintf (f, "yes") ; 355 } 356 else 357 fprintf (f, "no") ; 358 - exit(0); 359 + return(0); 360 }]])],[zsh_cv_func_dlsym_needs_underscore=`cat conftestval`],[zsh_cv_func_dlsym_needs_underscore=failed 361 dynamic=no],[zsh_cv_func_dlsym_needs_underscore=no])]) 362 if test "x$zsh_cv_func_dlsym_needs_underscore" = xyes; then 363 AC_DEFINE(DLSYM_NEEDS_UNDERSCORE) 364 elif test "x$zsh_cv_func_dlsym_needs_underscore" != xno; then 365 --- a/aczsh.m4.old 366 +++ b/aczsh.m4 367 @@ -42,10 +42,11 @@ AC_DEFUN(zsh_64_BIT_TYPE, 368 [AC_RUN_IFELSE([AC_LANG_SOURCE([[ 369 #ifdef HAVE_SYS_TYPES_H 370 #include <sys/types.h> 371 #endif 372 373 +int 374 main() 375 { 376 $1 foo = 0; 377 int bar = (int) foo; 378 return sizeof($1) != 8; 379 @@ -144,33 +145,34 @@ char *zsh_gl_sym_addr ; 380 #endif 381 #ifndef RTLD_GLOBAL 382 #define RTLD_GLOBAL 0 383 #endif 384 385 +int 386 main() 387 { 388 void *handle1, *handle2; 389 void *(*zsh_getaddr1)(), *(*zsh_getaddr2)(); 390 void *sym1, *sym2; 391 handle1 = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 392 - if(!handle1) exit(1); 393 + if(!handle1) return(1); 394 handle2 = dlopen("./conftest2.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 395 - if(!handle2) exit(1); 396 + if(!handle2) return(1); 397 zsh_getaddr1 = (void *(*)()) dlsym(handle1, "${us}zsh_getaddr1"); 398 zsh_getaddr2 = (void *(*)()) dlsym(handle2, "${us}zsh_getaddr2"); 399 sym1 = zsh_getaddr1(); 400 sym2 = zsh_getaddr2(); 401 - if(!sym1 || !sym2) exit(1); 402 - if(sym1 != sym2) exit(1); 403 + if(!sym1 || !sym2) return(1); 404 + if(sym1 != sym2) return(1); 405 dlclose(handle1); 406 handle1 = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 407 - if(!handle1) exit(1); 408 + if(!handle1) return(1); 409 zsh_getaddr1 = (void *(*)()) dlsym(handle1, "${us}zsh_getaddr1"); 410 sym1 = zsh_getaddr1(); 411 - if(!sym1) exit(1); 412 - if(sym1 != sym2) exit(1); 413 - exit(0); 414 + if(!sym1) return(1); 415 + if(sym1 != sym2) return(1); 416 + return(0); 417 } 418 ]])],[zsh_cv_shared_$1=yes], 419 [zsh_cv_shared_$1=no], 420 [zsh_cv_shared_$1=no] 421 ) 422 @@ -226,23 +228,23 @@ char *zsh_gl_sym_addr ; 423 #endif 424 #ifndef RTLD_GLOBAL 425 #define RTLD_GLOBAL 0 426 #endif 427 428 - 429 +int 430 main() 431 { 432 void *handle1, *handle2; 433 int (*fred1)(), (*fred2)(); 434 handle1 = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 435 - if(!handle1) exit(1); 436 + if(!handle1) return(1); 437 handle2 = dlopen("./conftest2.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 438 - if(!handle2) exit(1); 439 + if(!handle2) return(1); 440 fred1 = (int (*)()) dlsym(handle1, "${us}fred"); 441 fred2 = (int (*)()) dlsym(handle2, "${us}fred"); 442 - if(!fred1 || !fred2) exit(1); 443 - exit((*fred1)() != 42 || (*fred2)() != 69); 444 + if(!fred1 || !fred2) return(1); 445 + return((*fred1)() != 42 || (*fred2)() != 69); 446 } 447 ]])],[zsh_cv_sys_dynamic_clash_ok=yes], 448 [zsh_cv_sys_dynamic_clash_ok=no], 449 [zsh_cv_sys_dynamic_clash_ok=no] 450 ) 451 @@ -302,21 +304,22 @@ char *zsh_gl_sym_addr ; 452 #endif 453 #ifndef RTLD_GLOBAL 454 #define RTLD_GLOBAL 0 455 #endif 456 457 +int 458 main() 459 { 460 void *handle; 461 int (*barneysym)(); 462 handle = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 463 - if(!handle) exit(1); 464 + if(!handle) return(1); 465 handle = dlopen("./conftest2.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 466 - if(!handle) exit(1); 467 + if(!handle) return(1); 468 barneysym = (int (*)()) dlsym(handle, "${us}barney"); 469 - if(!barneysym) exit(1); 470 - exit((*barneysym)() != 69); 471 + if(!barneysym) return(1); 472 + return((*barneysym)() != 69); 473 } 474 ]])],[zsh_cv_sys_dynamic_rtld_global=yes], 475 [zsh_cv_sys_dynamic_rtld_global=no], 476 [zsh_cv_sys_dynamic_rtld_global=no] 477 ) 478 @@ -372,19 +375,20 @@ char *zsh_gl_sym_addr ; 479 #endif 480 #ifndef RTLD_GLOBAL 481 #define RTLD_GLOBAL 0 482 #endif 483 484 +int 485 main() 486 { 487 void *handle; 488 int (*barneysym)(); 489 handle = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 490 - if(!handle) exit(1); 491 + if(!handle) return(1); 492 barneysym = (int (*)()) dlsym(handle, "${us}barney"); 493 - if(!barneysym) exit(1); 494 - exit((*barneysym)() != 69); 495 + if(!barneysym) return(1); 496 + return((*barneysym)() != 69); 497 } 498 499 int fred () { return 42; } 500 ]])],[zsh_cv_sys_dynamic_execsyms=yes], 501 [zsh_cv_sys_dynamic_execsyms=no], 502 @@ -446,19 +450,20 @@ char *zsh_gl_sym_addr ; 503 #endif 504 #ifndef RTLD_GLOBAL 505 #define RTLD_GLOBAL 0 506 #endif 507 508 +int 509 main() 510 { 511 void *handle; 512 int (*barneysym)(); 513 handle = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 514 - if(!handle) exit(1); 515 + if(!handle) return(1); 516 barneysym = (int (*)()) dlsym(handle, "${us}barney"); 517 - if(!barneysym) exit(1); 518 - exit((*barneysym)() != 69); 519 + if(!barneysym) return(1); 520 + return((*barneysym)() != 69); 521 } 522 523 int fred () { return 42; } 524 ]])],[zsh_cv_sys_dynamic_strip_exe=yes], 525 [zsh_cv_sys_dynamic_strip_exe=no], 526 @@ -514,19 +519,20 @@ char *zsh_gl_sym_addr ; 527 #endif 528 #ifndef RTLD_GLOBAL 529 #define RTLD_GLOBAL 0 530 #endif 531 532 +int 533 main() 534 { 535 void *handle; 536 int (*fredsym)(); 537 handle = dlopen("./conftest1.$DL_EXT", RTLD_LAZY | RTLD_GLOBAL); 538 - if(!handle) exit(1); 539 + if(!handle) return(1); 540 fredsym = (int (*)()) dlsym(handle, "${us}fred"); 541 - if(!fredsym) exit(1); 542 - exit((*fredsym)() != 42); 543 + if(!fredsym) return(1); 544 + return((*fredsym)() != 42); 545 } 546 ]])],[zsh_cv_sys_dynamic_strip_lib=yes], 547 [zsh_cv_sys_dynamic_strip_lib=no], 548 [zsh_cv_sys_dynamic_strip_lib=no] 549 ) 550