aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-10-20 21:18:11 +0000
committerUlrich Drepper <drepper@redhat.com>1998-10-20 21:18:11 +0000
commit48244d09317581396dc0c22bdb69489dc0ea4c5a (patch)
tree264b5c6adf13451da3abce523a64e459d3535ace
parent10411f2d14f7a567c0a38811e111751d33a4b3e8 (diff)
downloadglibc-48244d09317581396dc0c22bdb69489dc0ea4c5a.zip
glibc-48244d09317581396dc0c22bdb69489dc0ea4c5a.tar.gz
glibc-48244d09317581396dc0c22bdb69489dc0ea4c5a.tar.bz2
Update.
* math/tgmath.h: Make nested function calls work.
-rw-r--r--ChangeLog2
-rw-r--r--FAQ26
-rw-r--r--FAQ.in12
-rw-r--r--INTERFACE1508
-rw-r--r--NEWS360
-rw-r--r--math/tgmath.h176
6 files changed, 2011 insertions, 73 deletions
diff --git a/ChangeLog b/ChangeLog
index e15f954..7021012 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,7 @@
1998-10-19 Ulrich Drepper <drepper@cygnus.com>
+ * math/tgmath.h: Make nested function calls work.
+
* include/ldsodefs.h: Fix typo.
* posix/Makefile (tests): Add tst-preadwrite.
diff --git a/FAQ b/FAQ
index 1709786..7dd9567 100644
--- a/FAQ
+++ b/FAQ
@@ -89,6 +89,7 @@ please let me know.
which is not acceptable for me. What can I do?
2.22. I just upgraded my Linux system to glibc and now I get
errors whenever I try to link any program.
+2.23. When I use nscd the machine freezes.
3. Source and binary incompatibilities, and what to do about them
@@ -223,16 +224,16 @@ to them.
1.5. Which compiler should I use for powerpc?
-{GK} You want to use egcs 1.0.1 or later (together with the right versions
+{GK} You want to use egcs 1.1 or later (together with the right versions
of all the other tools, of course).
-In fact, egcs 1.0.1 has a serious bug that prevents a clean make, relating
-to switch statement folding. It also causes the resulting shared libraries
-to use more memory than they should. There is a patch at:
+In fact, egcs 1.1 has a bug that causes linuxthreads to be
+miscompiled, resulting in segmentation faults when using condition
+variables. There is a temporary patch at:
-<http://discus.anu.edu.au/~geoffk/egcs-1.0.1-geoffk.diff>
+<http://discus.anu.edu.au/~geoffk/egcs-3.diff>
-Later versions of egcs may fix these problems.
+Later versions of egcs may fix this problem.
1.6. Do I need some more things to compile GNU C Library?
@@ -889,6 +890,19 @@ an installation of glibc that is configured with --prefix=/usr should help
detect these situations. If the script reports problems, something is
really screwed up.
+
+2.23. When I use nscd the machine freezes.
+
+{UD} It is well known that you cannot use nscd with Linux 2.0.*. There
+is functionality missing in the kernel and work-arounds are not suitable.
+Beside this some parts of the kernel are too buggy when it comes to using
+threads.
+
+So you have the possibilities to run Linux 2.0.* or update to a higher
+version and start using nscd.
+
+Note that I have at this point no information about any other platform.
+
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
diff --git a/FAQ.in b/FAQ.in
index 197d5a6..bdab8de 100644
--- a/FAQ.in
+++ b/FAQ.in
@@ -731,6 +731,18 @@ an installation of glibc that is configured with --prefix=/usr should help
detect these situations. If the script reports problems, something is
really screwed up.
+?? When I use nscd the machine freezes.
+
+{UD} It is well known that you cannot use nscd with Linux 2.0.*. There
+is functionality missing in the kernel and work-arounds are not suitable.
+Beside this some parts of the kernel are too buggy when it comes to using
+threads.
+
+So you have the possibilities to run Linux 2.0.* or update to a higher
+version and start using nscd.
+
+Note that I have at this point no information about any other platform.
+
? Source and binary incompatibilities, and what to do about them
?? I expect GNU libc to be 100% source code compatible with
diff --git a/INTERFACE b/INTERFACE
new file mode 100644
index 0000000..0cce007
--- /dev/null
+++ b/INTERFACE
@@ -0,0 +1,1508 @@
+2.0.7-19981020 2.0.98-19981020
+===============================================================================
+
+a64l a64l
+abort abort
+abs abs
+accept accept
+access access
+acct acct
+acos acos
+acosf acosf
+acosh acosh
+acoshf acoshf
+acoshl acoshl
+acosl acosl
+addmntent addmntent
+ > addseverity NEW: fmtmsg
+adjtime adjtime
+adjtimex adjtimex
+advance advance
+alarm alarm
+alphasort alphasort
+ > alphasort64 NEW: LFS
+ > argp_err_exit_status NEW: argp
+ > argp_error NEW: argp
+ > argp_failure NEW: argp
+ > argp_help NEW: argp
+ > argp_parse NEW: argp
+ > argp_program_bug_address NEW: argp
+ > argp_program_version NEW: argp
+ > argp_program_version_hook NEW: argp
+ > argp_state_help NEW: argp
+ > argp_usage NEW: argp
+argz_add argz_add
+argz_add_sep argz_add_sep
+argz_append argz_append
+argz_count argz_count
+argz_create argz_create
+argz_create_sep argz_create_sep
+argz_delete argz_delete
+argz_extract argz_extract
+argz_insert argz_insert
+argz_next argz_next
+argz_replace argz_replace
+argz_stringify argz_stringify
+asctime asctime
+asctime_r asctime_r
+asin asin
+asinf asinf
+asinh asinh
+asinhf asinhf
+asinhl asinhl
+asinl asinl
+asprintf asprintf
+atan atan
+atan2 atan2
+atan2f atan2f
+atan2l atan2l
+atanf atanf
+atanh atanh
+atanhf atanhf
+atanhl atanhl
+atanl atanl
+atexit atexit
+atof atof
+atoi atoi
+atol atol
+atoll atoll
+ > authdes_create NEW: NIS+
+ > authdes_getucred NEW: NIS+
+ > authdes_pk_create NEW: NIS+
+authnone_create authnone_create
+authunix_create authunix_create
+authunix_create_default authunix_create_default
+ > backtrace NEW: GNU ext.
+ > backtrace_symbols NEW: GNU ext.
+ > backtrace_symbols_fd NEW: GNU ext.
+basename basename
+bcmp bcmp
+bcopy bcopy
+bdflush bdflush
+bind bind
+bindresvport bindresvport
+bindtextdomain bindtextdomain
+brk brk
+bsd_signal bsd_signal
+bsearch bsearch
+btowc btowc
+bzero bzero
+cabs cabs
+cabsf cabsf
+cabsl cabsl
+ > cacos NEW: ISO C 9x
+ > cacosf NEW: ISO C 9x
+ > cacosh NEW: ISO C 9x
+ > cacoshf NEW: ISO C 9x
+ > cacoshl NEW: ISO C 9x
+ > cacosl NEW: ISO C 9x
+calloc calloc
+callrpc callrpc
+canonicalize_file_name canonicalize_file_name
+ > capget NEW: kernel
+ > capset NEW: kernel
+ > carg NEW: ISO C 9x
+ > cargf NEW: ISO C 9x
+ > cargl NEW: ISO C 9x
+ > casin NEW: ISO C 9x
+ > casinf NEW: ISO C 9x
+ > casinh NEW: ISO C 9x
+ > casinhf NEW: ISO C 9x
+ > casinhl NEW: ISO C 9x
+ > casinl NEW: ISO C 9x
+ > catan NEW: ISO C 9x
+ > catanf NEW: ISO C 9x
+ > catanh NEW: ISO C 9x
+ > catanhf NEW: ISO C 9x
+ > catanhl NEW: ISO C 9x
+ > catanl NEW: ISO C 9x
+catclose catclose
+catgets catgets
+catopen catopen
+ > cbc_crypt NEW: NIS+
+cbrt cbrt
+cbrtf cbrtf
+cbrtl cbrtl
+ > ccos NEW: ISO C 9x
+ > ccosf NEW: ISO C 9x
+ > ccosh NEW: ISO C 9x
+ > ccoshf NEW: ISO C 9x
+ > ccoshl NEW: ISO C 9x
+ > ccosl NEW: ISO C 9x
+ceil ceil
+ceilf ceilf
+ceill ceill
+ > cexp NEW: ISO C 9x
+ > cexpf NEW: ISO C 9x
+ > cexpl NEW: ISO C 9x
+cfgetispeed cfgetispeed
+cfgetospeed cfgetospeed
+cfmakeraw cfmakeraw
+cfree cfree
+cfsetispeed cfsetispeed
+cfsetospeed cfsetospeed
+cfsetspeed cfsetspeed
+chdir chdir
+chflags chflags
+chmod chmod
+chown chown
+chroot chroot
+ > cimag NEW: ISO C 9x
+ > cimagf NEW: ISO C 9x
+ > cimagl NEW: ISO C 9x
+clearenv clearenv
+clearerr clearerr
+clearerr_locked < REMOVED
+clearerr_unlocked clearerr_unlocked
+clnt_broadcast clnt_broadcast
+clnt_create clnt_create
+clnt_pcreateerror clnt_pcreateerror
+clnt_perrno clnt_perrno
+clnt_perror clnt_perror
+clnt_spcreateerror clnt_spcreateerror
+clnt_sperrno clnt_sperrno
+clnt_sperror clnt_sperror
+clntraw_create clntraw_create
+clnttcp_create clnttcp_create
+clntudp_bufcreate clntudp_bufcreate
+clntudp_create clntudp_create
+ > clntunix_create NEW: sunrpc ext
+clock clock
+ > clog NEW: ISO C 9x
+ > clog10 NEW: ISO C 9x
+ > clog10f NEW: ISO C 9x
+ > clog10l NEW: ISO C 9x
+ > clogf NEW: ISO C 9x
+ > clogl NEW: ISO C 9x
+clone clone
+close close
+closedir closedir
+closelog closelog
+confstr confstr
+ > conj NEW: ISO C 9x
+ > conjf NEW: ISO C 9x
+ > conjl NEW: ISO C 9x
+connect connect
+copysign copysign
+copysignf copysignf
+copysignl copysignl
+cos cos
+cosf cosf
+cosh cosh
+coshf coshf
+coshl coshl
+cosl cosl
+ > cpow NEW: ISO C 9x
+ > cpowf NEW: ISO C 9x
+ > cpowl NEW: ISO C 9x
+ > cproj NEW: ISO C 9x
+ > cprojf NEW: ISO C 9x
+ > cprojl NEW: ISO C 9x
+ > creal NEW: ISO C 9x
+ > crealf NEW: ISO C 9x
+ > creall NEW: ISO C 9x
+creat creat
+ > creat64 NEW: LFS
+create_module create_module
+ > csin NEW: ISO C 9x
+ > csinf NEW: ISO C 9x
+ > csinh NEW: ISO C 9x
+ > csinhf NEW: ISO C 9x
+ > csinhl NEW: ISO C 9x
+ > csinl NEW: ISO C 9x
+ > csqrt NEW: ISO C 9x
+ > csqrtf NEW: ISO C 9x
+ > csqrtl NEW: ISO C 9x
+ > ctan NEW: ISO C 9x
+ > ctanf NEW: ISO C 9x
+ > ctanh NEW: ISO C 9x
+ > ctanhf NEW: ISO C 9x
+ > ctanhl NEW: ISO C 9x
+ > ctanl NEW: ISO C 9x
+ctermid ctermid
+ctime ctime
+ctime_r ctime_r
+cuserid cuserid
+daemon daemon
+daylight daylight
+dcgettext dcgettext
+delete_module delete_module
+ > des_setparity NEW: NIS+
+dgettext dgettext
+difftime difftime
+dirfd dirfd
+dirname dirname
+div div
+dprintf dprintf
+drand48 drand48
+drand48_r drand48_r
+drem drem
+dremf dremf
+dreml dreml
+dup dup
+dup2 dup2
+dysize dysize
+ > ecb_crypt NEW: NIS+
+ecvt ecvt
+ecvt_r ecvt_r
+endaliasent endaliasent
+endfsent endfsent
+endgrent endgrent
+endhostent endhostent
+endmntent endmntent
+endnetent endnetent
+endnetgrent endnetgrent
+endprotoent endprotoent
+endpwent endpwent
+endrpcent endrpcent
+endservent endservent
+endspent endspent
+endttyent endttyent
+endusershell endusershell
+endutent endutent
+ > endutxent NEW: utmpx
+environ environ
+envz_add envz_add
+envz_entry envz_entry
+envz_get envz_get
+envz_merge envz_merge
+envz_remove envz_remove
+envz_strip envz_strip
+erand48 erand48
+erand48_r erand48_r
+erf erf
+erfc erfc
+erfcf erfcf
+erfcl erfcl
+erff erff
+erfl erfl
+err err
+errno errno
+error error
+error_at_line error_at_line
+error_message_count error_message_count
+error_one_per_line error_one_per_line
+error_print_progname error_print_progname
+errx errx
+ether_aton ether_aton
+ether_aton_r ether_aton_r
+ether_hostton ether_hostton
+ether_line ether_line
+ether_ntoa ether_ntoa
+ether_ntoa_r ether_ntoa_r
+ether_ntohost ether_ntohost
+euidaccess euidaccess
+execl execl
+execle execle
+execlp execlp
+execv execv
+execve execve
+execvp execvp
+exit exit
+exp exp
+ > exp10 NEW: ISO C 9x
+ > exp10f NEW: ISO C 9x
+ > exp10l NEW: ISO C 9x
+ > exp2 NEW: ISO C 9x
+ > exp2f NEW: ISO C 9x
+ > exp2l NEW: ISO C 9x
+expf expf
+expl expl
+expm1 expm1
+expm1f expm1f
+expm1l expm1l
+fabs fabs
+fabsf fabsf
+fabsl fabsl
+ > fattach NEW: STREAMS
+fchdir fchdir
+fchflags fchflags
+fchmod fchmod
+fchown fchown
+fclose fclose
+fcloseall fcloseall
+fcntl fcntl
+fcvt fcvt
+fcvt_r fcvt_r
+fdatasync fdatasync
+ > fdetach NEW: STREAMS
+ > fdim NEW: ISO C 9x
+ > fdimf NEW: ISO C 9x
+ > fdiml NEW: ISO C 9x
+fdopen fdopen
+ > feclearexcept NEW: ISO C 9x
+ > fegetenv NEW: ISO C 9x
+ > fegetexceptflag NEW: ISO C 9x
+ > fegetround NEW: ISO C 9x
+ > feholdexcept NEW: ISO C 9x
+feof feof
+feof_locked < REMOVED
+feof_unlocked feof_unlocked
+ > feraiseexcept NEW: ISO C 9x
+ferror ferror
+ferror_locked < REMOVED
+ferror_unlocked ferror_unlocked
+ > fesetenv NEW: ISO C 9x
+ > fesetexceptflag NEW: ISO C 9x
+ > fesetround NEW: ISO C 9x
+ > fetestexcept NEW: ISO C 9x
+ > feupdateenv NEW: ISO C 9x
+fexecve fexecve
+fflush fflush
+fflush_locked < REMOVED
+fflush_unlocked fflush_unlocked
+ffs ffs
+ > ffsl NEW: GNU ext.
+ > ffsll NEW: GNU ext.
+fgetc fgetc
+fgetgrent fgetgrent
+fgetgrent_r fgetgrent_r
+fgetpos fgetpos
+ > fgetpos64 NEW: LFS
+fgetpwent fgetpwent
+fgetpwent_r fgetpwent_r
+fgets fgets
+ > fgets_unlocked NEW: GNU ext.
+fgetspent fgetspent
+fgetspent_r fgetspent_r
+fileno fileno
+fileno_locked < REMOVED
+fileno_unlocked fileno_unlocked
+finite finite
+finitef finitef
+finitel finitel
+flock flock
+flockfile flockfile
+floor floor
+floorf floorf
+floorl floorl
+ > fma NEW: ISO C 9x
+ > fmaf NEW: ISO C 9x
+ > fmal NEW: ISO C 9x
+ > fmax NEW: ISO C 9x
+ > fmaxf NEW: ISO C 9x
+ > fmaxl NEW: ISO C 9x
+ > fmin NEW: ISO C 9x
+ > fminf NEW: ISO C 9x
+ > fminl NEW: ISO C 9x
+fmod fmod
+fmodf fmodf
+fmodl fmodl
+ > fmtmsg NEW: fmtmsg
+fnmatch fnmatch
+fopen fopen
+ > fopen64 NEW: LFS
+fopencookie fopencookie
+fork fork
+fpathconf fpathconf
+fprintf fprintf
+fputc fputc
+fputc_locked < REMOVED
+fputc_unlocked fputc_unlocked
+fputs fputs
+ > fputs_unlocked NEW: GNU ext.
+fread fread
+ > fread_unlocked NEW: GNU ext.
+free free
+freeaddrinfo freeaddrinfo
+freopen freopen
+ > freopen64 NEW: LFS
+frexp frexp
+frexpf frexpf
+frexpl frexpl
+fscanf fscanf
+fseek fseek
+ > fseeko NEW: Unix98
+ > fseeko64
+fsetpos fsetpos
+ > fsetpos64 NEW: LFS
+fstatfs fstatfs
+ > fstatfs64 NEW: LFS
+ > fstatvfs NEW: Unix98
+ > fstatvfs64 NEW: LFS
+fsync fsync
+ftell ftell
+ > ftello NEW: Unix98
+ > ftello64 NEW: LFS
+ftime ftime
+ftok ftok
+ftruncate ftruncate
+ > ftruncate64 NEW: LFS
+ftrylockfile ftrylockfile
+fts_children fts_children
+fts_close fts_close
+fts_open fts_open
+fts_read fts_read
+fts_set fts_set
+ftw ftw
+ > ftw64 NEW: LFS
+funlockfile funlockfile
+fwrite fwrite
+ > fwrite_unlocked NEW: GNU ext.
+ > gai_strerror NEW: IPv6
+gamma gamma
+gamma_r < REMOVED
+gammaf gammaf
+gammaf_r < REMOVED
+gammal gammal
+gammal_r < REMOVED
+gcvt gcvt
+get_avphys_pages get_avphys_pages
+get_current_dir_name get_current_dir_name
+get_kernel_syms get_kernel_syms
+get_myaddress get_myaddress
+get_nprocs get_nprocs
+get_nprocs_conf get_nprocs_conf
+get_phys_pages get_phys_pages
+getaddrinfo getaddrinfo
+getaliasbyname getaliasbyname
+getaliasbyname_r getaliasbyname_r
+getaliasent getaliasent
+getaliasent_r getaliasent_r
+getc getc
+getc_locked < REMOVE
+getc_unlocked getc_unlocked
+getchar getchar
+getchar_locked < REMOVED
+getchar_unlocked getchar_unlocked
+ > getcontext
+getcwd getcwd
+ > getdate NEW: Unix98
+ > getdate_err NEW: Unix98
+ > getdate_r NEW: GNU ext.
+getdelim getdelim
+getdirentries getdirentries
+getdomainname getdomainname
+getdtablesize getdtablesize
+getegid getegid
+getenv getenv
+geteuid geteuid
+getfsent getfsent
+getfsfile getfsfile
+getfsspec getfsspec
+getgid getgid
+getgrent getgrent
+getgrent_r getgrent_r
+getgrgid getgrgid
+getgrgid_r getgrgid_r
+getgrnam getgrnam
+getgrnam_r getgrnam_r
+getgroups getgroups
+gethostbyaddr gethostbyaddr
+gethostbyaddr_r gethostbyaddr_r
+gethostbyname gethostbyname
+gethostbyname2 gethostbyname2
+gethostbyname2_r gethostbyname2_r
+gethostbyname_r gethostbyname_r
+gethostent gethostent
+gethostent_r gethostent_r
+gethostid gethostid
+gethostname gethostname
+getitimer getitimer
+getline getline
+getlogin getlogin
+getlogin_r getlogin_r
+getmntent getmntent
+getmntent_r getmntent_r
+ > getmsg NEW: STREAMS
+ > getnameinfo NEW: IPv6
+getnetbyaddr getnetbyaddr
+getnetbyaddr_r getnetbyaddr_r
+getnetbyname getnetbyname
+getnetbyname_r getnetbyname_r
+getnetent getnetent
+getnetent_r getnetent_r
+getnetgrent getnetgrent
+getnetgrent_r getnetgrent_r
+ > getnetname NEW: IPv6
+getopt getopt
+getopt_long getopt_long
+getopt_long_only getopt_long_only
+getpagesize getpagesize
+getpass getpass
+getpeername getpeername
+getpgid getpgid
+getpgrp getpgrp
+getpid getpid
+ > getpmsg NEW: STREAMS
+getppid getppid
+getpriority getpriority
+getprotobyname getprotobyname
+getprotobyname_r getprotobyname_r
+getprotobynumber getprotobynumber
+getprotobynumber_r getprotobynumber_r
+getprotoent getprotoent
+getprotoent_r getprotoent_r
+ > getpt NEW: Unix98 PTY
+getpublickey getpublickey
+getpw getpw
+getpwent getpwent
+getpwent_r getpwent_r
+getpwnam getpwnam
+getpwnam_r getpwnam_r
+getpwuid getpwuid
+getpwuid_r getpwuid_r
+getresgid getresgid
+getresuid getresuid
+getrlimit getrlimit
+ > getrlimit64 NEW: LFS
+getrpcbyname getrpcbyname
+getrpcbyname_r getrpcbyname_r
+getrpcbynumber getrpcbynumber
+getrpcbynumber_r getrpcbynumber_r
+getrpcent getrpcent
+getrpcent_r getrpcent_r
+getrpcport getrpcport
+getrusage getrusage
+gets gets
+getsecretkey getsecretkey
+getservbyname getservbyname
+getservbyname_r getservbyname_r
+getservbyport getservbyport
+getservbyport_r getservbyport_r
+getservent getservent
+getservent_r getservent_r
+getsid getsid
+getsockname getsockname
+getsockopt getsockopt
+getspent getspent
+getspent_r getspent_r
+getspnam getspnam
+getspnam_r getspnam_r
+getsubopt getsubopt
+gettext gettext
+gettimeofday gettimeofday
+getttyent getttyent
+getttynam getttynam
+getuid getuid
+getusershell getusershell
+getutent getutent
+getutent_r getutent_r
+getutid getutid
+getutid_r getutid_r
+getutline getutline
+getutline_r getutline_r
+ > getutxent NEW: utmpx
+ > getutxid NEW: utmpx
+ > getutxline NEW: utmpx
+getw getw
+getwd getwd
+glob glob
+ > glob64 NEW: GNU ext.
+glob_pattern_p glob_pattern_p
+globfree globfree
+ > globfree64 NEW: GNU ext.
+gmtime gmtime
+gmtime_r gmtime_r
+ > gnu_get_libc_release NEW: GNU ext.
+ > gnu_get_libc_version NEW: GNU ext.
+ > grantpt NEW: Unix98 PTY
+group_member group_member
+gsignal gsignal
+gtty gtty
+h_errlist h_errlist
+h_errno h_errno
+h_nerr h_nerr
+hasmntopt hasmntopt
+hcreate hcreate
+hcreate_r hcreate_r
+hdestroy hdestroy
+hdestroy_r hdestroy_r
+herror herror
+ > host2netname NEW: IPv6
+hsearch hsearch
+hsearch_r hsearch_r
+hstrerror hstrerror
+htonl htonl
+htons htons
+hypot hypot
+hypotf hypotf
+hypotl hypotl
+ > iconv NEW: iconv
+ > iconv_close NEW: iconv
+ > iconv_open NEW: iconv
+ > if_freenameindex NEW: IPv6
+ > if_indextoname NEW: IPv6
+ > if_nameindex NEW: IPv6
+ > if_nametoindex NEW: IPv6
+ilogb ilogb
+ilogbf ilogbf
+ilogbl ilogbl
+ > in6addr_any NEW: IPv6
+ > in6addr_loopback NEW: IPv6
+index index
+ > inet6_isipv4mapped NEW: IPv6
+inet_addr inet_addr
+inet_aton inet_aton
+inet_lnaof inet_lnaof
+inet_makeaddr inet_makeaddr
+inet_netof inet_netof
+inet_network inet_network
+inet_nsap_addr inet_nsap_addr
+inet_nsap_ntoa inet_nsap_ntoa
+inet_ntoa inet_ntoa
+inet_ntop inet_ntop
+inet_pton inet_pton
+init_module init_module
+initgroups initgroups
+initstate initstate
+initstate_r initstate_r
+innetgr innetgr
+insque insque
+ioctl ioctl
+ioperm ioperm
+iopl iopl
+iruserok iruserok
+isalnum isalnum
+isalpha isalpha
+isascii isascii
+ > isastream NEW: STREAMS
+isatty isatty
+isblank isblank
+iscntrl iscntrl
+isdigit isdigit
+isfdtype isfdtype
+isgraph isgraph
+isinf isinf
+isinff isinff
+isinfl isinfl
+islower islower
+isnan isnan
+isnanf isnanf
+isnanl isnanl
+isprint isprint
+ispunct ispunct
+isspace isspace
+isupper isupper
+iswalnum iswalnum
+iswalpha iswalpha
+ > iswblank NEW: GNU ext.
+iswcntrl iswcntrl
+iswctype iswctype
+iswdigit iswdigit
+iswgraph iswgraph
+iswlower iswlower
+iswprint iswprint
+iswpunct iswpunct
+iswspace iswspace
+iswupper iswupper
+iswxdigit iswxdigit
+isxdigit isxdigit
+j0 j0
+j0f j0f
+j0l j0l
+j1 j1
+j1f j1f
+j1l j1l
+jn jn
+jnf jnf
+jnl jnl
+jrand48 jrand48
+jrand48_r jrand48_r
+ > key_decryptsession NEW: NIS+
+ > key_decryptsession_pk NEW: NIS+
+ > key_encryptsession NEW: NIS+
+ > key_encryptsession_pk NEW: NIS+
+ > key_gendes NEW: NIS+
+ > key_get_conv NEW: NIS+
+ > key_secretkey_is_set NEW: NIS+
+ > key_setnet NEW: NIS+
+ > key_setsecret NEW: NIS+
+kill kill
+killpg killpg
+klogctl klogctl
+l64a l64a
+labs labs
+lchown lchown
+lckpwdf lckpwdf
+lcong48 lcong48
+lcong48_r lcong48_r
+ldexp ldexp
+ldexpf ldexpf
+ldexpl ldexpl
+ldiv ldiv
+lfind lfind
+lgamma lgamma
+lgamma_r lgamma_r
+lgammaf lgammaf
+lgammaf_r lgammaf_r
+lgammal lgammal
+lgammal_r lgammal_r
+link link
+listen listen
+llabs llabs
+lldiv lldiv
+ > llrint NEW: ISO C 9x
+ > llrintf NEW: ISO C 9x
+ > llrintl NEW: ISO C 9x
+ > llround NEW: ISO C 9x
+ > llroundf NEW: ISO C 9x
+ > llroundl NEW: ISO C 9x
+llseek llseek
+loc1 loc1
+loc2 loc2
+localeconv localeconv
+localtime localtime
+localtime_r localtime_r
+lockf lockf
+locs locs
+log log
+log10 log10
+log10f log10f
+log10l log10l
+log1p log1p
+log1pf log1pf
+log1pl log1pl
+ > log2 NEW: ISO C 9x
+ > log2f NEW: ISO C 9x
+ > log2l NEW: ISO C 9x
+logb logb
+logbf logbf
+logbl logbl
+logf logf
+logl logl
+longjmp longjmp
+lrand48 lrand48
+lrand48_r lrand48_r
+ > lrint NEW: ISO C 9x
+ > lrintf NEW: ISO C 9x
+ > lrintl NEW: ISO C 9x
+ > lround NEW: ISO C 9x
+ > lroundf NEW: ISO C 9x
+ > lroundl NEW: ISO C 9x
+lsearch lsearch
+lseek lseek
+ > lseek64 NEW: LFS
+madvise madvise
+ > makecontext NEW: Unix98
+mallinfo mallinfo
+malloc malloc
+malloc_get_state malloc_get_state
+malloc_set_state malloc_set_state
+malloc_stats malloc_stats
+malloc_trim malloc_trim
+malloc_usable_size malloc_usable_size
+mallopt mallopt
+mallwatch mallwatch
+matherr matherr
+mblen mblen
+mbrlen mbrlen
+mbrtowc mbrtowc
+mbsinit mbsinit
+mbsnrtowcs mbsnrtowcs
+mbsrtowcs mbsrtowcs
+mbstowcs mbstowcs
+mbtowc mbtowc
+mcheck mcheck
+mcount mcount
+memalign memalign
+memccpy memccpy
+memchr memchr
+memcmp memcmp
+memcpy memcpy
+memfrob memfrob
+memmem memmem
+memmove memmove
+ > mempcpy NEW: GNU ext.
+memset memset
+mkdir mkdir
+mkfifo mkfifo
+mkstemp mkstemp
+mktemp mktemp
+mktime mktime
+mlock mlock
+mlockall mlockall
+mmap mmap
+ > mmap64 NEW: LFS
+modf modf
+modff modff
+modfl modfl
+moncontrol < REMOVED
+ > modify_ldt NEW: kernel
+monstartup monstartup
+mount mount
+mprobe mprobe
+mprotect mprotect
+mrand48 mrand48
+mrand48_r mrand48_r
+mremap mremap
+msgctl msgctl
+msgget msgget
+msgrcv msgrcv
+msgsnd msgsnd
+msync msync
+mtrace mtrace
+munlock munlock
+munlockall munlockall
+munmap munmap
+muntrace muntrace
+ > nan NEW: ISO C 9x
+ > nanf NEW: ISO C 9x
+ > nanl NEW: ISO C 9x
+nanosleep nanosleep
+ > nearbyint NEW: ISO C 9x
+ > nearbyintf NEW: ISO C 9x
+ > nearbyintl NEW: ISO C 9x
+ > netname2host NEW: IPv6
+ > netname2user NEW: IPv6
+nextafter nextafter
+nextafterf nextafterf
+nextafterl nextafterl
+ > nextafterx NEW: ISO C 9x
+ > nextafterxf NEW: ISO C 9x
+nfsservctl nfsservctl
+ > nftw NEW: Unix98
+ > nftw64 NEW: LFS
+nice nice
+nl_langinfo nl_langinfo
+nrand48 nrand48
+nrand48_r nrand48_r
+ntohl ntohl
+ntohs ntohs
+obstack_alloc_failed_handler obstack_alloc_failed_handler
+obstack_exit_failure obstack_exit_failure
+obstack_free obstack_free
+obstack_printf obstack_printf
+obstack_vprintf obstack_vprintf
+on_exit on_exit
+open open
+ > open64 NEW: LFS
+open_memstream open_memstream
+opendir opendir
+openlog openlog
+optarg optarg
+opterr opterr
+optind optind
+optopt optopt
+parse_printf_format parse_printf_format
+ > passwd2des NEW: NIS+
+pathconf pathconf
+pause pause
+pclose pclose
+perror perror
+personality personality
+pipe pipe
+pmap_getmaps pmap_getmaps
+pmap_getport pmap_getport
+pmap_rmtcall pmap_rmtcall
+pmap_set pmap_set
+pmap_unset pmap_unset
+poll poll
+popen popen
+pow pow
+ > pow10 NEW: GNU ext.
+ > pow10f NEW: GNU ext.
+ > pow10l NEW: GNU ext.
+powf powf
+powl powl
+prctl prctl
+ > pread NEW: Unix98
+ > pread64 NEW: LFS
+printf printf
+ > printf_size NEW: GNU ext.
+ > printf_size_info NEW: GNU ext.
+profil profil
+profil_counter < REMOVED
+program_invocation_name program_invocation_name
+program_invocation_short_name program_invocation_short_name
+pselect pselect
+psignal psignal
+pthread_attr_destroy pthread_attr_destroy
+pthread_attr_getdetachstate pthread_attr_getdetachstate
+pthread_attr_getinheritsched pthread_attr_getinheritsched
+pthread_attr_getschedparam pthread_attr_getschedparam
+pthread_attr_getschedpolicy pthread_attr_getschedpolicy
+pthread_attr_getscope pthread_attr_getscope
+pthread_attr_init pthread_attr_init
+pthread_attr_setdetachstate pthread_attr_setdetachstate
+pthread_attr_setinheritsched pthread_attr_setinheritsched
+pthread_attr_setschedparam pthread_attr_setschedparam
+pthread_attr_setschedpolicy pthread_attr_setschedpolicy
+pthread_attr_setscope pthread_attr_setscope
+pthread_cond_broadcast pthread_cond_broadcast
+pthread_cond_destroy pthread_cond_destroy
+pthread_cond_init pthread_cond_init
+pthread_cond_signal pthread_cond_signal
+pthread_cond_wait pthread_cond_wait
+pthread_condattr_destroy pthread_condattr_destroy
+pthread_condattr_init pthread_condattr_init
+pthread_equal pthread_equal
+pthread_exit pthread_exit
+pthread_getschedparam pthread_getschedparam
+pthread_mutex_destroy pthread_mutex_destroy
+pthread_mutex_init pthread_mutex_init
+pthread_mutex_lock pthread_mutex_lock
+pthread_mutex_unlock pthread_mutex_unlock
+pthread_mutexattr_getkind_np < REPLACED
+pthread_mutexattr_setkind_np < REPLACED
+pthread_self pthread_self
+pthread_setcancelstate pthread_setcancelstate
+pthread_setcanceltype pthread_setcanceltype
+pthread_setschedparam pthread_setschedparam
+ptrace ptrace
+ > ptsname NEW: Unix98 PTY
+ > ptsname_r NEW: Unix98 PTY
+putc putc
+putc_locked < REMOVED
+putc_unlocked putc_unlocked
+putchar putchar
+putchar_locked < REMOVED
+putchar_unlocked putchar_unlocked
+putenv putenv
+ > putgrent NEW: GNU ext.
+ > putmsg NEW: STREAMS
+ > putpmsg NEW: STREAMS
+putpwent putpwent
+puts puts
+putspent putspent
+pututline pututline
+ > pututxline NEW: utmpx
+putw putw
+pvalloc pvalloc
+ > pwrite NEW: Unix98
+ > pwrite64 NEW: LFS
+qecvt qecvt
+qecvt_r qecvt_r
+qfcvt qfcvt
+qfcvt_r qfcvt_r
+qgcvt qgcvt
+qsort qsort
+query_module query_module
+quotactl quotactl
+raise raise
+rand rand
+rand_r rand_r
+random random
+random_r random_r
+rcmd rcmd
+re_comp re_comp
+re_compile_fastmap re_compile_fastmap
+re_compile_pattern re_compile_pattern
+re_exec re_exec
+re_match re_match
+re_match_2 re_match_2
+re_max_failures re_max_failures
+re_search re_search
+re_search_2 re_search_2
+re_set_registers re_set_registers
+re_set_syntax re_set_syntax
+re_syntax_options re_syntax_options
+read read
+readdir readdir
+ > readdir64 NEW: LFS
+ > readdir64_r NEW: LFS
+readdir_r readdir_r
+readlink readlink
+readv readv
+realloc realloc
+realpath realpath
+reboot reboot
+recv recv
+recvfrom recvfrom
+recvmsg recvmsg
+regcomp regcomp
+regerror regerror
+regexec regexec
+regfree regfree
+register_printf_function register_printf_function
+registerrpc registerrpc
+remainder remainder
+remainderf remainderf
+remainderl remainderl
+remove remove
+remque remque
+ > remquo NEW: ISO C 9x
+ > remquof NEW: ISO C 9x
+ > remquol NEW: ISO C 9x
+rename rename
+res_init res_init
+revoke revoke
+rewind rewind
+rewinddir rewinddir
+rexec rexec
+rexecoptions rexecoptions
+rindex rindex
+rint rint
+rintf rintf
+rintl rintl
+rmdir rmdir
+ > round NEW: ISO C 9x
+ > roundf NEW: ISO C 9x
+ > roundl NEW: ISO C 9x
+rpc_createerr rpc_createerr
+rpmatch rpmatch
+rresvport rresvport
+ > rtime NEW: GNU ext.
+ruserok ruserok
+ruserpass ruserpass
+sbrk sbrk
+scalb scalb
+scalbf scalbf
+scalbl scalbl
+ > scalbln NEW: ISO C 9x
+ > scalblnf NEW: ISO C 9x
+ > scalblnl NEW: ISO C 9x
+scalbn scalbn
+scalbnf scalbnf
+scalbnl scalbnl
+scandir scandir
+ > scandir64 NEW: LFS
+scanf scanf
+sched_get_priority_max sched_get_priority_max
+sched_get_priority_min sched_get_priority_min
+sched_getparam sched_getparam
+sched_getscheduler sched_getscheduler
+sched_rr_get_interval sched_rr_get_interval
+sched_setparam sched_setparam
+sched_setscheduler sched_setscheduler
+sched_yield sched_yield
+seed48 seed48
+seed48_r seed48_r
+seekdir seekdir
+select select
+semctl semctl
+semget semget
+semop semop
+send send
+ > sendfile NEW: kernel
+sendmsg sendmsg
+sendto sendto
+setaliasent setaliasent
+setbuf setbuf
+setbuffer setbuffer
+ > setcontext NEW: Unix98
+setdomainname setdomainname
+setegid setegid
+setenv setenv
+seteuid seteuid
+setfsent setfsent
+setfsgid setfsgid
+setfsuid setfsuid
+setgid setgid
+setgrent setgrent
+setgroups setgroups
+sethostent sethostent
+sethostid sethostid
+sethostname sethostname
+setitimer setitimer
+setjmp setjmp
+setlinebuf setlinebuf
+setlocale setlocale
+setlogin setlogin
+setlogmask setlogmask
+setmntent setmntent
+setnetent setnetent
+setnetgrent setnetgrent
+setpgid setpgid
+setpgrp setpgrp
+setpriority setpriority
+setprotoent setprotoent
+setpwent setpwent
+setregid setregid
+setresgid setresgid
+setresuid setresuid
+setreuid setreuid
+setrlimit setrlimit
+ > setrlimit64 NEW: LFS
+setrpcent setrpcent
+setservent setservent
+setsid setsid
+setsockopt setsockopt
+setspent setspent
+setstate setstate
+setstate_r setstate_r
+settimeofday settimeofday
+setttyent setttyent
+setuid setuid
+setusershell setusershell
+setutent setutent
+ > setutxent NEW: utmpx
+setvbuf setvbuf
+sgetspent sgetspent
+sgetspent_r sgetspent_r
+shmat shmat
+shmctl shmctl
+shmdt shmdt
+shmget shmget
+shutdown shutdown
+sigaction sigaction
+sigaddset sigaddset
+sigaltstack sigaltstack
+sigandset sigandset
+sigblock sigblock
+sigdelset sigdelset
+sigemptyset sigemptyset
+sigfillset sigfillset
+siggetmask siggetmask
+ > sighold NEW: Unix98
+ > sigignore NEW: Unix98
+siginterrupt siginterrupt
+sigisemptyset sigisemptyset
+sigismember sigismember
+siglongjmp siglongjmp
+signal signal
+signgam signgam
+significand significand
+significandf significandf
+significandl significandl
+sigorset sigorset
+sigpause sigpause
+sigpending sigpending
+sigprocmask sigprocmask
+ > sigqueue NEW: POSIX.1b
+ > sigrelse NEW: Unix98
+sigreturn sigreturn
+ > sigset NEW: POSIX.1b
+sigsetmask sigsetmask
+sigstack sigstack
+sigsuspend sigsuspend
+ > sigtimedwait NEW: POSIX.1b
+sigvec sigvec
+sigwait sigwait
+ > sigwaitinfo NEW: POSIX.1b
+sin sin
+ > sincos NEW: GNU ext.
+ > sincosf NEW: GNU ext.
+ > sincosl NEW: GNU ext.
+sinf sinf
+sinh sinh
+sinhf sinhf
+sinhl sinhl
+sinl sinl
+sleep sleep
+snprintf snprintf
+socket socket
+socketpair socketpair
+sprintf sprintf
+sqrt sqrt
+sqrtf sqrtf
+sqrtl sqrtl
+srand srand
+srand48 srand48
+srand48_r srand48_r
+srandom srandom
+srandom_r srandom_r
+sscanf sscanf
+ssignal ssignal
+sstk sstk
+statfs statfs
+ > statfs64 NEW: LFS
+ > statvfs NEW: Unix98
+ > statvfs64 NEW: LFS
+stderr stderr
+stdin stdin
+stdout stdout
+step step
+stime stime
+stpcpy stpcpy
+stpncpy stpncpy
+strcasecmp strcasecmp
+ > strcasestr NEW: GNU ext.
+strcat strcat
+strchr strchr
+strcmp strcmp
+strcoll strcoll
+strcpy strcpy
+strcspn strcspn
+strdup strdup
+strerror strerror
+strerror_r strerror_r
+strfmon strfmon
+strfry strfry
+strftime strftime
+ > strfxtime NEW: ISO C 9x
+strlen strlen
+strncasecmp strncasecmp
+strncat strncat
+strncmp strncmp
+strncpy strncpy
+strndup strndup
+strnlen strnlen
+strpbrk strpbrk
+strptime strptime
+strrchr strrchr
+strsep strsep
+strsignal strsignal
+strspn strspn
+strstr strstr
+strtod strtod
+strtof strtof
+ > strtoimax NEW: ISO C 9x
+strtok strtok
+strtok_r strtok_r
+strtol strtol
+strtold strtold
+strtoll strtoll
+strtoq strtoq
+strtoul strtoul
+strtoull strtoull
+ > strtoumax NEW: ISO C 9x
+strtouq strtouq
+ > strverscmp NEW: GNU ext.
+strxfrm strxfrm
+stty stty
+svc_exit svc_exit
+svc_fdset svc_fdset
+svc_getreq svc_getreq
+svc_getreqset svc_getreqset
+svc_register svc_register
+svc_run svc_run
+svc_sendreply svc_sendreply
+svc_unregister svc_unregister
+ > svcauthdes_stats NEW: NIS+
+svcerr_auth svcerr_auth
+svcerr_decode svcerr_decode
+svcerr_noproc svcerr_noproc
+svcerr_noprog svcerr_noprog
+svcerr_progvers svcerr_progvers
+svcerr_systemerr svcerr_systemerr
+svcerr_weakauth svcerr_weakauth
+svcfd_create svcfd_create
+svcraw_create svcraw_create
+svctcp_create svctcp_create
+svcudp_bufcreate svcudp_bufcreate
+svcudp_create svcudp_create
+svcudp_enablecache svcudp_enablecache
+ > svcunix_create NEW: sunrpc etx
+ > svcunixfd_create NEW: sunrpc ext
+swab swab
+ > swapcontext NEW: Unix98
+swapoff swapoff
+swapon swapon
+symlink symlink
+sync sync
+sys_errlist sys_errlist
+sys_nerr sys_nerr
+sys_sigabbrev sys_sigabbrev
+sys_siglist sys_siglist
+syscall syscall
+sysconf sysconf
+sysctl sysctl
+sysinfo sysinfo
+syslog syslog
+system system
+sysv_signal sysv_signal
+tan tan
+tanf tanf
+tanh tanh
+tanhf tanhf
+tanhl tanhl
+tanl tanl
+tcdrain tcdrain
+tcflow tcflow
+tcflush tcflush
+tcgetattr tcgetattr
+tcgetpgrp tcgetpgrp
+ > tcgetsid NEW: Unix98 PTY
+tcsendbreak tcsendbreak
+tcsetattr tcsetattr
+tcsetpgrp tcsetpgrp
+tdelete tdelete
+ > tdestroy NEW: GNU ext.
+telldir telldir
+tempnam tempnam
+textdomain textdomain
+tfind tfind
+ > tgamma NEW: ISO C 9x
+ > tgammaf NEW: ISO C 9x
+ > tgammal NEW: ISO C 9x
+time time
+timegm timegm
+timelocal timelocal
+times times
+timezone timezone
+tmpfile tmpfile
+ > tmpfile64 NEW: LFS
+tmpnam tmpnam
+tmpnam_r tmpnam_r
+toascii toascii
+tolower tolower
+toupper toupper
+towctrans towctrans
+towlower towlower
+towupper towupper
+tr_break tr_break
+ > trunc NEW: ISO C 9x
+truncate truncate
+ > truncate64 NEW: LFS
+ > truncf NEW: ISO C 9x
+ > truncl NEW: ISO C 9x
+tsearch tsearch
+ttyname ttyname
+ttyname_r ttyname_r
+ttyslot ttyslot
+twalk twalk
+tzname tzname
+tzset tzset
+ualarm ualarm
+ulckpwdf ulckpwdf
+ulimit ulimit
+umask umask
+umount umount
+ > umount2 NEW: kernel
+uname uname
+ungetc ungetc
+unlink unlink
+ > unlockpt NEW: Unix98 PTY
+unsetenv unsetenv
+updwtmp updwtmp
+ > updwtmpx NEW: utmpx
+uselib uselib
+ > user2netname NEW: IPv6
+usleep usleep
+ustat ustat
+utime utime
+utimes utimes
+utmpname utmpname
+ > utmpxname NEW: utmpx
+valloc valloc
+vasprintf vasprintf
+vdprintf vdprintf
+verr verr
+verrx verrx
+ > versionsort NEW: GNU ext.
+ > versionsort64 NEW: LFS
+vfork vfork
+vfprintf vfprintf
+vfscanf vfscanf
+vhangup vhangup
+vlimit vlimit
+vm86 vm86
+vprintf vprintf
+vscanf vscanf
+vsnprintf vsnprintf
+vsprintf vsprintf
+vsscanf vsscanf
+vsyslog vsyslog
+vtimes vtimes
+vwarn vwarn
+vwarnx vwarnx
+wait wait
+wait3 wait3
+wait4 wait4
+ > waitid NEW: Unix98
+waitpid waitpid
+warn warn
+warnx warnx
+wcpcpy wcpcpy
+wcpncpy wcpncpy
+wcrtomb wcrtomb
+ > wcscasecmp NEW: GNU ext.
+wcscat wcscat
+wcschr wcschr
+wcscmp wcscmp
+wcscoll wcscoll
+wcscpy wcscpy
+wcscspn wcscspn
+wcsdup wcsdup
+wcslen wcslen
+ > wcsncasecmp NEW: GNU ext.
+wcsncat wcsncat
+wcsncmp wcsncmp
+wcsncpy wcsncpy
+ > wcsnlen NEW: GNU ext.
+wcsnrtombs wcsnrtombs
+wcspbrk wcspbrk
+wcsrchr wcsrchr
+wcsrtombs wcsrtombs
+wcsspn wcsspn
+wcsstr wcsstr
+wcstod wcstod
+wcstof wcstof
+ > wcstoimax NEW: ISO C 9x
+wcstok wcstok
+wcstol wcstol
+wcstold wcstold
+ > wcstoll NEW: ISO C 9x
+wcstombs wcstombs
+wcstoq wcstoq
+wcstoul wcstoul
+ > wcstoull NEW: ISO C 9x
+ > wcstoumax NEW: ISO C 9x
+wcstouq wcstouq
+ > wcswcs NEW: Unix98
+wcswidth wcswidth
+wcsxfrm wcsxfrm
+wctob wctob
+wctomb wctomb
+wctrans wctrans
+wctype wctype
+wcwidth wcwidth
+wmemchr wmemchr
+wmemcmp wmemcmp
+wmemcpy wmemcpy
+wmemmove wmemmove
+wmemset wmemset
+ > wordexp NEW: POSIX.2
+ > wordfree NEW: POSIX.2
+write write
+write_profiling < REMOVED
+writev writev
+ > xdecrypt NEW: NIS+
+xdr_accepted_reply xdr_accepted_reply
+xdr_array xdr_array
+ > xdr_authdes_cred NEW: NIS+
+ > xdr_authdes_verf NEW: NIS+
+xdr_authunix_parms xdr_authunix_parms
+xdr_bool xdr_bool
+xdr_bytes xdr_bytes
+xdr_callhdr xdr_callhdr
+xdr_callmsg xdr_callmsg
+xdr_char xdr_char
+ > xdr_cryptkeyarg NEW: NIS+
+ > xdr_cryptkeyarg2 NEW: NIS+
+ > xdr_cryptkeyres NEW: NIS+
+xdr_des_block xdr_des_block
+xdr_double xdr_double
+xdr_enum xdr_enum
+xdr_float xdr_float
+xdr_free xdr_free
+ > xdr_getcredres NEW: NIS+
+xdr_int xdr_int
+ > xdr_key_netstarg NEW: NIS+
+ > xdr_key_netstres NEW: NIS+
+ > xdr_keybuf NEW: NIS+
+ > xdr_keystatus NEW: NIS+
+xdr_long xdr_long
+ > xdr_netnamestr NEW: NIS+
+xdr_netobj xdr_netobj
+xdr_opaque xdr_opaque
+xdr_opaque_auth xdr_opaque_auth
+xdr_pmap xdr_pmap
+xdr_pmaplist xdr_pmaplist
+xdr_pointer xdr_pointer
+xdr_reference xdr_reference
+xdr_rejected_reply xdr_rejected_reply
+xdr_replymsg xdr_replymsg
+xdr_rmtcall_args xdr_rmtcall_args
+xdr_rmtcallres xdr_rmtcallres
+xdr_short xdr_short
+ > xdr_sizeof NEW: NIS+
+xdr_string xdr_string
+xdr_u_char xdr_u_char
+xdr_u_int xdr_u_int
+xdr_u_long xdr_u_long
+xdr_u_short xdr_u_short
+xdr_union xdr_union
+ > xdr_unixcred NEW: sunrpc ext
+xdr_vector xdr_vector
+xdr_void xdr_void
+xdr_wrapstring xdr_wrapstring
+xdrmem_create xdrmem_create
+xdrrec_create xdrrec_create
+xdrrec_endofrecord xdrrec_endofrecord
+xdrrec_eof xdrrec_eof
+xdrrec_skiprecord xdrrec_skiprecord
+xdrstdio_create xdrstdio_create
+ > xencrypt NEW: NIS+
+xprt_register xprt_register
+xprt_unregister xprt_unregister
+y0 y0
+y0f y0f
+y0l y0l
+y1 y1
+y1f y1f
+y1l y1l
+yn yn
+ynf ynf
+ynl ynl
diff --git a/NEWS b/NEWS
index 86d94f3..8794dfc 100644
--- a/NEWS
+++ b/NEWS
@@ -55,8 +55,30 @@ Version 2.1
* An implementation of profiling shared libraries was added by Ulrich Drepper.
-* Thorsten Kukuk provided an implementation for a caching daemon for NSS
- (nscd).
+* Thorsten Kukuk and Ulrich Drepper provided an implementation for a caching
+ daemon for NSS (nscd).
+
+ Missing a better place here are some numbers on improvements. Under
+ Linux 2.1.125 un-tar-ing the kernel sources takes
+
+ user system wall
+
+ using local files 12.19s 6.88s 22.91s
+
+ using NIS 13.92s 8.91s 26.34s
+
+ using NIS & nscd 10.37s 7.34s 25.30s
+
+ using NIS & old nscd [1] 13.83s 8.32s 29.60s
+
+ When NIS+ is used instead of NIS the benefit from using nscd is much bigger.
+ Keep in mind that non-namelookup related operations dominate above times.
+ It was just a common complain that using NIS+ unpacking the kernel is
+ horribly slow. When using nscd unpacking is now even faster than using
+ NIS.
+
+ [1] The old nscd implementation is not anymore available since it was
+ distributed with glibc up to version 2.0.98.
* Tim Waugh provided an implementation of the POSIX.2 wordexp function family.
@@ -66,6 +88,340 @@ Version 2.1
and $PLATFORM) in RPATHs and similar strings (Ulrich Drepper).
* rcmd can now handle netgroups (Dick Streefland).
+
+* Interface changes relative to the latest 2.0.x release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+addseverity NEW: fmtmsg
+alphasort64 NEW: LFS
+argp_err_exit_status NEW: argp
+argp_error NEW: argp
+argp_failure NEW: argp
+argp_help NEW: argp
+argp_parse NEW: argp
+argp_program_bug_address NEW: argp
+argp_program_version NEW: argp
+argp_program_version_hook NEW: argp
+argp_state_help NEW: argp
+argp_usage NEW: argp
+authdes_create NEW: NIS+
+authdes_getucred NEW: NIS+
+authdes_pk_create NEW: NIS+
+backtrace NEW: GNU ext.
+backtrace_symbols NEW: GNU ext.
+backtrace_symbols_fd NEW: GNU ext.
+cacos NEW: ISO C 9x
+cacosf NEW: ISO C 9x
+cacosh NEW: ISO C 9x
+cacoshf NEW: ISO C 9x
+cacoshl NEW: ISO C 9x
+cacosl NEW: ISO C 9x
+capget NEW: kernel
+capset NEW: kernel
+carg NEW: ISO C 9x
+cargf NEW: ISO C 9x
+cargl NEW: ISO C 9x
+casin NEW: ISO C 9x
+casinf NEW: ISO C 9x
+casinh NEW: ISO C 9x
+casinhf NEW: ISO C 9x
+casinhl NEW: ISO C 9x
+casinl NEW: ISO C 9x
+catan NEW: ISO C 9x
+catanf NEW: ISO C 9x
+catanh NEW: ISO C 9x
+catanhf NEW: ISO C 9x
+catanhl NEW: ISO C 9x
+catanl NEW: ISO C 9x
+cbc_crypt NEW: NIS+
+ccos NEW: ISO C 9x
+ccosf NEW: ISO C 9x
+ccosh NEW: ISO C 9x
+ccoshf NEW: ISO C 9x
+ccoshl NEW: ISO C 9x
+ccosl NEW: ISO C 9x
+cexp NEW: ISO C 9x
+cexpf NEW: ISO C 9x
+cexpl NEW: ISO C 9x
+cimag NEW: ISO C 9x
+cimagf NEW: ISO C 9x
+cimagl NEW: ISO C 9x
+clearerr_locked REMOVED
+clntunix_create NEW: sunrpc ext
+clog NEW: ISO C 9x
+clog10 NEW: ISO C 9x
+clog10f NEW: ISO C 9x
+clog10l NEW: ISO C 9x
+clogf NEW: ISO C 9x
+clogl NEW: ISO C 9x
+conj NEW: ISO C 9x
+conjf NEW: ISO C 9x
+conjl NEW: ISO C 9x
+cpow NEW: ISO C 9x
+cpowf NEW: ISO C 9x
+cpowl NEW: ISO C 9x
+cproj NEW: ISO C 9x
+cprojf NEW: ISO C 9x
+cprojl NEW: ISO C 9x
+creal NEW: ISO C 9x
+crealf NEW: ISO C 9x
+creall NEW: ISO C 9x
+creat64 NEW: LFS
+csin NEW: ISO C 9x
+csinf NEW: ISO C 9x
+csinh NEW: ISO C 9x
+csinhf NEW: ISO C 9x
+csinhl NEW: ISO C 9x
+csinl NEW: ISO C 9x
+csqrt NEW: ISO C 9x
+csqrtf NEW: ISO C 9x
+csqrtl NEW: ISO C 9x
+ctan NEW: ISO C 9x
+ctanf NEW: ISO C 9x
+ctanh NEW: ISO C 9x
+ctanhf NEW: ISO C 9x
+ctanhl NEW: ISO C 9x
+ctanl NEW: ISO C 9x
+des_setparity NEW: NIS+
+ecb_crypt NEW: NIS+
+endutxent NEW: utmpx
+exp10 NEW: ISO C 9x
+exp10f NEW: ISO C 9x
+exp10l NEW: ISO C 9x
+exp2 NEW: ISO C 9x
+exp2f NEW: ISO C 9x
+exp2l NEW: ISO C 9x
+fattach NEW: STREAMS
+fdetach NEW: STREAMS
+fdim NEW: ISO C 9x
+fdimf NEW: ISO C 9x
+fdiml NEW: ISO C 9x
+feclearexcept NEW: ISO C 9x
+fegetenv NEW: ISO C 9x
+fegetexceptflag NEW: ISO C 9x
+fegetround NEW: ISO C 9x
+feholdexcept NEW: ISO C 9x
+feof_locked REMOVED
+feraiseexcept NEW: ISO C 9x
+ferror_locked REMOVED
+fesetenv NEW: ISO C 9x
+fesetexceptflag NEW: ISO C 9x
+fesetround NEW: ISO C 9x
+fetestexcept NEW: ISO C 9x
+feupdateenv NEW: ISO C 9x
+fflush_locked REMOVED
+ffsl NEW: GNU ext.
+ffsll NEW: GNU ext.
+fgetpos64 NEW: LFS
+fgets_unlocked NEW: GNU ext.
+fileno_locked REMOVED
+fma NEW: ISO C 9x
+fmaf NEW: ISO C 9x
+fmal NEW: ISO C 9x
+fmax NEW: ISO C 9x
+fmaxf NEW: ISO C 9x
+fmaxl NEW: ISO C 9x
+fmin NEW: ISO C 9x
+fminf NEW: ISO C 9x
+fminl NEW: ISO C 9x
+fmtmsg NEW: fmtmsg
+fopen64 NEW: LFS
+fputc_locked REMOVED
+fputs_unlocked NEW: GNU ext.
+fread_unlocked NEW: GNU ext.
+freopen64 NEW: LFS
+fseeko NEW: Unix98
+fsetpos64 NEW: LFS
+fstatfs64 NEW: LFS
+fstatvfs NEW: Unix98
+fstatvfs64 NEW: LFS
+ftello NEW: Unix98
+ftello64 NEW: LFS
+ftruncate64 NEW: LFS
+ftw64 NEW: LFS
+fwrite_unlocked NEW: GNU ext.
+gai_strerror NEW: IPv6
+gamma_r REMOVED
+gammaf_r REMOVED
+gammal_r REMOVED
+getchar_locked REMOVED
+getdate NEW: Unix98
+getdate_err NEW: Unix98
+getdate_r NEW: GNU ext.
+getmsg NEW: STREAMS
+getnameinfo NEW: IPv6
+getnetname NEW: IPv6
+getpmsg NEW: STREAMS
+getpt NEW: Unix98 PTY
+getrlimit64 NEW: LFS
+getutxent NEW: utmpx
+getutxid NEW: utmpx
+getutxline NEW: utmpx
+glob64 NEW: GNU ext.
+globfree64 NEW: GNU ext.
+gnu_get_libc_release NEW: GNU ext.
+gnu_get_libc_version NEW: GNU ext.
+grantpt NEW: Unix98 PTY
+host2netname NEW: IPv6
+iconv NEW: iconv
+iconv_close NEW: iconv
+iconv_open NEW: iconv
+if_freenameindex NEW: IPv6
+if_indextoname NEW: IPv6
+if_nameindex NEW: IPv6
+if_nametoindex NEW: IPv6
+in6addr_any NEW: IPv6
+in6addr_loopback NEW: IPv6
+inet6_isipv4mapped NEW: IPv6
+isastream NEW: STREAMS
+iswblank NEW: GNU ext.
+key_decryptsession NEW: NIS+
+key_decryptsession_pk NEW: NIS+
+key_encryptsession NEW: NIS+
+key_encryptsession_pk NEW: NIS+
+key_gendes NEW: NIS+
+key_get_conv NEW: NIS+
+key_secretkey_is_set NEW: NIS+
+key_setnet NEW: NIS+
+key_setsecret NEW: NIS+
+llrint NEW: ISO C 9x
+llrintf NEW: ISO C 9x
+llrintl NEW: ISO C 9x
+llround NEW: ISO C 9x
+llroundf NEW: ISO C 9x
+llroundl NEW: ISO C 9x
+log2 NEW: ISO C 9x
+log2f NEW: ISO C 9x
+log2l NEW: ISO C 9x
+lrint NEW: ISO C 9x
+lrintf NEW: ISO C 9x
+lrintl NEW: ISO C 9x
+lround NEW: ISO C 9x
+lroundf NEW: ISO C 9x
+lroundl NEW: ISO C 9x
+lseek64 NEW: LFS
+makecontext NEW: Unix98
+mempcpy NEW: GNU ext.
+mmap64 NEW: LFS
+moncontrol REMOVED
+modify_ldt NEW: kernel
+nan NEW: ISO C 9x
+nanf NEW: ISO C 9x
+nanl NEW: ISO C 9x
+nearbyint NEW: ISO C 9x
+nearbyintf NEW: ISO C 9x
+nearbyintl NEW: ISO C 9x
+netname2host NEW: IPv6
+netname2user NEW: IPv6
+nextafterx NEW: ISO C 9x
+nextafterxf NEW: ISO C 9x
+nftw NEW: Unix98
+nftw64 NEW: LFS
+open64 NEW: LFS
+passwd2des NEW: NIS+
+pow10 NEW: GNU ext.
+pow10f NEW: GNU ext.
+pow10l NEW: GNU ext.
+pread NEW: Unix98
+pread64 NEW: LFS
+printf_size NEW: GNU ext.
+printf_size_info NEW: GNU ext.
+profil_counter REMOVED
+pthread_mutexattr_getkind_np REPLACED
+pthread_mutexattr_setkind_np REPLACED
+ptsname NEW: Unix98 PTY
+ptsname_r NEW: Unix98 PTY
+putc_locked REMOVED
+putchar_locked REMOVED
+putgrent NEW: GNU ext.
+putmsg NEW: STREAMS
+putpmsg NEW: STREAMS
+pututxline NEW: utmpx
+pwrite NEW: Unix98
+pwrite64 NEW: LFS
+readdir64 NEW: LFS
+readdir64_r NEW: LFS
+remquo NEW: ISO C 9x
+remquof NEW: ISO C 9x
+remquol NEW: ISO C 9x
+round NEW: ISO C 9x
+roundf NEW: ISO C 9x
+roundl NEW: ISO C 9x
+rtime NEW: GNU ext.
+scalbln NEW: ISO C 9x
+scalblnf NEW: ISO C 9x
+scalblnl NEW: ISO C 9x
+scandir64 NEW: LFS
+sendfile NEW: kernel
+setcontext NEW: Unix98
+setrlimit64 NEW: LFS
+setutxent NEW: utmpx
+sighold NEW: Unix98
+sigignore NEW: Unix98
+sigqueue NEW: POSIX.1b
+sigrelse NEW: Unix98
+sigset NEW: POSIX.1b
+sigtimedwait NEW: POSIX.1b
+sigwaitinfo NEW: POSIX.1b
+sincos NEW: GNU ext.
+sincosf NEW: GNU ext.
+sincosl NEW: GNU ext.
+statfs64 NEW: LFS
+statvfs NEW: Unix98
+statvfs64 NEW: LFS
+strcasestr NEW: GNU ext.
+strfxtime NEW: ISO C 9x
+strtoimax NEW: ISO C 9x
+strtoumax NEW: ISO C 9x
+strverscmp NEW: GNU ext.
+svcauthdes_stats NEW: NIS+
+svcunix_create NEW: sunrpc etx
+svcunixfd_create NEW: sunrpc ext
+swapcontext NEW: Unix98
+tcgetsid NEW: Unix98 PTY
+tdestroy NEW: GNU ext.
+tgamma NEW: ISO C 9x
+tgammaf NEW: ISO C 9x
+tgammal NEW: ISO C 9x
+tmpfile64 NEW: LFS
+trunc NEW: ISO C 9x
+truncate64 NEW: LFS
+truncf NEW: ISO C 9x
+truncl NEW: ISO C 9x
+umount2 NEW: kernel
+unlockpt NEW: Unix98 PTY
+updwtmpx NEW: utmpx
+user2netname NEW: IPv6
+utmpxname NEW: utmpx
+versionsort NEW: GNU ext.
+versionsort64 NEW: LFS
+waitid NEW: Unix98
+wcscasecmp NEW: GNU ext.
+wcsncasecmp NEW: GNU ext.
+wcsnlen NEW: GNU ext.
+wcstoimax NEW: ISO C 9x
+wcstoll NEW: ISO C 9x
+wcstoull NEW: ISO C 9x
+wcstoumax NEW: ISO C 9x
+wcswcs NEW: Unix98
+wordexp NEW: POSIX.2
+wordfree NEW: POSIX.2
+write_profiling REMOVED
+xdecrypt NEW: NIS+
+xdr_authdes_cred NEW: NIS+
+xdr_authdes_verf NEW: NIS+
+xdr_cryptkeyarg NEW: NIS+
+xdr_cryptkeyarg2 NEW: NIS+
+xdr_cryptkeyres NEW: NIS+
+xdr_getcredres NEW: NIS+
+xdr_key_netstarg NEW: NIS+
+xdr_key_netstres NEW: NIS+
+xdr_keybuf NEW: NIS+
+xdr_keystatus NEW: NIS+
+xdr_netnamestr NEW: NIS+
+xdr_sizeof NEW: NIS+
+xdr_unixcred NEW: sunrpc ext
+xencrypt NEW: NIS+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Version 2.0.5
diff --git a/math/tgmath.h b/math/tgmath.h
index 76513f7..d15a75d 100644
--- a/math/tgmath.h
+++ b/math/tgmath.h
@@ -40,87 +40,133 @@
only defined on real valued parameters and those which are defined
for complex functions as well. */
# define __TGMATH_UNARY_REAL_ONLY(Val, Fct) \
- (__extension__ (sizeof (Val) == sizeof (double) \
- ? Fct (Val) \
- : (sizeof (Val) == sizeof (long double) \
- ? Fct##l (Val) \
- : Fct##f (Val))))
+ (__extension__ ({ __typeof__ (Val) __tgmres; \
+ if (sizeof (Val) == sizeof (double)) \
+ __tgmres = Fct (Val); \
+ else if (sizeof (Val) == sizeof (float)) \
+ __tgmres = Fct##f (Val); \
+ else \
+ __tgmres = Fct##l (Val); \
+ __tgmres; }))
# define __TGMATH_BINARY_FIRST_REAL_ONLY(Val1, Val2, Fct) \
- (__extension__ (sizeof (Val1) > sizeof (double) \
- ? Fct##l (Val1, Val2) \
- : (sizeof (Val1) == sizeof (double) \
- ? Fct (Val1, Val2) \
- : Fct##f (Val1, Val2))))
+ (__extension__ ({ __typeof__ (Val1) __tgmres; \
+ if (sizeof (Val1) == sizeof (double)) \
+ __tgmres = Fct (Val1, Val2); \
+ else if (sizeof (Val1) == sizeof (float)) \
+ __tgmres = Fct##f (Val1, Val2); \
+ else \
+ __tgmres = Fct##l (Val1, Val2); \
+ __tgmres; }))
# define __TGMATH_BINARY_REAL_ONLY(Val1, Val2, Fct) \
- (__extension__ (sizeof (Val1) > sizeof (double) \
- || sizeof (Val2) > sizeof (double) \
- ? Fct##l (Val1, Val2) \
- : (sizeof (Val1) == sizeof (double) \
- || sizeof (Val2) == sizeof (double) \
- ? Fct (Val1, Val2) \
- : Fct##f (Val1, Val2))))
+ (__extension__ ({ __typeof__ ((Val1) + (Val2)) __tgmres; \
+ if (sizeof (Val1) > sizeof (double) \
+ || sizeof (Val2) > sizeof (double)) \
+ __tgmres = Fct##l (Val1, Val2); \
+ else if (sizeof (Val1) == sizeof (double) \
+ || sizeof (Val2) == sizeof (double)) \
+ __tgmres = Fct (Val1, Val2); \
+ else \
+ __tgmres = Fct (Val1, Val2); \
+ __tgmres; }))
# define __TGMATH_TERNARY_FIRST_SECOND_REAL_ONLY(Val1, Val2, Val3, Fct) \
- (__extension__ (sizeof (Val1) > sizeof (double) \
- || sizeof (Val2) > sizeof (double) \
- ? Fct##l (Val1, Val2, Val3) \
- : (sizeof (Val1) == sizeof (double) \
- || sizeof (Val2) == sizeof (double) \
- ? Fct (Val1, Val2, Val3) \
- : Fct##f (Val1, Val2, Val3))))
+ (__extension__ ({ __typeof__ ((Val1) + (Val2)) __tgmres; \
+ if (sizeof (Val1) > sizeof (double) \
+ || sizeof (Val2) > sizeof (double)) \
+ __tgmres = Fct##l (Val1, Val2, Val3); \
+ else if (sizeof (Val1) == sizeof (double) \
+ || sizeof (Val2) == sizeof (double)) \
+ __tgmres = Fct (Val1, Val2, Val3); \
+ else \
+ __tgmres = Fct (Val1, Val2, Val3); \
+ __tgmres; }))
# define __TGMATH_TERNARY_REAL_ONLY(Val1, Val2, Val3, Fct) \
- (__extension__ (sizeof (Val1) > sizeof (double) \
- || sizeof (Val2) > sizeof (double) \
- || sizeof (Val3) > sizeof (double) \
- ? Fct##l (Val1, Val2, Val3) \
- : (sizeof (Val1) == sizeof (double) \
- || sizeof (Val2) == sizeof (double) \
- || sizeof (Val3) == sizeof (double) \
- ? Fct (Val1, Val2, Val3) \
- : Fct##f (Val1, Val2, Val3))))
+ (__extension__ ({ __typeof__ ((Val1) + (Val2) + (Val3)) __tgmres; \
+ if (sizeof (Val1) > sizeof (double) \
+ || sizeof (Val2) > sizeof (double) \
+ || sizeof (Val3) > sizeof (double)) \
+ __tgmres = Fct##l (Val1, Val2, Val3); \
+ else if (sizeof (Val1) == sizeof (double) \
+ || sizeof (Val2) == sizeof (double) \
+ || sizeof (Val3) == sizeof (double)) \
+ __tgmres = Fct (Val1, Val2, Val3); \
+ else \
+ __tgmres = Fct (Val1, Val2, Val3); \
+ __tgmres; }))
+/* XXX This definition has to be changed as soon as the compiler understands
+ the imaginary keyword. */
# define __TGMATH_UNARY_REAL_IMAG(Val, Fct, Cfct) \
- (__extension__ (sizeof (__real__ (Val)) > sizeof (double) \
- ? (sizeof (__real__ (Val)) == sizeof (Val) \
- ? Fct##l (Val) \
- : Cfct##l (Val)) \
- : (sizeof (__real__ (Val)) == sizeof (double) \
- ? (sizeof (__real__ (Val)) == sizeof (Val) \
- ? Fct (Val) \
- : Cfct (Val)) \
- : (sizeof (__real__ (Val)) == sizeof (Val) \
- ? Fct##f (Val) \
- : Cfct##f (Val)))))
+ (__extension__ ({ __typeof__ (Val) __tgmres; \
+ if (sizeof (__real__ (Val)) > sizeof (double)) \
+ { \
+ if (sizeof (__real__ (Val)) == sizeof (Val)) \
+ __tgmres = Fct##l (Val); \
+ else \
+ __tgmres = Cfct##l (Val); \
+ } \
+ else if (sizeof (__real__ (Val)) == sizeof (double)) \
+ { \
+ if (sizeof (__real__ (Val)) == sizeof (Val)) \
+ __tgmres = Fct (Val); \
+ else \
+ __tgmres = Cfct (Val); \
+ } \
+ else \
+ { \
+ if (sizeof (__real__ (Val)) == sizeof (Val)) \
+ __tgmres = Fct##f (Val); \
+ else \
+ __tgmres = Cfct##f (Val); \
+ } \
+ __tgmres; }))
/* XXX This definition has to be changed as soon as the compiler understands
the imaginary keyword. */
# define __TGMATH_UNARY_IMAG_ONLY(Val, Fct) \
- (__extension__ (sizeof (Val) > sizeof (__complex__ double) \
- ? Fct##l (Val) \
- : (sizeof (Val) == sizeof (__complex__ double) \
- ? Fct (Val) \
- : Fct##f (Val))))
+ (__extension__ ({ __typeof__ (Val) __tgmres; \
+ if (sizeof (Val) == sizeof (__complex__ double)) \
+ __tgmres = Fct (Val); \
+ else if (sizeof (Val) == sizeof (__complex__ float)) \
+ __tgmres = Fct##f (Val); \
+ else \
+ __tgmres = Fct##l (Val); \
+ __tgmres; }))
+/* XXX This definition has to be changed as soon as the compiler understands
+ the imaginary keyword. */
# define __TGMATH_BINARY_REAL_IMAG(Val1, Val2, Fct, Cfct) \
- (__extension__ (sizeof (__real__ (Val1)) > sizeof (double) \
- || sizeof (__real__ (Val2)) > sizeof (double) \
- ? (sizeof (__real__ (Val1)) == sizeof (Val1) \
- && sizeof (__real__ (Val2)) == sizeof (Val2) \
- ? Fct##l (Val1, Val2) \
- : Cfct##l (Val1, Val2)) \
- : (sizeof (__real__ (Val1)) == sizeof (double) \
- || sizeof (__real__ (Val2)) == sizeof (double) \
- ? (sizeof (__real__ (Val1)) == sizeof (Val1) \
- && sizeof (__real__ (Val2)) == sizeof (Val2) \
- ? Fct (Val1, Val2) \
- : Cfct (Val1, Val2)) \
- : (sizeof (__real__ (Val1)) == sizeof (Val1) \
- && sizeof (__real__ (Val2)) == sizeof (Val2) \
- ? Fct##f (Val1, Val2) \
- : Cfct##f (Val1, Val2)))))
+ (__extension__ ({ __typeof__ ((Val1) + (Val2)) __tgmres; \
+ if (sizeof (__real__ (Val1)) > sizeof (double) \
+ || sizeof (__real__ (Val2)) > sizeof (double)) \
+ { \
+ if (sizeof (__real__ (Val1)) == sizeof (Val1) \
+ && sizeof (__real__ (Val2)) == sizeof (Val2)) \
+ __tgmres = Fct##l (Val1, Val2); \
+ else \
+ __tgmres = Cfct##l (Val1, Val2); \
+ } \
+ else if (sizeof (__real__ (Val1)) == sizeof (double) \
+ || sizeof (__real__ (Val2)) == sizeof(double))\
+ { \
+ if (sizeof (__real__ (Val1)) == sizeof (Val1) \
+ && sizeof (__real__ (Val2)) == sizeof (Val2)) \
+ __tgmres = Fct (Val1, Val2); \
+ else \
+ __tgmres = Cfct (Val1, Val2); \
+ } \
+ else \
+ { \
+ if (sizeof (__real__ (Val1)) == sizeof (Val1) \
+ && sizeof (__real__ (Val2)) == sizeof (Val2)) \
+ __tgmres = Fct##f (Val1, Val2); \
+ else \
+ __tgmres = Cfct##f (Val1, Val2); \
+ } \
+ __tgmres; }))
#else
# error "Unsupported compiler; you cannot use <tgmath.h>"
#endif