xref: /llvm-project/clang/test/Analysis/Inputs/std-c-library-functions.h (revision 80a21ea8006fe7bc7ae2b1c9381625aa69b4dace)
1*80a21ea8SBalázs Kéri typedef __SIZE_TYPE__ size_t;
2*80a21ea8SBalázs Kéri #define __SSIZE_TYPE__                                                         \
3*80a21ea8SBalázs Kéri   __typeof__(_Generic((__SIZE_TYPE__)0,                                        \
4*80a21ea8SBalázs Kéri                       unsigned long long int : (long long int)0,               \
5*80a21ea8SBalázs Kéri                       unsigned long int : (long int)0,                         \
6*80a21ea8SBalázs Kéri                       unsigned int : (int)0,                                   \
7*80a21ea8SBalázs Kéri                       unsigned short : (short)0))
8*80a21ea8SBalázs Kéri typedef __SSIZE_TYPE__ ssize_t;
9*80a21ea8SBalázs Kéri typedef struct {
10*80a21ea8SBalázs Kéri   int x;
11*80a21ea8SBalázs Kéri } FILE;
12*80a21ea8SBalázs Kéri 
13*80a21ea8SBalázs Kéri // do not use the default values for these constants to verify that this
14*80a21ea8SBalázs Kéri // definition is found
15*80a21ea8SBalázs Kéri #define EOF (-2)
16*80a21ea8SBalázs Kéri #define AT_FDCWD (-101)
17*80a21ea8SBalázs Kéri 
18*80a21ea8SBalázs Kéri #ifdef __cplusplus
19*80a21ea8SBalázs Kéri #define restrict /*restrict*/
20*80a21ea8SBalázs Kéri #endif
21*80a21ea8SBalázs Kéri 
22*80a21ea8SBalázs Kéri int isascii(int);
23*80a21ea8SBalázs Kéri int islower(int);
24*80a21ea8SBalázs Kéri int isalpha(int);
25*80a21ea8SBalázs Kéri int isalnum(int);
26*80a21ea8SBalázs Kéri int isblank(int);
27*80a21ea8SBalázs Kéri int ispunct(int);
28*80a21ea8SBalázs Kéri int isupper(int);
29*80a21ea8SBalázs Kéri int isgraph(int);
30*80a21ea8SBalázs Kéri int isprint(int);
31*80a21ea8SBalázs Kéri int isdigit(int);
32*80a21ea8SBalázs Kéri int isspace(int);
33*80a21ea8SBalázs Kéri int isxdigit(int);
34*80a21ea8SBalázs Kéri int toupper(int);
35*80a21ea8SBalázs Kéri int tolower(int);
36*80a21ea8SBalázs Kéri int toascii(int);
37*80a21ea8SBalázs Kéri 
38*80a21ea8SBalázs Kéri int getc(FILE *);
39*80a21ea8SBalázs Kéri int fgetc(FILE *);
40*80a21ea8SBalázs Kéri int getchar(void);
41*80a21ea8SBalázs Kéri size_t fread(void *restrict, size_t, size_t, FILE *restrict);
42*80a21ea8SBalázs Kéri size_t fwrite(const void *restrict, size_t, size_t, FILE *restrict);
43*80a21ea8SBalázs Kéri ssize_t read(int, void *, size_t);
44*80a21ea8SBalázs Kéri ssize_t write(int, const void *, size_t);
45*80a21ea8SBalázs Kéri ssize_t getline(char **restrict, size_t *restrict, FILE *restrict);
46*80a21ea8SBalázs Kéri ssize_t getdelim(char **restrict, size_t *restrict, int, FILE *restrict);
47*80a21ea8SBalázs Kéri char *getenv(const char *);
48