190075Sobrien%{ 290075Sobrien#ifdef __GNUC__ 390075Sobrien__inline 490075Sobrien#endif 5132718Skanstatic unsigned int hash (const char *, unsigned int); 690075Sobrien#ifdef __GNUC__ 790075Sobrien__inline 890075Sobrien#endif 9132718Skanconst char * libc_name_p (const char *, unsigned int); 1090075Sobrien%} 11132718Skan%% 1290075Sobrien# The standard C library functions, for feeding to gperf; the result is used 1390075Sobrien# by nothrow_libfn_p. 1490075Sobrien# 1590075Sobrien# [lib.res.on.exception.handling]: None of the functions from the 1690075Sobrien# Standard C library shall report an error by throwing an 1790075Sobrien# exception, unless it calls a program-supplied function that 1890075Sobrien# throws an exception. 1990075Sobrien# 20117395Skan# Specific functions are commented out for the reason noted in each case. 2190075Sobrien# 22117395Skan# abort -- synchronous exception from SIGABRT handler 2390075Sobrienabs 2490075Sobrienacos 2590075Sobrienasctime 2690075Sobrienasin 2790075Sobrienatan 2890075Sobrienatan2 2990075Sobrienatexit 3090075Sobrienatof 3190075Sobrienatoi 3290075Sobrienatol 33117395Skan#bsearch -- calls user function which may throw exception 3490075Sobrienbtowc 3590075Sobriencalloc 3690075Sobrienceil 3790075Sobrienclearerr 3890075Sobrienclock 3990075Sobriencos 4090075Sobriencosh 4190075Sobrienctime 4290075Sobriendifftime 4390075Sobriendiv 4490075Sobrienexit 4590075Sobrienexp 4690075Sobrienfabs 47117395Skan#fclose -- POSIX thread cancellation point 4890075Sobrienfeof 4990075Sobrienferror 50117395Skan#fflush -- POSIX thread cancellation point 51117395Skan#fgetc -- POSIX thread cancellation point 52117395Skan#fgetpos -- POSIX thread cancellation point 53117395Skan#fgets -- POSIX thread cancellation point 54117395Skan#fgetwc -- POSIX thread cancellation point 55117395Skan#fgetws -- POSIX thread cancellation point 5690075Sobrienfloor 5790075Sobrienfmod 58117395Skan#fopen -- POSIX thread cancellation point 59117395Skan#fprintf -- POSIX thread cancellation point 60117395Skan#fputc -- POSIX thread cancellation point 61117395Skan#fputs -- POSIX thread cancellation point 62117395Skan#fputwc -- POSIX thread cancellation point 63117395Skan#fputws -- POSIX thread cancellation point 64117395Skan#fread -- POSIX thread cancellation point 6590075Sobrienfree 66117395Skan#freopen -- POSIX thread cancellation point 6790075Sobrienfrexp 68117395Skan#fscanf -- POSIX thread cancellation point 6990075Sobrienfseek 70117395Skan#fsetpos -- POSIX thread cancellation point 71117395Skan#ftell -- POSIX thread cancellation point 7290075Sobrienfwide 73117395Skan#fwprintf -- POSIX thread cancellation point 74117395Skan#fwrite -- POSIX thread cancellation point 75117395Skan#fwscanf -- POSIX thread cancellation point 76117395Skan#getc -- POSIX thread cancellation point 77117395Skan#getchar -- POSIX thread cancellation point 7890075Sobriengetenv 79117395Skan#gets -- POSIX thread cancellation point 80117395Skan#getwc -- POSIX thread cancellation point 81117395Skan#getwchar -- POSIX thread cancellation point 8290075Sobriengmtime 8390075Sobrienisalnum 8490075Sobrienisalpha 8590075Sobrieniscntrl 8690075Sobrienisdigit 8790075Sobrienisgraph 8890075Sobrienislower 8990075Sobrienisprint 9090075Sobrienispunct 9190075Sobrienisspace 9290075Sobrienisupper 9390075Sobrieniswalnum 9490075Sobrieniswalpha 9590075Sobrieniswcntrl 9690075Sobrieniswctype 9790075Sobrieniswdigit 9890075Sobrieniswgraph 9990075Sobrieniswlower 10090075Sobrieniswprint 10190075Sobrieniswpunct 10290075Sobrieniswspace 10390075Sobrieniswupper 10490075Sobrieniswxdigit 10590075Sobrienisxdigit 10690075Sobrienlabs 10790075Sobrienldexp 10890075Sobrienldiv 10990075Sobrienlocaleconv 11090075Sobrienlocaltime 11190075Sobrienlog 11290075Sobrienlog10 11390075Sobrienlongjmp 11490075Sobrienmalloc 11590075Sobrienmblen 11690075Sobrienmbrlen 11790075Sobrienmbrtowc 11890075Sobrienmbsinit 11990075Sobrienmbsrtowcs 12090075Sobrienmbstowcs 12190075Sobrienmbtowc 12290075Sobrienmemchr 12390075Sobrienmemcmp 12490075Sobrienmemcpy 12590075Sobrienmemmove 12690075Sobrienmemset 12790075Sobrienmktime 12890075Sobrienmodf 129117395Skan#perror -- POSIX thread cancellation point 13090075Sobrienpow 131117395Skan#printf -- POSIX thread cancellation point 132117395Skan#putc -- POSIX thread cancellation point 133117395Skan#putchar -- POSIX thread cancellation point 134117395Skan#puts -- POSIX thread cancellation point 135117395Skan#putwc -- POSIX thread cancellation point 136117395Skan#putwchar -- POSIX thread cancellation point 137117395Skan#qsort -- calls user function which may throw exception 138117395Skan#raise -- synchronous exception from signal handler 13990075Sobrienrand 14090075Sobrienrealloc 141117395Skan#remove -- POSIX thread cancellation point 142117395Skan#rename -- POSIX thread cancellation point 143117395Skan#rewind -- POSIX thread cancellation point 144117395Skan#scanf -- POSIX thread cancellation point 14590075Sobriensetbuf 14690075Sobriensetlocale 14790075Sobriensetvbuf 14890075Sobriensignal 14990075Sobriensin 15090075Sobriensinh 15190075Sobriensprintf 15290075Sobriensqrt 15390075Sobriensrand 15490075Sobriensscanf 15590075Sobrienstrcat 15690075Sobrienstrchr 15790075Sobrienstrcmp 15890075Sobrienstrcoll 15990075Sobrienstrcpy 16090075Sobrienstrcspn 161117395Skan#strerror -- POSIX thread cancellation point 16290075Sobrienstrftime 16390075Sobrienstrlen 16490075Sobrienstrncat 16590075Sobrienstrncmp 16690075Sobrienstrncpy 16790075Sobrienstrpbrk 16890075Sobrienstrrchr 16990075Sobrienstrspn 17090075Sobrienstrstr 17190075Sobrienstrtod 17290075Sobrienstrtok 17390075Sobrienstrtol 17490075Sobrienstrtoul 17590075Sobrienstrxfrm 17690075Sobrienswprintf 17790075Sobrienswscanf 178117395Skan#system -- POSIX thread cancellation point 17990075Sobrientan 18090075Sobrientanh 18190075Sobrientime 182117395Skan#tmpfile -- POSIX thread cancellation point 183117395Skan#tmpnam -- POSIX thread cancellation point 18490075Sobrientolower 18590075Sobrientoupper 18690075Sobrientowctrans 18790075Sobrientowlower 18890075Sobrientowupper 189117395Skan#ungetc -- POSIX thread cancellation point 190117395Skan#ungetwc -- POSIX thread cancellation point 191117395Skan#vfprintf -- POSIX thread cancellation point 192117395Skan#vfwprintf -- POSIX thread cancellation point 193117395Skan#vprintf -- POSIX thread cancellation point 19490075Sobrienvsprintf 19590075Sobrienvswprintf 196117395Skan#vwprintf -- POSIX thread cancellation point 19790075Sobrienwcrtomb 19890075Sobrienwcscat 19990075Sobrienwcschr 20090075Sobrienwcscmp 20190075Sobrienwcscoll 20290075Sobrienwcscpy 20390075Sobrienwcscspn 20490075Sobrienwcsftime 20590075Sobrienwcslen 20690075Sobrienwcsncat 20790075Sobrienwcsncmp 20890075Sobrienwcsncpy 20990075Sobrienwcspbrk 21090075Sobrienwcsrchr 21190075Sobrienwcsrtombs 21290075Sobrienwcsspn 21390075Sobrienwcsstr 21490075Sobrienwcstod 21590075Sobrienwcstok 21690075Sobrienwcstol 21790075Sobrienwcstombs 21890075Sobrienwcstoul 21990075Sobrienwcsxfrm 22090075Sobrienwctob 22190075Sobrienwctomb 22290075Sobrienwctrans 22390075Sobrienwctype 22490075Sobrienwmemchr 22590075Sobrienwmemcmp 22690075Sobrienwmemcpy 22790075Sobrienwmemmove 22890075Sobrienwmemset 229117395Skan#wprintf -- POSIX thread cancellation point 230117395Skan#wscanf -- POSIX thread cancellation point 231