mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-09 04:11:27 +08:00
52e9a9d118
* string/strnlen.c: New file. * string/Makefile (routines): Add strnlen. * string/string.h [__USE_GNU] (strnlen): Declare new function. [__OPTIMIZE__]: Define extern inline implementation of it. * stdlib/erand48_r.c: Use __mpn_construct_double instead of ldexp and addition, to avoid using anything from -lm. Mon Mar 4 21:57:14 1996 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/m68k/Makefile: New file. * sysdeps/unix/sysv/linux/m68k/sysdep.h (SYS_ify): Redefine. (CALL_MCOUNT): New macro, empty unless [PROF]. (ENTRY): Do CALL_MCOUNT just after the label. (JUMPTARGET): New macro. (SYSCALL_ERROR_HANDLER): Fix syntax. Thu Mar 14 04:20:48 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu> * sysdeps/unix/sysv/linux/init-first.c (init): Call `__personality' function instead of using inline asm i386 syscall. * sysdeps/unix/sysv/linux/syscalls.list: Add personality syscall. * posix/unistd.h [__USE_BSD]: Declare usleep. * misc/efgcvt.c (MAXDIG): New macro computed from <floats.h> constants. (fcvt, ecvt): Use it for buffer size. * stdlib/drand48-iter.c (__drand48_iterate): Use u_int64_t instead of conditionalizing long vs long long. * stdlib/drand48-iter.c (__drand48_iterate): Don't check for null pointers; never return EFAULT. * stdlib/drand48_r.c (drand48_r): Likewise. * stdlib/erand48_r.c (erand48_r): Likewise.
41 lines
476 B
C
41 lines
476 B
C
/* setjmp vs alloca test case. Exercised bug on sparc. */
|
|
|
|
#include <stdio.h>
|
|
#include <setjmp.h>
|
|
#include <alloca.h>
|
|
|
|
void
|
|
sub5 (jmp_buf buf)
|
|
{
|
|
longjmp (buf, 1);
|
|
}
|
|
|
|
void
|
|
test (int x)
|
|
{
|
|
jmp_buf buf;
|
|
char *foo;
|
|
int arr[100];
|
|
|
|
arr[77] = x;
|
|
if (setjmp (buf))
|
|
{
|
|
printf ("made it ok; %d\n", arr[77]);
|
|
return;
|
|
}
|
|
|
|
foo = (char *) alloca (128);
|
|
sub5 (buf);
|
|
}
|
|
|
|
int
|
|
main (void)
|
|
{
|
|
int i;
|
|
|
|
for (i = 123; i < 345; ++i)
|
|
test (i);
|
|
|
|
return 0;
|
|
}
|