1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-29 11:41:21 +03:00
1999-02-07  Ulrich Drepper  <drepper@cygnus.com>

	* Versions.def: New version GLIBC_2.1.1 for libc.
	* stdlib/Versions: Add _Exit, imaxdiv, and imaxdiv to GLIBC_2.1.1.
	* stdlib/labs.c: Moved to...
	* sysdeps/generic/labs.c: ...here.
	* stdlib/llabs.c: Moved to...
	* sysdeps/generic/llabs.c: ...here.
	* stdlib/stdlib.h: Allow definition of ldiv_t and lldiv_t in other
	header.  Declare _Exit.
	* sysdeps/generic/_exit.c: Add alias _Exit.
	* sysdeps/mach/hurd/_exit.c: Likewise.
	* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
	* sysdeps/standalone/i960/nindy960/_exit.c: Likewise.
	* sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise.
	* sysdeps/unix/_exit.c: Likewise.
	* sysdeps/wordsize-32/inttypes.h: Define imaxdiv_t and declare
	imaxdiv and imaxabs.  Declare lldiv_t if necessary.
	* sysdeps/wordsize-64/inttypes.h: Likewise.
	* sysdeps/wordsize-32/llabs.c: New file.
	* sysdeps/wordsize-32/lldiv.c: New file.
	* sysdeps/wordsize-64/labs.c: New file.
	* sysdeps/wordsize-64/ldiv.c: New file.
	* manual/arith.texi: Document imaxabs, imaxdiv_t, and imaxdiv.
	* manual/startup.texi: Document _Exit.

1999-02-07  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

	* nscd/cache.c: Include <arpa/inet.h> for inet_ntop.
This commit is contained in:
Ulrich Drepper
1999-02-07 12:50:11 +00:00
parent 8d8c6efa78
commit e518937a3a
22 changed files with 296 additions and 12 deletions

View File

@ -1,3 +1,33 @@
1999-02-07 Ulrich Drepper <drepper@cygnus.com>
* Versions.def: New version GLIBC_2.1.1 for libc.
* stdlib/Versions: Add _Exit, imaxdiv, and imaxdiv to GLIBC_2.1.1.
* stdlib/labs.c: Moved to...
* sysdeps/generic/labs.c: ...here.
* stdlib/llabs.c: Moved to...
* sysdeps/generic/llabs.c: ...here.
* stdlib/stdlib.h: Allow definition of ldiv_t and lldiv_t in other
header. Declare _Exit.
* sysdeps/generic/_exit.c: Add alias _Exit.
* sysdeps/mach/hurd/_exit.c: Likewise.
* sysdeps/standalone/i386/force_cpu386/_exit.c: Likewise.
* sysdeps/standalone/i960/nindy960/_exit.c: Likewise.
* sysdeps/standalone/m68k/m68020/mvme136/_exit.c: Likewise.
* sysdeps/unix/_exit.c: Likewise.
* sysdeps/wordsize-32/inttypes.h: Define imaxdiv_t and declare
imaxdiv and imaxabs. Declare lldiv_t if necessary.
* sysdeps/wordsize-64/inttypes.h: Likewise.
* sysdeps/wordsize-32/llabs.c: New file.
* sysdeps/wordsize-32/lldiv.c: New file.
* sysdeps/wordsize-64/labs.c: New file.
* sysdeps/wordsize-64/ldiv.c: New file.
* manual/arith.texi: Document imaxabs, imaxdiv_t, and imaxdiv.
* manual/startup.texi: Document _Exit.
1999-02-07 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* nscd/cache.c: Include <arpa/inet.h> for inet_ntop.
1999-02-06 Ulrich Drepper <drepper@cygnus.com> 1999-02-06 Ulrich Drepper <drepper@cygnus.com>
* Versions.def: Add versions for ld.so. * Versions.def: Add versions for ld.so.

6
NEWS
View File

