glibc/libio
Martin Sebor 26492c0a14 Annotate additional APIs with GCC attribute access.
This change continues the improvements to compile-time out of bounds
checking by decorating more APIs with either attribute access, or by
explicitly providing the array bound in APIs such as tmpnam() that
expect arrays of some minimum size as arguments.  (The latter feature
is new in GCC 11.)

The only effects of the attribute and/or the array bound is to check
and diagnose calls to the functions that fail to provide a sufficient
number of elements, and the definitions of the functions that access
elements outside the specified bounds.  (There is no interplay with
_FORTIFY_SOURCE here yet.)

Tested with GCC 7 through 11 on x86_64-linux.
2021-05-06 11:01:05 -06:00
..
bits Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fbufsize.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__flbf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fpending.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fpurge.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__freadable.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__freading.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fsetlocking.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fwritable.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
__fwriting.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug-fopena+.c
bug-fseek.c
bug-ftell.c
bug-memstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
bug-mmap-fflush.c
bug-rewind2.c Fix warnings in fwscanf / rewind tests. 2014-11-26 12:54:39 +00:00
bug-rewind.c Fix warnings in fwscanf / rewind tests. 2014-11-26 12:54:39 +00:00
bug-ungetc2.c
bug-ungetc3.c
bug-ungetc4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
bug-ungetc.c
bug-ungetwc1.c Fix libio/bug-ungetwc1.c warning. 2014-11-27 16:01:04 +00:00
bug-ungetwc2.c
bug-wfflush.c
bug-wmemstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
bug-wsetpos.c
clearerr_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
clearerr.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Depend
fcloseall.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
feof_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
feof.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ferror_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ferror.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
filedoalloc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fileno.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fileops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fputwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
freopen64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
freopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseek.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseeko64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fseeko.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ftello64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ftello.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
fwscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
genops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
getwchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofdopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofflush_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofflush.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgets_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgets.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetws_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofgetws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopen64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofopncook.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputs_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputs.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputws_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofputws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofread_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofread.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofsetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofsetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioftell.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwrite_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iofwrite.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogetdelim.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogetline.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogets.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iogetwline.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iolibio.h libio: Eliminate _IO_stdin, _IO_stdout, _IO_stderr 2019-02-18 16:37:00 +01:00
iopadn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iopopen.c nptl: Move pthread_setcancelstate into libc 2021-04-21 19:49:50 +02:00
ioputs.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioseekoff.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioseekpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iosetbuffer.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iosetvbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioungetc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
ioungetwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovdprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovsprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovsscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iovswscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
iowpadn.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
libc_fatal.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
libio.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
libioP.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Makefile Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
memstream.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
obprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldfileops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldfmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofdopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofgetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofgetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofsetpos64.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiofsetpos.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldiopopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldpclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldstdfiles.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
oldtmpfile.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
pclose.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
peekc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwc_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwchar_u.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
putwchar.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
rewind.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
setbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
setlinebuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdfiles.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdio.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
stdio.h Annotate additional APIs with GCC attribute access. 2021-05-06 11:01:05 -06:00
strfile.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
strops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
swprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
swscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-fmemopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-freopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
test-freopen.sh Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_getwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_getwc.input
tst_putwc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst_swprintf.c
tst_swscanf.c
tst_wprintf2.c Add dependencies on needed locales in each subdir tests (bug 18969) 2015-10-12 15:18:08 +02:00
tst_wprintf.c
tst_wscanf.c
tst_wscanf.input
tst-atime.c Don't reduce test timeout to less than default 2018-10-17 09:34:13 +02:00
tst-bz22415.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24051.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24153.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24228.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-bz24228.map libio: do not attempt to free wide buffers of legacy streams [BZ #24228] 2019-06-20 17:32:07 +00:00
tst-cleanup-default-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-default.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-nostart-stop-gc-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-nostart-stop-gc.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-start-stop-gc-static.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup-start-stop-gc.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup.c Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-cleanup.exp Set the retain attribute on _elf_set_element if CC supports [BZ #27492] 2021-04-16 11:26:39 -07:00
tst-eof.c
tst-ext2.c
tst-ext.c
tst-fgetc-after-eof.c [BZ 1190] Make EOF sticky in stdio. 2018-03-13 08:31:56 -04:00
tst-fgetwc.c
tst-fgetwc.input
tst-fgetws.c
tst-fopenloc2.c
tst-fopenloc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-fputws.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-freopen.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-fseek.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-active-handler.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-append.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-ftell-partial-wide.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-fwrite-error.c libio: Update license on test case 2021-03-30 19:23:09 +05:30
tst-memstream1.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-memstream2.c Add missing header files throughout the testsuite. 2017-02-16 17:33:18 -05:00
tst-memstream3.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-memstream4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-memstream.h Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-mmap2-eofsync.c 2016-06-11 Paul Pluzhnikov <ppluzhnikov@google.com> 2016-06-11 14:50:16 -07:00
tst-mmap-eofsync.c Remove miscellaneous debris from libio. 2018-02-21 14:39:54 -05:00
tst-mmap-fflushsync.c
tst-mmap-offend.c
tst-mmap-setvbuf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-popen1.c
tst-setvbuf1.c
tst-sprintf-chk-ub.c Set behavior of sprintf-like functions with overlapping source and destination 2019-01-02 13:53:52 -02:00
tst-sprintf-ub.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-sscanf.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-swscanf.c
tst-ungetwc1.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-ungetwc2.c Modify several tests to use test-skeleton.c 2014-11-05 15:24:08 +05:30
tst-vtables-common.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-vtables-interposed.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-vtables.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wfile-sync.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wfile-sync.input Fix crash in _IO_wfile_sync (bug 20568) 2019-05-15 16:47:09 +02:00
tst-widetext.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-widetext.input Finish change from “Bengali” to “Bangla” 2017-09-09 12:41:54 +02:00
tst-wmemstream1.c
tst-wmemstream2.c
tst-wmemstream3.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
tst-wmemstream4.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vasprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
Versions libio: Remove __libc_readline_unlocked 2020-07-21 07:34:50 +02:00
vscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vsnprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vswprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vtables.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vwprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
vwscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wfiledoalloc.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wfileops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wgenops.c Correct buffer end pointer in IO_wdefault_doallocate (BZ #26874) 2021-03-01 19:34:49 +05:30
wmemstream.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wprintf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wscanf.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00
wstrops.c Update copyright dates with scripts/update-copyrights 2021-01-02 12:17:34 -08:00