]> gcc.gnu.org Git - gcc.git/blob - gcc/cp/cfns.h
decl.c (register_dtor_fn): Mark cleanup as used.
[gcc.git] / gcc / cp / cfns.h
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 ../../../src-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 = 480, duplicates = 1 */
12
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;
24 {
25 static const unsigned short asso_values[] =
26 {
27 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
28 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
29 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
30 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
31 483, 483, 483, 483, 483, 483, 483, 483, 0, 0,
32 1, 483, 483, 483, 483, 483, 483, 483, 483, 483,
33 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
34 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
35 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
36 483, 483, 483, 483, 483, 483, 483, 106, 76, 0,
37 21, 0, 0, 11, 43, 26, 0, 66, 106, 17,
38 121, 0, 17, 0, 7, 0, 3, 19, 49, 1,
39 3, 41, 483, 483, 483, 483, 483, 483, 483, 483,
40 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
41 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
42 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
43 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
44 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
45 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
46 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
47 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
48 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
49 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
50 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
51 483, 483, 483, 483, 483, 483, 483, 483, 483, 483,
52 483, 483, 483, 483, 483, 483
53 };
54 register int hval = len;
55
56 switch (hval)
57 {
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;
72 }
73 return hval + asso_values[(unsigned char)str[len - 1]];
74 }
75
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;
83 {
84 enum
85 {
86 TOTAL_KEYWORDS = 156,
87 MIN_WORD_LENGTH = 3,
88 MAX_WORD_LENGTH = 10,
89 MIN_HASH_VALUE = 3,
90 MAX_HASH_VALUE = 482
91 };
92
93 static const char * const wordlist[] =
94 {
95 "cos",
96 "feof",
97 "free",
98 "sqrt",
99 "wcsrtombs",
100 "pow",
101 "towctrans",
102 "wcsstr",
103 "wcstombs",
104 "strstr",
105 "ferror",
106 "wcsxfrm",
107 "wcsftime",
108 "exit",
109 "exp",
110 "modf",
111 "strxfrm",
112 "wmemset",
113 "memset",
114 "strftime",
115 "frexp",
116 "time",
117 "ctime",
118 "wcstod",
119 "fwide",
120 "wcscmp",
121 "wmemmove",
122 "strtod",
123 "fmod",
124 "wcschr",
125 "wcsrchr",
126 "strcmp",
127 "wctype",
128 "toupper",
129 "towupper",
130 "strchr",
131 "strrchr",
132 "wmemcmp",
133 "iswctype",
134 "gmtime",
135 "difftime",
136 "btowc",
137 "iswprint",
138 "iswxdigit",
139 "cosh",
140 "memcmp",
141 "wmemchr",
142 "isupper",
143 "iswupper",
144 "iswdigit",
145 "memchr",
146 "isxdigit",
147 "wmemcpy",
148 "mbtowc",
149 "setbuf",
150 "mbstowcs",
151 "wcscpy",
152 "memmove",
153 "vswprintf",
154 "acos",
155 "mbrtowc",
156 "wcrtomb",
157 "mbsrtowcs",
158 "atof",
159 "strcpy",
160 "setlocale",
161 "wcscat",
162 "isdigit",
163 "log10",
164 "tolower",
165 "floor",
166 "towlower",
167 "strcat",
168 "log",
169 "mktime",
170 "wcstoul",
171 "fseek",
172 "memcpy",
173 "wcstok",
174 "strtoul",
175 "wcscspn",
176 "islower",
177 "div",
178 "iswlower",
179 "atexit",
180 "strtok",
181 "setvbuf",
182 "strcspn",
183 "isspace",
184 "iswspace",
185 "asctime",
186 "wctob",
187 "wcsncmp",
188 "atoi",
189 "ldexp",
190 "strncmp",
191 "wcspbrk",
192 "wctomb",
193 "swprintf",
194 "sprintf",
195 "strpbrk",
196 "abs",
197 "fabs",
198 "wcsncpy",
199 "ispunct",
200 "iswpunct",
201 "strncpy",
202 "iswgraph",
203 "isprint",
204 "isgraph",
205 "wcscoll",
206 "wcstol",
207 "vsprintf",
208 "strcoll",
209 "strtol",
210 "sscanf",
211 "clearerr",
212 "swscanf",
213 "sinh",
214 "wcsncat",
215 "getenv",
216 "ceil",
217 "clock",
218 "wctrans",
219 "strncat",
220 "ldiv",
221 "iswcntrl",
222 "wcsspn",
223 "iscntrl",
224 "sin",
225 "strspn",
226 "mbsinit",
227 "longjmp",
228 "rand",
229 "srand",
230 "labs",
231 "tanh",
232 "calloc",
233 "atol",
234 "localtime",
235 "realloc",
236 "malloc",
237 "atan2",
238 "tan",
239 "wcslen",
240 "strlen",
241 "iswalpha",
242 "localeconv",
243 "asin",
244 "iswalnum",
245 "isalnum",
246 "isalpha",
247 "mblen",
248 "mbrlen",
249 "atan",
250 "signal"
251 };
252
253 static const short lookup[] =
254 {
255 -1, -1, -1, 0, 1, -1, -1, -1,
256 -1, -1, -1, 2, -1, -1, -1, -1,
257 -1, 3, -1, -1, 4, -1, 5, 6,
258 7, -1, -1, -1, -1, 8, -1, -1,
259 -1, 9, 10, 11, -1, -1, 12, 13,
260 14, -1, 15, -1, 16, 17, 18, 19,
261 -1, 20, 21, 22, 23, 24, -1, -1,
262 -1, -1, 25, -1, 26, 27, -1, 28,
263 29, 30, -1, 31, 32, -1, 33, -1,
264 34, 35, 36, -1, 37, -1, -1, 38,
265 39, -1, -1, -1, 40, 41, -1, -1,
266 42, 43, 44, 45, 46, 47, -1, 48,
267 49, 50, 51, -1, 52, -1, -1, 53,
268 54, 55, 56, 57, -1, 58, 59, -273,
269 62, 63, -1, 64, -96, -2, 65, 66,
270 67, -1, 68, -1, 69, 70, 71, -1,
271 72, -1, -1, 73, -1, -1, -1, 74,
272 75, 76, -1, 77, -1, -1, 78, -1,
273 -1, 79, 80, 81, 82, 83, 84, 85,
274 -1, -1, 86, 87, 88, -1, 89, 90,
275 -1, 91, -1, 92, -1, 93, -1, -1,
276 -1, 94, -1, -1, 95, -1, 96, -1,
277 -1, -1, -1, 97, 98, 99, -1, 100,
278 -1, 101, 102, 103, -1, -1, -1, -1,
279 -1, 104, -1, 105, 106, -1, -1, -1,
280 -1, -1, 107, -1, -1, -1, -1, 108,
281 -1, -1, -1, -1, -1, -1, -1, -1,
282 -1, 109, -1, -1, 110, -1, 111, -1,
283 -1, -1, -1, -1, 112, 113, -1, 114,
284 -1, 115, 116, 117, -1, 118, 119, 120,
285 -1, -1, 121, 122, -1, 123, -1, 124,
286 -1, -1, -1, -1, -1, -1, -1, 125,
287 -1, -1, -1, -1, -1, -1, -1, -1,
288 -1, 126, 127, -1, -1, -1, 128, 129,
289 -1, -1, -1, 130, 131, -1, -1, 132,
290 133, 134, -1, -1, -1, -1, -1, -1,
291 -1, -1, -1, -1, 135, -1, -1, -1,
292 -1, -1, -1, -1, -1, -1, -1, -1,
293 -1, -1, -1, -1, -1, -1, -1, -1,
294 -1, -1, -1, -1, -1, -1, -1, -1,
295 136, -1, -1, -1, 137, 138, -1, -1,
296 -1, -1, 139, -1, 140, -1, -1, -1,
297 -1, -1, -1, -1, -1, 141, -1, 142,
298 -1, -1, -1, -1, -1, -1, -1, -1,
299 -1, -1, 143, 144, -1, -1, -1, -1,
300 -1, -1, -1, -1, 145, -1, -1, -1,
301 -1, -1, 146, -1, -1, -1, -1, -1,
302 -1, 147, 148, -1, -1, -1, -1, -1,
303 -1, 149, -1, -1, -1, -1, -1, -1,
304 -1, -1, -1, -1, -1, -1, -1, -1,
305 -1, -1, 150, -1, -1, -1, -1, -1,
306 -1, -1, -1, 151, -1, -1, -1, -1,
307 -1, -1, -1, -1, -1, -1, -1, -1,
308 -1, -1, -1, -1, -1, -1, -1, -1,
309 -1, -1, -1, -1, -1, -1, -1, -1,
310 -1, -1, -1, -1, -1, -1, 152, -1,
311 -1, -1, -1, -1, -1, -1, 153, -1,
312 -1, -1, -1, -1, -1, 154, -1, -1,
313 -1, -1, -1, -1, -1, -1, -1, -1,
314 -1, -1, -1, -1, -1, -1, -1, -1,
315 -1, -1, 155
316 };
317
318 if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
319 {
320 register int key = hash (str, len);
321
322 if (key <= MAX_HASH_VALUE && key >= 0)
323 {
324 register int index = lookup[key];
325
326 if (index >= 0)
327 {
328 register const char *s = wordlist[index];
329
330 if (*str == *s && !strcmp (str + 1, s + 1))
331 return s;
332 }
333 else if (index < -TOTAL_KEYWORDS)
334 {
335 register int offset = - 1 - TOTAL_KEYWORDS - index;
336 register const char * const *wordptr = &wordlist[TOTAL_KEYWORDS + lookup[offset]];
337 register const char * const *wordendptr = wordptr + -lookup[offset + 1];
338
339 while (wordptr < wordendptr)
340 {
341 register const char *s = *wordptr;
342
343 if (*str == *s && !strcmp (str + 1, s + 1))
344 return s;
345 wordptr++;
346 }
347 }
348 }
349 }
350 return 0;
351 }
This page took 0.050848 seconds and 5 git commands to generate.