@ -1,4 +1,4 @@
GNU C Library NEWS -- history of user-visible changes. 1999-02-02 GNU C Library NEWS -- history of user-visible changes. 1999-02-07
Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc. Copyright (C) 1992, 93, 94, 95, 96, 97, 98, 99 Free Software Foundation, Inc.
See the end for copying conditions. See the end for copying conditions.
@ -7,6 +7,10 @@ Please send GNU C library bug reports using the `glibcbug' script to
<bugs@gnu.org>. Questions and suggestions should be send to <bugs@gnu.org>. Questions and suggestions should be send to
<bug-glibc@gnu.org>. <bug-glibc@gnu.org>.
Version 2.1.1
* New ISO C 9x function _exit, imaxabs, and imaxdiv are added.
Version 2.1 Version 2.1
* Richard Henderson corrected size of struct timeval on Linux/Alpha to * Richard Henderson corrected size of struct timeval on Linux/Alpha to

View File

@ -4,6 +4,7 @@ libBrokenLocale {
libc { libc {
GLIBC_2.0 GLIBC_2.0
GLIBC_2.1 GLIBC_2.0 GLIBC_2.1 GLIBC_2.0
GLIBC_2.1.1 GLIBC_2.1
} }
libcrypt { libcrypt {
GLIBC_2.0 GLIBC_2.0

View File

@ -826,6 +826,7 @@ whose imaginary part is @var{y}, the absolute value is @w{@code{sqrt
@pindex math.h @pindex math.h
@pindex stdlib.h @pindex stdlib.h
Prototypes for @code{abs}, @code{labs} and @code{llabs} are in @file{stdlib.h}; Prototypes for @code{abs}, @code{labs} and @code{llabs} are in @file{stdlib.h};
@code{imaxabs} is declared in @file{inttypes.h};
@code{fabs}, @code{fabsf} and @code{fabsl} are declared in @file{math.h}. @code{fabs}, @code{fabsf} and @code{fabsl} are declared in @file{math.h}.
@code{cabs}, @code{cabsf} and @code{cabsl} are declared in @file{complex.h}. @code{cabs}, @code{cabsf} and @code{cabsl} are declared in @file{complex.h}.
@ -838,13 +839,16 @@ Prototypes for @code{abs}, @code{labs} and @code{llabs} are in @file{stdlib.h};
@comment stdlib.h @comment stdlib.h
@comment ISO @comment ISO
@deftypefunx {long long int} llabs (long long int @var{number}) @deftypefunx {long long int} llabs (long long int @var{number})
@comment inttypes.h
@comment ISO
@deftypefunx intmax_t imaxabs (intmax_t @var{number})
These functions return the absolute value of @var{number}. These functions return the absolute value of @var{number}.
Most computers use a two's complement integer representation, in which Most computers use a two's complement integer representation, in which
the absolute value of @code{INT_MIN} (the smallest possible @code{int}) the absolute value of @code{INT_MIN} (the smallest possible @code{int})
cannot be represented; thus, @w{@code{abs (INT_MIN)}} is not defined. cannot be represented; thus, @w{@code{abs (INT_MIN)}} is not defined.
@code{llabs} is new to @w{ISO C 9x} @code{llabs} and @code{imaxdiv} are new to @w{ISO C 9x}.
@end deftypefun @end deftypefun
@comment math.h @comment math.h
@ -1820,6 +1824,34 @@ a structure of type @code{lldiv_t}.
The @code{lldiv} function was added in @w{ISO C 9x}. The @code{lldiv} function was added in @w{ISO C 9x}.
@end deftypefun @end deftypefun
@comment inttypes.h
@comment ISO
@deftp {Data Type} imaxdiv_t
This is a structure type used to hold the result returned by the @code{imaxdiv}
function. It has the following members:
@table @code
@item intmax_t quot
The quotient from the division.
@item intmax_t rem
The remainder from the division.
@end table
(This is identical to @code{div_t} except that the components are of
type @code{intmax_t} rather than @code{int}.)
@end deftp
@comment inttypes.h
@comment ISO
@deftypefun imaxdiv_t imaxdiv (intmax_t @var{numerator}, intmax_t @var{denominator})
The @code{imaxdiv} function is like the @code{div} function, but the
arguments are of type @code{intmax_t} and the result is returned as
a structure of type @code{imaxdiv_t}.
The @code{imaxdiv} function was added in @w{ISO C 9x}.
@end deftypefun
@node Parsing of Numbers @node Parsing of Numbers
@section Parsing of Numbers @section Parsing of Numbers

View File

@ -776,6 +776,18 @@ execute cleanup functions registered with @code{atexit} or
@code{on_exit}. @code{on_exit}.
@end deftypefun @end deftypefun
@comment stdlib.h
@comment ISO
@deftypefun void _Exit (int @var{status})
The @code{_Exit} function is the @w{ISO C} equivalent to @code{_exit}.
The @w{ISO C} committee members were not sure whether the definitions of
@code{_exit} and @code{_Exit} were compatible so they have not used the
POSIX name.
This function was introduced in @w{ISO C9x} and is declared in
@file{stdlib.h}.
@end deftypefun
When a process terminates for any reason---either by an explicit When a process terminates for any reason---either by an explicit
termination call, or termination as a result of a signal---the termination call, or termination as a result of a signal---the
following things happen: following things happen:

View File

@ -1,4 +1,4 @@
/* Copyright (c) 1998 Free Software Foundation, Inc. /* Copyright (c) 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998. Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -23,6 +23,7 @@
#include <limits.h> #include <limits.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include <arpa/inet.h>
#include <rpcsvc/nis.h> #include <rpcsvc/nis.h>
#include <sys/param.h> #include <sys/param.h>
#include <sys/stat.h> #include <sys/stat.h>

View File

@ -83,4 +83,11 @@ libc {
# s* # s*
strtoimax; strtoumax; swapcontext; strtoimax; strtoumax; swapcontext;
} }
GLIBC_2.1.1 {
# _*
_Exit;
# i*
imaxabs; imaxdiv;
}
} }

View File

@ -45,19 +45,23 @@ typedef struct
} div_t; } div_t;
/* Returned by `ldiv'. */ /* Returned by `ldiv'. */
#ifndef __ldiv_t_defined
typedef struct typedef struct
{ {
long int quot; /* Quotient. */ long int quot; /* Quotient. */
long int rem; /* Remainder. */ long int rem; /* Remainder. */
} ldiv_t; } ldiv_t;
# define __ldiv_t_defined 1
#endif
#ifdef __USE_ISOC9X #if defined __USE_ISOC9X && !defined __lldiv_t_defined
/* Returned by `lldiv'. */ /* Returned by `lldiv'. */
__extension__ typedef struct __extension__ typedef struct
{ {
long long int quot; /* Quotient. */ long long int quot; /* Quotient. */
long long int rem; /* Remainder. */ long long int rem; /* Remainder. */
} lldiv_t; } lldiv_t;
# define __lldiv_t_defined 1
#endif #endif
@ -515,6 +519,12 @@ extern int on_exit __P ((void (*__func) (int __status, __ptr_t __arg),
perform stdio cleanup, and terminate program execution with STATUS. */ perform stdio cleanup, and terminate program execution with STATUS. */
extern void exit __P ((int __status)) __attribute__ ((__noreturn__)); extern void exit __P ((int __status)) __attribute__ ((__noreturn__));
#ifdef __USE_ISOC9X
/* Terminate the program with STATUS without calling any of the
functions registered with `atexit' or `on_exit'. */
extern void _Exit __P ((int __status)) __attribute__ ((__noreturn__));
#endif
/* Return the value of envariable NAME, or NULL if it doesn't exist. */ /* Return the value of envariable NAME, or NULL if it doesn't exist. */
extern char *getenv __P ((__const char *__name)); extern char *getenv __P ((__const char *__name));

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1994, 1995, 1996, 1997 Free Software Foundation, Inc. /* Copyright (C) 1991, 94, 95, 96, 97, 99 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -29,6 +29,7 @@ _exit (status)
status &= 0xff; status &= 0xff;
abort (); abort ();
} }
weak_alias (_exit, _Exit)
stub_warning (_exit) stub_warning (_exit)
#include <stub-tag.h> #include <stub-tag.h>

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1993, 1994, 1995, 1996, 1997 Free Software Foundation, Inc. /* Copyright (C) 1993, 94, 95, 96, 97, 99 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -52,3 +52,4 @@ _exit (status)
{ {
_hurd_exit (W_EXITCODE (status, 0)); _hurd_exit (W_EXITCODE (status, 0));
} }
weak_alias (_exit, _Exit)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1997 Free Software Foundation, Inc. /* Copyright (C) 1991, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil), Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
On-Line Applications Research Corporation. On-Line Applications Research Corporation.
@ -36,6 +36,7 @@ _exit (status)
/* status is ignored */ /* status is ignored */
Bsp_cleanup(); Bsp_cleanup();
} }
weak_alias (_exit, _Exit)
#ifdef HAVE_GNU_LD #ifdef HAVE_GNU_LD

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1997 Free Software Foundation, Inc. /* Copyright (C) 1991, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil), Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
On-Line Applications Research Corporation. On-Line Applications Research Corporation.
@ -43,6 +43,7 @@ _exit (status)
* application if the user types "go". * application if the user types "go".
*/ */
} }
weak_alias (_exit, _Exit)
#ifdef HAVE_GNU_LD #ifdef HAVE_GNU_LD

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1994, 1997 Free Software Foundation, Inc. /* Copyright (C) 1994, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil), Contributed by Joel Sherrill (jsherril@redstone-emh2.army.mil),
On-Line Applications Research Corporation. On-Line Applications Research Corporation.
@ -47,3 +47,4 @@ _exit (status)
M68Kvec[ 45 ] = __exit_trap; /* install exit_trap handler */ M68Kvec[ 45 ] = __exit_trap; /* install exit_trap handler */
asm volatile( "trap #13" ); /* insures SUPV mode */ asm volatile( "trap #13" ); /* insures SUPV mode */
} }
weak_alias (_exit, _Exit)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1991, 1992, 1997 Free Software Foundation, Inc. /* Copyright (C) 1991, 1992, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -21,3 +21,4 @@
PSEUDO (_exit, exit, 1) PSEUDO (_exit, exit, 1)
/* Shouldn't get here. */ /* Shouldn't get here. */
PSEUDO_END(_exit) PSEUDO_END(_exit)
weak_alias (_exit, _Exit)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. /* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -251,6 +251,28 @@
__BEGIN_DECLS __BEGIN_DECLS
/* We have to define the `uintmax_t' type using `lldiv_t'. */
#ifndef _STDLIB_H
/* Returned by `lldiv'. */
__extension__ typedef struct
{
long long int quot; /* Quotient. */
long long int rem; /* Remainder. */
} lldiv_t;
# define __lldiv_t_defined 1
#endif
/* Returned by `imaxdiv'. */
typedef lldiv_t imaxdiv_t;
/* Compute absolute value of N. */
extern intmax_t imaxabs __P ((intmax_t __n)) __attribute__ ((__const__));
/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */
extern imaxdiv_t imaxdiv __P ((intmax_t __numer, intmax_t __denom))
__attribute__ ((__const__));
/* Like `strtol' but convert to `intmax_t'. */ /* Like `strtol' but convert to `intmax_t'. */
extern intmax_t strtoimax __P ((__const char *__restrict __nptr, extern intmax_t strtoimax __P ((__const char *__restrict __nptr,
char **__restrict __endptr, int __base)); char **__restrict __endptr, int __base));
@ -269,6 +291,29 @@ extern uintmax_t wcstoumax __P ((__const wchar_t * __restrict __nptr,
#ifdef __USE_EXTERN_INLINES #ifdef __USE_EXTERN_INLINES
/* We ant to use the appropriate functions from <stdlib.h> but cannot
assume the header is read already. */
__extension__ extern long long int llabs __P ((long long int __x))
__attribute__ ((__const__));
__extension__ extern lldiv_t lldiv __P ((long long int __numer,
long long int __denom))
__attribute__ ((__const__));
/* Compute absolute value of N. */
extern __inline intmax_t
imaxabs (intmax_t __n) __THROW
{
return llabs (__n);
}
/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */
extern __inline imaxdiv_t
imaxdiv (intmax_t __numer, intmax_t __denom) __THROW
{
return lldiv (__numer, __denom);
}
/* Like `strtol' but convert to `intmax_t'. */ /* Like `strtol' but convert to `intmax_t'. */
# ifndef __strtoll_internal_defined # ifndef __strtoll_internal_defined
__extension__ __extension__

View File

@ -0,0 +1,23 @@
/* Copyright (C) 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <inttypes.h>
#include <sysdeps/generic/llabs.c>
weak_alias (llabs, imaxabs)

View File

@ -0,0 +1,23 @@
/* Copyright (C) 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <inttypes.h>
#include <sysdeps/generic/lldiv.c>
weak_alias (lldiv, imaxdiv)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1997, 1998 Free Software Foundation, Inc. /* Copyright (C) 1997, 1998, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library. This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or The GNU C Library is free software; you can redistribute it and/or
@ -251,6 +251,28 @@
__BEGIN_DECLS __BEGIN_DECLS
/* We have to define the `uintmax_t' type using `ldiv_t'. */
#ifndef _STDLIB_H
/* Returned by `ldiv'. */
typedef struct
{
long int quot; /* Quotient. */
long int rem; /* Remainder. */
} ldiv_t;
# define __ldiv_t_defined 1
#endif
/* Returned by `imaxdiv'. */
typedef ldiv_t imaxdiv_t;
/* Compute absolute value of N. */
extern intmax_t imaxabs __P ((intmax_t __n)) __attribute__ ((__const__));
/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */
extern imaxdiv_t imaxdiv __P ((intmax_t __numer, intmax_t __denom))
__attribute__ ((__const__));
/* Like `strtol' but convert to `intmax_t'. */ /* Like `strtol' but convert to `intmax_t'. */
extern intmax_t strtoimax __P ((__const char *__restrict __nptr, extern intmax_t strtoimax __P ((__const char *__restrict __nptr,
char **__restrict __endptr, int __base)); char **__restrict __endptr, int __base));
@ -269,6 +291,28 @@ extern uintmax_t wcstoumax __P ((__const wchar_t * __restrict __nptr,
#ifdef __USE_EXTERN_INLINES #ifdef __USE_EXTERN_INLINES
/* We ant to use the appropriate functions from <stdlib.h> but cannot
assume the header is read already. */
__extension__ extern long int labs __P ((long int __x))
__attribute__ ((__const__));
__extension__ extern ldiv_t ldiv __P ((long int __numer, long int __denom))
__attribute__ ((__const__));
/* Compute absolute value of N. */
extern __inline intmax_t
imaxabs (intmax_t __n) __THROW
{
return labs (__n);
}
/* Return the `imaxdiv_t' representation of the value of NUMER over DENOM. */
extern __inline imaxdiv_t
imaxdiv (intmax_t __numer, intmax_t __denom) __THROW
{
return ldiv (__numer, __denom);
}
/* Like `strtol' but convert to `intmax_t'. */ /* Like `strtol' but convert to `intmax_t'. */
# ifndef __strtol_internal_defined # ifndef __strtol_internal_defined
extern long int __strtol_internal __P ((__const char *__restrict __nptr, extern long int __strtol_internal __P ((__const char *__restrict __nptr,

View File

@ -0,0 +1,23 @@
/* Copyright (C) 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <inttypes.h>
#include <sysdeps/generic/labs.c>
weak_alias (labs, imaxabs)

View File

@ -0,0 +1,23 @@
/* Copyright (C) 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If not,
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include <inttypes.h>
#include <sysdeps/generic/ldiv.c>
weak_alias (ldiv, imaxdiv)