musl/include
Rich Felker f368d9fd26 make FILE a complete type for pre-C11 standard profiles
C11 removed the requirement that FILE be a complete type, which was
deemed erroneous, as part of the changes introduced by N1439 regarding
completeness of types (see footnote 6 for specific mention of FILE).
however the current version of POSIX is still based on C99 and
incorporates the old requirement that FILE be a complete type.

expose an arbitrary, useless complete type definition because the
actual object used to represent FILE streams cannot be public/ABI.

thanks to commit 13d1afa46f, we now have
a framework for suppressing the public complete-type definition of FILE
when stdio.h is included internally, so that a different internal
definition can be provided. this is perfectly well-defined, since the
same struct tag can refer to different types in different translation
units. it would be a problem if the implementation were accessing the
application's FILE objects or vice versa, but either would be
undefined behavior.
2019-03-12 15:24:00 -04:00
..
arpa fix endian errors in arpa/nameser.h due to failure to include endian.h 2017-12-14 23:36:47 -05:00
net net/if_arp.h: add ARPHRD_RAWIP from linux v4.14 2018-02-22 18:47:49 -05:00
netinet update netinet/udp.h for linux v4.18 2018-12-09 22:23:48 -05:00
netpacket update netpacket/packet.h to linux v4.3 2016-01-26 18:29:32 -05:00
scsi add legacy scsi/scsi_ioctl.h header 2013-07-03 18:07:50 +02:00
sys add membarrier syscall wrapper, refactor dynamic tls install to use it 2019-02-22 03:25:39 -05:00
aio.h make all objects used with atomic operations volatile 2015-03-03 22:50:02 -05:00
alloca.h
alltypes.h.in make FILE a complete type for pre-C11 standard profiles 2019-03-12 15:24:00 -04:00
ar.h
assert.h restore _Noreturn to __assert_fail 2016-08-30 16:39:54 -04:00
byteswap.h
complex.h fix mismatched parens in CMPLX def for annex-g-conforming compilers 2015-11-02 21:44:57 -05:00
cpio.h
crypt.h
ctype.h add macro version of ctype.h isascii function 2015-06-06 18:16:22 +00:00
dirent.h add _DIRENT_HAVE_D_* macros to dirent.h 2018-01-12 14:26:59 -05:00
dlfcn.h const-qualify the address argument to dladdr 2014-01-06 22:03:38 -05:00
elf.h add NT_VMCOREDD to elf.h from linux v4.18 2018-12-09 22:30:05 -05:00
endian.h
err.h
errno.h restore attribute((const)) to pthread_self and errno location decls 2018-10-16 14:10:27 -04:00
fcntl.h define MAX_HANDLE_SZ for use with name_to_handle_at 2018-09-13 11:46:46 -04:00
features.h in public headers, don't assume pre-C99 compilers have __inline keyword 2016-12-16 23:12:32 -05:00
fenv.h
float.h fix FLT_ROUNDS regression in C++ applications 2015-03-23 11:26:51 -04:00
fmtmsg.h implement fmtmsg function 2014-06-21 19:24:15 -04:00
fnmatch.h remove now-unnecessary features.h inclusion from fnmatch.h 2013-12-02 02:06:52 -05:00
ftw.h make brace placement in public header struct definitions consistent 2016-07-03 15:02:25 -04:00
getopt.h make brace placement in public header struct definitions consistent 2016-07-03 15:02:25 -04:00
glob.h fix macros for LFS *64_t types in sys/stat.h, sys/types.h, glob.h 2014-09-05 16:03:07 -04:00
grp.h fix various header namespace issues under feature-test-macro control 2016-10-20 17:20:01 -04:00
iconv.h
ifaddrs.h remove parameter names from public headers 2016-10-20 17:04:37 -04:00
inttypes.h fix inttypes.h PRI and SCN macros for [u]intptr_t types 2013-10-30 14:52:55 -04:00
iso646.h
langinfo.h add _NL_LOCALE_NAME extension to nl_langinfo 2017-07-31 23:08:27 -04:00
lastlog.h
libgen.h
libintl.h add format argument attributes to gettext function prototypes 2015-09-15 20:30:36 +00:00
limits.h fix dubious char signedness check in limits.h 2018-08-28 13:54:50 -04:00
link.h generalize ELF hash table types not to assume 32-bit entries 2016-11-11 12:46:06 -05:00
locale.h restore type of NULL to void * except when used in C++ programs 2013-11-24 21:42:55 -05:00
malloc.h add malloc_usable_size function and non-stub malloc.h 2014-08-25 22:47:27 -04:00
math.h fix FP_ILOGB0 and FP_ILOGBNAN definitions to be valid for use in #if 2018-08-22 19:11:58 -04:00
memory.h
mntent.h make brace placement in public header struct definitions consistent 2016-07-03 15:02:25 -04:00
monetary.h
mqueue.h
netdb.h restore attribute((const)) to pthread_self and errno location decls 2018-10-16 14:10:27 -04:00
nl_types.h refactor headers, especially alltypes.h, and improve C++ ABI compat 2013-07-22 11:22:36 -04:00
paths.h remove duplicate definition of _PATH_LASTLOG in paths.h 2013-12-03 20:34:36 -05:00
poll.h make brace placement in public header struct definitions consistent 2016-07-03 15:02:25 -04:00
pthread.h restore attribute((const)) to pthread_self and errno location decls 2018-10-16 14:10:27 -04:00
pty.h
pwd.h fix various header namespace issues under feature-test-macro control 2016-10-20 17:20:01 -04:00
regex.h make regoff_t and regex_t match C++ ABI 2013-07-22 14:39:59 -04:00
resolv.h don't claim support for resolv.h APIs that aren't supported 2016-11-07 11:55:53 -05:00
sched.h fix use of memset without declaration in sched.h cpu set macros 2017-09-28 12:57:06 -04:00
search.h implement hcreate_r, hdestroy_r and hsearch_r 2014-04-02 18:37:45 -04:00
semaphore.h make all objects used with atomic operations volatile 2015-03-03 22:50:02 -05:00
setjmp.h remove macro definition of longjmp from setjmp.h 2015-04-01 20:35:03 -04:00
shadow.h
signal.h add TRAP_UNK si_code to signal.h from linux v4.18 2018-12-09 22:29:07 -05:00
spawn.h rework mechanism for posix_spawnp calling posix_spawn 2018-09-12 14:34:32 -04:00
stdalign.h add static_assert and hide noreturn, alignas, alignof from C++ 2014-08-27 02:55:54 -04:00
stdarg.h remove legacy i386 fallback stdarg implementation and framework 2016-12-15 12:18:24 -05:00
stdbool.h stdbool.h should define __bool_true_false_are_defined even for C++ 2013-08-28 00:41:00 -04:00
stdc-predef.h add stdc-predef.h for library-level predefined macros 2016-07-03 20:03:30 -04:00
stddef.h add max_align_t definition for C11 and C++11 2014-08-20 17:20:14 -04:00
stdint.h fix signedness of UINT32_MAX and UINT64_MAX at the preprocessor level 2014-12-21 02:30:29 -05:00
stdio_ext.h
stdio.h make FILE a complete type for pre-C11 standard profiles 2019-03-12 15:24:00 -04:00
stdlib.h remove parameter names from public headers 2016-10-20 17:04:37 -04:00
stdnoreturn.h add static_assert and hide noreturn, alignas, alignof from C++ 2014-08-27 02:55:54 -04:00
string.h add explicit_bzero implementation 2018-06-26 16:59:12 -04:00
strings.h implement ffsl and ffsll functions 2014-07-31 02:38:23 -04:00
stropts.h
syscall.h
sysexits.h
syslog.h remove hack in syslog.h that resulted in aliasing violations 2014-06-21 07:44:46 -04:00
tar.h fix default feature profile in tar.h 2018-03-28 15:53:45 -04:00
termios.h
tgmath.h math: more correct tgmath.h type cast logic 2012-12-19 10:57:54 +01:00
threads.h remove parameter names from public headers 2016-10-20 17:04:37 -04:00
time.h fix various header namespace issues under feature-test-macro control 2016-10-20 17:20:01 -04:00
uchar.h uchar.h: define char16_t and char32_t for old c++ 2018-07-17 22:24:03 -04:00
ucontext.h fixup mcontext stuff to expost gregset_t/fpregset_t as appropriate 2012-11-25 23:04:23 -05:00
ulimit.h
unistd.h fix minor namespace issue in unistd.h 2018-03-10 18:19:40 -05:00
utime.h make brace placement in public header struct definitions consistent 2016-07-03 15:02:25 -04:00
utmp.h add declarations for utmpname/utmpxname to appropriate headers 2016-02-12 09:58:50 -05:00
utmpx.h fix typo in utmpx.h 2016-10-20 16:55:32 -04:00
values.h add legacy header values.h 2013-01-04 20:36:34 +01:00
wait.h add workaround header for wait.h remapping to sys/wait.h 2013-09-01 01:01:31 -04:00
wchar.h make FILE a complete type for pre-C11 standard profiles 2019-03-12 15:24:00 -04:00
wctype.h improve iswdigit macro to diagnose errors 2015-05-02 21:19:08 -04:00
wordexp.h make brace placement in public header typedef'd structs consistent 2016-07-03 16:19:28 -04:00