FSF GCC merge 02/23/03
[official-gcc.git] / gcc / cp / cfns.h
blobe4200947eb38c2179595fa51069c8c8ba68a852e
1 /* C code produced by gperf version 2.7.2 */
2 /* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p ../../gcc/gcc/cp/cfns.gperf */
3 #ifdef __GNUC__
4 __inline
5 #endif
6 static unsigned int hash (const char *, unsigned int);
7 #ifdef __GNUC__
8 __inline
9 #endif
10 const char * libc_name_p (const char *, unsigned int);
11 /* maximum key range = 1020, duplicates = 1 */
13 #ifdef __GNUC__
14 __inline
15 #else
16 #ifdef __cplusplus
17 inline
18 #endif
19 #endif
20 static unsigned int
21 hash (str, len)
22 register const char *str;
23 register unsigned int len;
25 static const unsigned short asso_values[] =
27 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
28 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
29 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
30 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
31 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 0, 1,
32 0, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
33 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
34 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
35 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
36 1038, 1038, 1038, 1038, 1038, 1038, 1038, 247, 218, 144,
37 0, 0, 40, 7, 126, 184, 2, 15, 146, 67,
38 9, 60, 0, 0, 3, 0, 7, 8, 197, 1,
39 40, 8, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
40 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
41 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
42 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
43 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
44 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
45 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
46 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
47 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
48 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
49 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
50 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
51 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
52 1038, 1038, 1038, 1038, 1038, 1038
54 register int hval = len;
56 switch (hval)
58 default:
59 case 6:
60 hval += asso_values[(unsigned char)str[5]];
61 case 5:
62 hval += asso_values[(unsigned char)str[4]];
63 case 4:
64 hval += asso_values[(unsigned char)str[3]];
65 case 3:
66 hval += asso_values[(unsigned char)str[2]];
67 case 2:
68 hval += asso_values[(unsigned char)str[1]];
69 case 1:
70 hval += asso_values[(unsigned char)str[0]];
71 break;
73 return hval + asso_values[(unsigned char)str[len - 1]];
76 #ifdef __GNUC__
77 __inline
78 #endif
79 const char *
80 libc_name_p (str, len)
81 register const char *str;
82 register unsigned int len;
84 enum
86 TOTAL_KEYWORDS = 207,
87 MIN_WORD_LENGTH = 3,
88 MAX_WORD_LENGTH = 10,
89 MIN_HASH_VALUE = 18,
90 MAX_HASH_VALUE = 1037
93 static const char * const wordlist[] =
95 "gets",
96 "puts",
97 "sqrt",
98 "strerror",
99 "strstr",
100 "strspn",
101 "exp",
102 "free",
103 "fgets",
104 "fputs",
105 "fgetws",
106 "fputws",
107 "pow",
108 "fseek",
109 "perror",
110 "strtod",
111 "toupper",
112 "towupper",
113 "frexp",
114 "strtok",
115 "fsetpos",
116 "ferror",
117 "freopen",
118 "fgetpos",
119 "fopen",
120 "wmemset",
121 "memset",
122 "system",
123 "wcsstr",
124 "wctype",
125 "strxfrm",
126 "wcsspn",
127 "strcspn",
128 "fmod",
129 "strcpy",
130 "strncpy",
131 "strlen",
132 "ungetwc",
133 "feof",
134 "ldexp",
135 "isupper",
136 "rewind",
137 "iswupper",
138 "sin",
139 "cos",
140 "modf",
141 "iswpunct",
142 "wcstod",
143 "log10",
144 "log",
145 "wcsrtombs",
146 "strcmp",
147 "fwide",
148 "towctrans",
149 "strncmp",
150 "strtoul",
151 "fwrite",
152 "exit",
153 "swprintf",
154 "wcstok",
155 "strftime",
156 "sprintf",
157 "wprintf",
158 "strpbrk",
159 "time",
160 "rand",
161 "srand",
162 "wmemmove",
163 "tan",
164 "tolower",
165 "fwprintf",
166 "towlower",
167 "wcstombs",
168 "printf",
169 "fprintf",
170 "strchr",
171 "strrchr",
172 "wmemcpy",
173 "fread",
174 "getwchar",
175 "putwchar",
176 "longjmp",
177 "memcpy",
178 "wcsxfrm",
179 "wcscspn",
180 "getc",
181 "putc",
182 "getwc",
183 "putwc",
184 "wcscpy",
185 "wcsncpy",
186 "wcslen",
187 "floor",
188 "setbuf",
189 "ungetc",
190 "rename",
191 "remove",
192 "gmtime",
193 "mktime",
194 "fgetc",
195 "fputc",
196 "fgetwc",
197 "fputwc",
198 "memcmp",
199 "iswctype",
200 "wmemcmp",
201 "ispunct",
202 "mbstowcs",
203 "wcscmp",
204 "mbsrtowcs",
205 "setlocale",
206 "wcsncmp",
207 "wcstoul",
208 "strtol",
209 "wcsftime",
210 "iswprint",
211 "wcspbrk",
212 "iswdigit",
213 "isprint",
214 "fclose",
215 "atof",
216 "islower",
217 "iswlower",
218 "ctime",
219 "wmemchr",
220 "memchr",
221 "wctrans",
222 "strcat",
223 "getenv",
224 "strncat",
225 "iswxdigit",
226 "wcschr",
227 "wcsrchr",
228 "isxdigit",
229 "vswprintf",
230 "raise",
231 "iswspace",
232 "vsprintf",
233 "vwprintf",
234 "vprintf",
235 "swscanf",
236 "sinh",
237 "tmpfile",
238 "asin",
239 "mblen",
240 "acos",
241 "mbrlen",
242 "cosh",
243 "difftime",
244 "memmove",
245 "abs",
246 "tmpnam",
247 "vfwprintf",
248 "setvbuf",
249 "vfprintf",
250 "scanf",
251 "sscanf",
252 "wscanf",
253 "fwscanf",
254 "ftell",
255 "fflush",
256 "atexit",
257 "iswcntrl",
258 "iscntrl",
259 "mbrtowc",
260 "wcrtomb",
261 "fabs",
262 "wcstol",
263 "strcoll",
264 "atan2",
265 "tanh",
266 "atan",
267 "fscanf",
268 "clock",
269 "getchar",
270 "putchar",
271 "abort",
272 "clearerr",
273 "wcscat",
274 "wcsncat",
275 "isdigit",
276 "isgraph",
277 "iswgraph",
278 "btowc",
279 "div",
280 "isspace",
281 "atol",
282 "labs",
283 "ceil",
284 "mbtowc",
285 "wcscoll",
286 "wctob",
287 "asctime",
288 "iswalnum",
289 "isalnum",
290 "mbsinit",
291 "atoi",
292 "wctomb",
293 "ldiv",
294 "signal",
295 "realloc",
296 "localtime",
297 "iswalpha",
298 "localeconv",
299 "isalpha",
300 "malloc",
301 "calloc"
304 static const short lookup[] =
306 -1, -1, -1, -1, -1, -1, -1, -1,
307 -1, -1, -1, -1, -1, -1, -1, -1,
308 -1, -1, 0, 1, -1, 2, -1, -1,
309 -1, -1, -1, 3, -1, 4, -1, -1,
310 -1, -1, 5, -1, -1, -1, -1, -1,
311 -1, -1, -1, 6, -1, -1, -1, 7,
312 -1, -1, -1, -1, -1, -1, -1, -1,
313 -1, -1, -1, 8, 9, 10, 11, -1,
314 -1, 12, -1, -1, -1, -1, -1, -1,
315 -1, -1, -1, 13, -1, -1, 14, -1,
316 -1, -1, -1, 15, -1, 16, -1, 17,
317 18, -1, -1, -1, -1, -1, -1, -1,
318 -1, -1, -1, -1, -1, -1, -1, -1,
319 -1, -1, -1, -1, -1, -1, -1, -1,
320 -1, 19, 20, -1, -1, -1, 21, 22,
321 -1, 23, -1, 24, -1, -1, -1, -1,
322 -1, -1, -1, -1, -1, -1, -1, -1,
323 -1, -1, -1, -1, -1, -1, -1, -1,
324 -1, -1, -1, -1, -1, 25, -1, -1,
325 -1, -1, 26, 27, -1, -1, -1, -1,
326 -1, -1, -1, -1, 28, -1, 29, 30,
327 -1, 31, 32, 33, -1, -1, -1, -1,
328 34, -1, 35, -1, 36, -1, -1, 37,
329 38, -1, -1, -1, -1, -1, -1, 39,
330 -1, -1, -1, -1, -1, -1, -1, -1,
331 -1, -1, 40, 41, 42, 43, -1, 44,
332 -1, -1, -1, 45, -1, -1, -1, -1,
333 -1, 46, 47, 48, -1, -1, -1, 49,
334 50, -1, -1, 51, -1, -1, 52, 53,
335 -1, -1, -1, -1, -1, 54, 55, -1,
336 -1, 56, 57, -1, -1, 58, -1, -1,
337 59, 60, 61, 62, -1, 63, -1, -1,
338 -1, -1, -1, -1, -1, -1, 64, 65,
339 66, -1, -1, -1, -1, -1, 67, -1,
340 -1, -1, -1, 68, -1, -1, -1, -1,
341 -1, -1, -1, -1, 69, 70, 71, 72,
342 -1, 73, 74, -1, 75, 76, 77, 78,
343 79, 80, 81, -1, 82, -1, 83, -1,
344 -1, 84, 85, 86, 87, 88, -1, 89,
345 -1, 90, -1, 91, -1, 92, -1, 93,
346 -1, -1, -1, -1, -1, 94, -1, -1,
347 -1, -1, -1, -1, 95, 96, -1, -1,
348 -1, -1, 97, -1, -1, -1, -1, -1,
349 -1, -1, 98, 99, 100, 101, 102, 103,
350 104, 105, -1, -1, -1, -1, -1, 106,
351 -1, 107, 108, -1, 109, -1, 110, -1,
352 -1, -1, -1, -1, 111, 112, -1, 113,
353 -1, -1, -1, -1, -1, -1, -1, -1,
354 114, -1, -1, 115, 116, -1, -1, 117,
355 -1, -1, 118, -1, 119, -1, 120, -1,
356 -1, 121, -1, 122, -1, -1, -1, 123,
357 -1, -1, -1, -1, -1, -1, -1, 124,
358 125, -1, 126, -1, -1, 127, -1, 128,
359 129, 130, -1, 131, 132, -1, 133, -1,
360 -1, -1, 134, -1, -1, -1, -1, 135,
361 136, 137, 138, -1, -1, -1, -1, 139,
362 140, 141, -1, 142, -1, 143, 144, 145,
363 -1, -1, 146, -1, 147, -1, -1, 148,
364 -1, 149, -1, -1, 150, -1, 151, -1,
365 -1, -1, 152, -1, -1, 153, -1, -1,
366 -1, 154, -1, -1, -1, 155, 156, 157,
367 158, -1, 159, -1, 160, -1, -1, -1,
368 -1, -1, 161, 162, 163, -1, -1, -1,
369 -1, -1, -1, -719, -1, 166, 167, -43,
370 -2, 168, -1, 169, -1, -1, -1, 170,
371 -1, -1, -1, 171, -1, -1, 172, -1,
372 -1, 173, -1, -1, -1, -1, -1, -1,
373 -1, -1, -1, -1, -1, 174, 175, -1,
374 -1, -1, -1, 176, -1, -1, -1, 177,
375 -1, -1, -1, -1, 178, -1, -1, 179,
376 -1, -1, -1, -1, -1, -1, -1, -1,
377 -1, -1, -1, -1, -1, 180, 181, -1,
378 182, -1, -1, 183, -1, 184, 185, -1,
379 -1, -1, -1, -1, -1, -1, -1, -1,
380 -1, -1, -1, -1, -1, -1, -1, -1,
381 -1, -1, -1, -1, -1, -1, -1, -1,
382 -1, -1, 186, -1, -1, -1, -1, 187,
383 -1, -1, -1, -1, -1, -1, -1, -1,
384 188, -1, -1, -1, -1, -1, -1, -1,
385 -1, -1, -1, -1, -1, -1, -1, -1,
386 -1, -1, -1, -1, -1, -1, -1, 189,
387 190, -1, -1, -1, -1, 191, -1, -1,
388 192, -1, -1, -1, -1, -1, 193, -1,
389 -1, -1, -1, -1, 194, -1, -1, -1,
390 -1, -1, -1, -1, 195, -1, -1, -1,
391 -1, -1, -1, -1, -1, -1, 196, -1,
392 -1, -1, -1, -1, -1, -1, -1, -1,
393 -1, -1, -1, -1, -1, -1, -1, -1,
394 -1, -1, -1, -1, -1, -1, -1, -1,
395 -1, -1, -1, -1, -1, -1, -1, -1,
396 -1, 197, -1, -1, -1, -1, -1, -1,
397 198, -1, -1, -1, -1, -1, -1, -1,
398 -1, -1, -1, -1, -1, -1, -1, -1,
399 -1, 199, -1, -1, -1, -1, -1, -1,
400 -1, 200, -1, -1, -1, -1, -1, 201,
401 -1, -1, -1, -1, -1, -1, -1, -1,
402 -1, -1, -1, -1, -1, -1, -1, -1,
403 -1, -1, -1, -1, -1, -1, -1, -1,
404 -1, -1, -1, -1, -1, -1, -1, -1,
405 -1, -1, -1, -1, -1, -1, -1, -1,
406 -1, -1, -1, -1, -1, -1, -1, -1,
407 -1, -1, -1, -1, -1, -1, -1, -1,
408 -1, -1, -1, -1, -1, -1, -1, -1,
409 -1, -1, -1, -1, -1, -1, -1, -1,
410 -1, 202, -1, -1, -1, -1, -1, -1,
411 -1, -1, -1, -1, -1, -1, -1, -1,
412 -1, -1, -1, -1, -1, -1, -1, -1,
413 -1, -1, -1, -1, -1, -1, -1, -1,
414 -1, -1, -1, -1, -1, -1, -1, -1,
415 -1, -1, -1, -1, -1, -1, -1, -1,
416 -1, -1, -1, -1, -1, -1, -1, -1,
417 -1, -1, -1, -1, -1, -1, -1, -1,
418 -1, -1, -1, -1, -1, -1, -1, -1,
419 -1, -1, -1, -1, -1, -1, -1, -1,
420 -1, -1, -1, -1, -1, -1, -1, -1,
421 -1, -1, -1, -1, -1, -1, -1, -1,
422 -1, -1, -1, -1, -1, -1, -1, -1,
423 -1, -1, -1, -1, -1, -1, -1, -1,
424 -1, -1, -1, -1, -1, -1, 203, -1,
425 -1, -1, -1, -1, -1, 204, -1, -1,
426 205, -1, -1, -1, -1, -1, -1, -1,
427 -1, -1, -1, -1, -1, -1, -1, -1,
428 -1, -1, -1, -1, -1, -1, -1, -1,
429 -1, -1, -1, -1, -1, -1, -1, -1,
430 -1, -1, -1, -1, -1, -1, -1, -1,
431 -1, -1, -1, -1, -1, -1, -1, -1,
432 -1, -1, -1, -1, -1, -1, -1, -1,
433 -1, -1, -1, -1, -1, -1, -1, -1,
434 -1, -1, -1, -1, -1, -1, -1, -1,
435 -1, -1, -1, -1, -1, 206
438 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
440 register int key = hash (str, len);
442 if (key <= MAX_HASH_VALUE && key >= 0)
444 register int index = lookup[key];
446 if (index >= 0)
448 register const char *s = wordlist[index];
450 if (*str == *s && !strcmp (str + 1, s + 1))
451 return s;
453 else if (index < -TOTAL_KEYWORDS)
455 register int offset = - 1 - TOTAL_KEYWORDS - index;
456 register const char * const *wordptr = &wordlist[TOTAL_KEYWORDS + lookup[offset]];
457 register const char * const *wordendptr = wordptr + -lookup[offset + 1];
459 while (wordptr < wordendptr)
461 register const char *s = *wordptr;
463 if (*str == *s && !strcmp (str + 1, s + 1))
464 return s;
465 wordptr++;
470 return 0;