Print this page
first round of POSIX 2008 stuff

*** 18,27 **** --- 18,28 ---- * * CDDL HEADER END */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> * Copyright (c) 2013 Gary Mills * * Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved. */
*** 85,96 **** #ifndef _UID_T #define _UID_T typedef unsigned int uid_t; /* UID type */ #endif /* !_UID_T */ - #if defined(__STDC__) - /* large file compilation environment setup */ #if !defined(_LP64) && _FILE_OFFSET_BITS == 64 #ifdef __PRAGMA_REDEFINE_EXTNAME #pragma redefine_extname mkstemp mkstemp64 --- 86,95 ----
*** 177,193 **** #if !defined(_XPG4_2) || defined(__EXTENSIONS__) extern int mkstemps64(char *, int); #endif #endif /* _LARGEFILE64_SOURCE... */ #if defined(__EXTENSIONS__) || \ (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX)) || \ defined(_XPG4_2) extern long a64l(const char *); - extern char *ecvt(double, int, int *_RESTRICT_KYWD, int *_RESTRICT_KYWD); - extern char *fcvt(double, int, int *_RESTRICT_KYWD, int *_RESTRICT_KYWD); - extern char *gcvt(double, int, char *); extern int getsubopt(char **, char *const *, char **); extern int grantpt(int); extern char *initstate(unsigned, char *, size_t); extern char *l64a(long); extern char *mktemp(char *); --- 176,196 ---- #if !defined(_XPG4_2) || defined(__EXTENSIONS__) extern int mkstemps64(char *, int); #endif #endif /* _LARGEFILE64_SOURCE... */ + /* Added in XPG4.2, obsoleted in Issue 6, removed in Issue 7 */ + #if !defined(_STRICT_SYMBOLS) || (defined(_XPG4_2) && !defined(_XPG7)) + extern char *ecvt(double, int, int *_RESTRICT_KYWD, int *_RESTRICT_KYWD); + extern char *fcvt(double, int, int *_RESTRICT_KYWD, int *_RESTRICT_KYWD); + extern char *gcvt(double, int, char *); + #endif + #if defined(__EXTENSIONS__) || \ (!defined(_STRICT_STDC) && !defined(__XOPEN_OR_POSIX)) || \ defined(_XPG4_2) extern long a64l(const char *); extern int getsubopt(char **, char *const *, char **); extern int grantpt(int); extern char *initstate(unsigned, char *, size_t); extern char *l64a(long); extern char *mktemp(char *);
*** 259,390 **** extern char *ulltostr(unsigned long long, char *); #endif /* !defined(_STRICT_STDC) && defined(_LONGLONG_TYPE) */ #endif /* defined(__EXTENSIONS__) || !defined(_STRICT_STDC) ... */ - #else /* not __STDC__ */ - - #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || \ - (_POSIX_C_SOURCE - 0 >= 199506L) || defined(_REENTRANT) - extern int rand_r(); - #endif /* defined(__EXTENSIONS__) || defined(_REENTRANT) ... */ - - extern void _exithandle(); - - #if defined(__EXTENSIONS__) || !defined(_POSIX_C_SOURCE) || defined(_XPG4) - extern double drand48(); - extern double erand48(); - extern long jrand48(); - extern void lcong48(); - extern long lrand48(); - extern long mrand48(); - extern long nrand48(); - extern unsigned short *seed48(); - extern void srand48(); - extern int putenv(); - extern void setkey(); - #endif /* defined(__EXTENSIONS__) || !defined(_POSIX_C_SOURCE) ... */ - - #if (defined(__EXTENSIONS__) || !defined(_POSIX_C_SOURCE)) && \ - (!defined(_XOPEN_SOURCE) || (defined(_XPG3) && !defined(_XPG4))) - extern void swab(); - #endif - - #if defined(__EXTENSIONS__) || \ - !defined(__XOPEN_OR_POSIX) || defined(_XPG4_2) || \ - (defined(_LARGEFILE_SOURCE) && _FILE_OFFSET_BITS == 64) - extern int mkstemp(); - #if !defined(_XPG4_2) || defined(__EXTENSIONS__) - extern int mkstemps(); - #endif - #endif /* defined(__EXTENSIONS__) ... */ - - #if defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \ - !defined(__PRAGMA_REDEFINE_EXTNAME)) - extern int mkstemp64(); - #if !defined(_XPG4_2) || defined(__EXTENSIONS__) - extern int mkstemps64(); - #endif - #endif /* _LARGEFILE64_SOURCE... */ - - #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || defined(_XPG4_2) - extern long a64l(); - extern char *ecvt(); - extern char *fcvt(); - extern char *gcvt(); - extern int getsubopt(); - extern int grantpt(); - extern char *initstate(); - extern char *l64a(); - extern char *mktemp(); - extern char *ptsname(); - extern long random(); - extern char *realpath(); - extern char *setstate(); - extern void srandom(); - /* Marked LEGACY in SUSv2 and removed in SUSv3 */ - #if !defined(_XPG6) || defined(__EXTENSIONS__) - extern int ttyslot(); - extern void *valloc(); - #endif /* !defined(_XPG6) || defined(__EXTENSIONS__) */ - #endif /* defined(__EXTENSIONS__) || ... || defined(_XPG4_2) */ - - #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) || defined(_XPG6) - extern int posix_memalign(); - extern int posix_openpt(); - extern int setenv(); - extern int unsetenv(); - #endif - - #if defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) - extern char *canonicalize_file_name(); - extern int clearenv(); - extern void closefrom(); - extern int daemon(); - extern int dup2(); - extern int dup3(); - extern int fdwalk(); - extern char *qecvt(); - extern char *qfcvt(); - extern char *qgcvt(); - extern char *getcwd(); - extern char *getexecname(); - - #ifndef __GETLOGIN_DEFINED /* Avoid duplicate in unistd.h */ - #define __GETLOGIN_DEFINED - #ifndef __USE_LEGACY_LOGNAME__ - #ifdef __PRAGMA_REDEFINE_EXTNAME - #pragma redefine_extname getlogin getloginx - #else /* __PRAGMA_REDEFINE_EXTNAME */ - extern char *getloginx(); - #define getlogin getloginx - #endif /* __PRAGMA_REDEFINE_EXTNAME */ - #endif /* __USE_LEGACY_LOGNAME__ */ - extern char *getlogin(); - #endif /* __GETLOGIN_DEFINED */ - - extern int getopt(); - extern char *optarg; - extern int optind, opterr, optopt; - extern char *getpass(); - extern char *getpassphrase(); - extern int getpw(); - extern int isatty(); - extern void *memalign(); - extern char *ttyname(); - extern char *mkdtemp(); - extern char *getprogname(); - extern void setprogname(); - - #if defined(_LONGLONG_TYPE) - extern char *lltostr(); - extern char *ulltostr(); - #endif /* defined(_LONGLONG_TYPE) */ - #endif /* defined(__EXTENSIONS__) || !defined(__XOPEN_OR_POSIX) ... */ - - #endif /* __STDC__ */ - #ifdef __cplusplus } #endif #endif /* _STDLIB_H */ --- 262,271 ----