1 /* Generated by re2c */
2 #line 1 "encodings/unicode_group_P_8_encoding_policy_ignore.re"
3 // re2c $INPUT -o $OUTPUT -8 --encoding-policy ignore
4 #include <stdio.h>
5 #include "utf8.h"
6 #define YYCTYPE unsigned char
scan(const YYCTYPE * start,const YYCTYPE * const limit)7 bool scan(const YYCTYPE * start, const YYCTYPE * const limit)
8 {
9 	__attribute__((unused)) const YYCTYPE * YYMARKER; // silence compiler warnings when YYMARKER is not used
10 #	define YYCURSOR start
11 P:
12 
13 #line 14 "encodings/unicode_group_P_8_encoding_policy_ignore.c"
14 {
15 	YYCTYPE yych;
16 	yych = *YYCURSOR;
17 	switch (yych) {
18 	case '!':
19 	case '"':
20 	case '#':
21 	case '%':
22 	case '&':
23 	case '\'':
24 	case '(':
25 	case ')':
26 	case '*':
27 	case ',':
28 	case '-':
29 	case '.':
30 	case '/':
31 	case ':':
32 	case ';':
33 	case '?':
34 	case '@':
35 	case '[':
36 	case '\\':
37 	case ']':
38 	case '_':
39 	case '{':
40 	case '}':	goto yy4;
41 	case 0xC2:	goto yy6;
42 	case 0xCD:	goto yy7;
43 	case 0xCE:	goto yy8;
44 	case 0xD5:	goto yy9;
45 	case 0xD6:	goto yy10;
46 	case 0xD7:	goto yy11;
47 	case 0xD8:	goto yy12;
48 	case 0xD9:	goto yy13;
49 	case 0xDB:	goto yy14;
50 	case 0xDC:	goto yy15;
51 	case 0xDF:	goto yy16;
52 	case 0xE0:	goto yy17;
53 	case 0xE1:	goto yy18;
54 	case 0xE2:	goto yy19;
55 	case 0xE3:	goto yy20;
56 	case 0xEA:	goto yy21;
57 	case 0xEF:	goto yy22;
58 	case 0xF0:	goto yy23;
59 	default:	goto yy2;
60 	}
61 yy2:
62 	++YYCURSOR;
63 yy3:
64 #line 14 "encodings/unicode_group_P_8_encoding_policy_ignore.re"
65 	{ return YYCURSOR == limit; }
66 #line 67 "encodings/unicode_group_P_8_encoding_policy_ignore.c"
67 yy4:
68 	++YYCURSOR;
69 #line 13 "encodings/unicode_group_P_8_encoding_policy_ignore.re"
70 	{ goto P; }
71 #line 72 "encodings/unicode_group_P_8_encoding_policy_ignore.c"
72 yy6:
73 	yych = *++YYCURSOR;
74 	switch (yych) {
75 	case 0xA1:
76 	case 0xA7:
77 	case 0xAB:
78 	case 0xB6:
79 	case 0xB7:
80 	case 0xBB:
81 	case 0xBF:	goto yy4;
82 	default:	goto yy3;
83 	}
84 yy7:
85 	yych = *++YYCURSOR;
86 	switch (yych) {
87 	case 0xBE:	goto yy4;
88 	default:	goto yy3;
89 	}
90 yy8:
91 	yych = *++YYCURSOR;
92 	switch (yych) {
93 	case 0x87:	goto yy4;
94 	default:	goto yy3;
95 	}
96 yy9:
97 	yych = *++YYCURSOR;
98 	switch (yych) {
99 	case 0x9A:
100 	case 0x9B:
101 	case 0x9C:
102 	case 0x9D:
103 	case 0x9E:
104 	case 0x9F:	goto yy4;
105 	default:	goto yy3;
106 	}
107 yy10:
108 	yych = *++YYCURSOR;
109 	switch (yych) {
110 	case 0x89:
111 	case 0x8A:
112 	case 0xBE:	goto yy4;
113 	default:	goto yy3;
114 	}
115 yy11:
116 	yych = *++YYCURSOR;
117 	switch (yych) {
118 	case 0x80:
119 	case 0x83:
120 	case 0x86:
121 	case 0xB3:
122 	case 0xB4:	goto yy4;
123 	default:	goto yy3;
124 	}
125 yy12:
126 	yych = *++YYCURSOR;
127 	switch (yych) {
128 	case 0x89:
129 	case 0x8A:
130 	case 0x8C:
131 	case 0x8D:
132 	case 0x9B:
133 	case 0x9E:
134 	case 0x9F:	goto yy4;
135 	default:	goto yy3;
136 	}
137 yy13:
138 	yych = *++YYCURSOR;
139 	switch (yych) {
140 	case 0xAA:
141 	case 0xAB:
142 	case 0xAC:
143 	case 0xAD:	goto yy4;
144 	default:	goto yy3;
145 	}
146 yy14:
147 	yych = *++YYCURSOR;
148 	switch (yych) {
149 	case 0x94:	goto yy4;
150 	default:	goto yy3;
151 	}
152 yy15:
153 	yych = *++YYCURSOR;
154 	switch (yych) {
155 	case 0x80:
156 	case 0x81:
157 	case 0x82:
158 	case 0x83:
159 	case 0x84:
160 	case 0x85:
161 	case 0x86:
162 	case 0x87:
163 	case 0x88:
164 	case 0x89:
165 	case 0x8A:
166 	case 0x8B:
167 	case 0x8C:
168 	case 0x8D:	goto yy4;
169 	default:	goto yy3;
170 	}
171 yy16:
172 	yych = *++YYCURSOR;
173 	switch (yych) {
174 	case 0xB7:
175 	case 0xB8:
176 	case 0xB9:	goto yy4;
177 	default:	goto yy3;
178 	}
179 yy17:
180 	yych = *(YYMARKER = ++YYCURSOR);
181 	switch (yych) {
182 	case 0xA0:	goto yy24;
183 	case 0xA1:	goto yy26;
184 	case 0xA5:	goto yy27;
185 	case 0xAB:	goto yy28;
186 	case 0xB7:	goto yy29;
187 	case 0xB9:	goto yy30;
188 	case 0xBC:	goto yy31;
189 	case 0xBE:	goto yy32;
190 	case 0xBF:	goto yy33;
191 	default:	goto yy3;
192 	}
193 yy18:
194 	yych = *(YYMARKER = ++YYCURSOR);
195 	switch (yych) {
196 	case 0x81:	goto yy34;
197 	case 0x83:	goto yy35;
198 	case 0x8D:	goto yy36;
199 	case 0x90:	goto yy37;
200 	case 0x99:	goto yy38;
201 	case 0x9A:	goto yy39;
202 	case 0x9B:	goto yy40;
203 	case 0x9C:	goto yy41;
204 	case 0x9F:	goto yy42;
205 	case 0xA0:	goto yy43;
206 	case 0xA5:	goto yy44;
207 	case 0xA8:	goto yy45;
208 	case 0xAA:	goto yy46;
209 	case 0xAD:	goto yy47;
210 	case 0xAF:	goto yy48;
211 	case 0xB0:	goto yy49;
212 	case 0xB1:	goto yy50;
213 	case 0xB3:	goto yy51;
214 	default:	goto yy3;
215 	}
216 yy19:
217 	yych = *(YYMARKER = ++YYCURSOR);
218 	switch (yych) {
219 	case 0x80:	goto yy52;
220 	case 0x81:	goto yy53;
221 	case 0x82:	goto yy54;
222 	case 0x8C:	goto yy55;
223 	case 0x9D:	goto yy56;
224 	case 0x9F:	goto yy57;
225 	case 0xA6:	goto yy58;
226 	case 0xA7:	goto yy59;
227 	case 0xB3:	goto yy60;
228 	case 0xB5:	goto yy28;
229 	case 0xB8:	goto yy61;
230 	case 0xB9:	goto yy62;
231 	default:	goto yy3;
232 	}
233 yy20:
234 	yych = *(YYMARKER = ++YYCURSOR);
235 	switch (yych) {
236 	case 0x80:	goto yy63;
237 	case 0x82:	goto yy64;
238 	case 0x83:	goto yy35;
239 	default:	goto yy3;
240 	}
241 yy21:
242 	yych = *(YYMARKER = ++YYCURSOR);
243 	switch (yych) {
244 	case 0x93:	goto yy50;
245 	case 0x98:	goto yy65;
246 	case 0x99:	goto yy66;
247 	case 0x9B:	goto yy67;
248 	case 0xA1:	goto yy68;
249 	case 0xA3:	goto yy69;
250 	case 0xA4:	goto yy70;
251 	case 0xA5:	goto yy71;
252 	case 0xA7:	goto yy72;
253 	case 0xA9:	goto yy73;
254 	case 0xAB:	goto yy74;
255 	case 0xAF:	goto yy75;
256 	default:	goto yy3;
257 	}
258 yy22:
259 	yych = *(YYMARKER = ++YYCURSOR);
260 	switch (yych) {
261 	case 0xB4:	goto yy50;
262 	case 0xB8:	goto yy76;
263 	case 0xB9:	goto yy77;
264 	case 0xBC:	goto yy78;
265 	case 0xBD:	goto yy79;
266 	default:	goto yy3;
267 	}
268 yy23:
269 	yych = *(YYMARKER = ++YYCURSOR);
270 	switch (yych) {
271 	case 0x90:	goto yy80;
272 	case 0x91:	goto yy81;
273 	case 0x92:	goto yy82;
274 	case 0x96:	goto yy83;
275 	case 0x9B:	goto yy84;
276 	default:	goto yy3;
277 	}
278 yy24:
279 	yych = *++YYCURSOR;
280 	switch (yych) {
281 	case 0xB0:
282 	case 0xB1:
283 	case 0xB2:
284 	case 0xB3:
285 	case 0xB4:
286 	case 0xB5:
287 	case 0xB6:
288 	case 0xB7:
289 	case 0xB8:
290 	case 0xB9:
291 	case 0xBA:
292 	case 0xBB:
293 	case 0xBC:
294 	case 0xBD:
295 	case 0xBE:	goto yy4;
296 	default:	goto yy25;
297 	}
298 yy25:
299 	YYCURSOR = YYMARKER;
300 	goto yy3;
301 yy26:
302 	yych = *++YYCURSOR;
303 	switch (yych) {
304 	case 0x9E:	goto yy4;
305 	default:	goto yy25;
306 	}
307 yy27:
308 	yych = *++YYCURSOR;
309 	switch (yych) {
310 	case 0xA4:
311 	case 0xA5:
312 	case 0xB0:	goto yy4;
313 	default:	goto yy25;
314 	}
315 yy28:
316 	yych = *++YYCURSOR;
317 	switch (yych) {
318 	case 0xB0:	goto yy4;
319 	default:	goto yy25;
320 	}
321 yy29:
322 	yych = *++YYCURSOR;
323 	switch (yych) {
324 	case 0xB4:	goto yy4;
325 	default:	goto yy25;
326 	}
327 yy30:
328 	yych = *++YYCURSOR;
329 	switch (yych) {
330 	case 0x8F:
331 	case 0x9A:
332 	case 0x9B:	goto yy4;
333 	default:	goto yy25;
334 	}
335 yy31:
336 	yych = *++YYCURSOR;
337 	switch (yych) {
338 	case 0x84:
339 	case 0x85:
340 	case 0x86:
341 	case 0x87:
342 	case 0x88:
343 	case 0x89:
344 	case 0x8A:
345 	case 0x8B:
346 	case 0x8C:
347 	case 0x8D:
348 	case 0x8E:
349 	case 0x8F:
350 	case 0x90:
351 	case 0x91:
352 	case 0x92:
353 	case 0x94:
354 	case 0xBA:
355 	case 0xBB:
356 	case 0xBC:
357 	case 0xBD:	goto yy4;
358 	default:	goto yy25;
359 	}
360 yy32:
361 	yych = *++YYCURSOR;
362 	switch (yych) {
363 	case 0x85:	goto yy4;
364 	default:	goto yy25;
365 	}
366 yy33:
367 	yych = *++YYCURSOR;
368 	switch (yych) {
369 	case 0x90:
370 	case 0x91:
371 	case 0x92:
372 	case 0x93:
373 	case 0x94:
374 	case 0x99:
375 	case 0x9A:	goto yy4;
376 	default:	goto yy25;
377 	}
378 yy34:
379 	yych = *++YYCURSOR;
380 	switch (yych) {
381 	case 0x8A:
382 	case 0x8B:
383 	case 0x8C:
384 	case 0x8D:
385 	case 0x8E:
386 	case 0x8F:	goto yy4;
387 	default:	goto yy25;
388 	}
389 yy35:
390 	yych = *++YYCURSOR;
391 	switch (yych) {
392 	case 0xBB:	goto yy4;
393 	default:	goto yy25;
394 	}
395 yy36:
396 	yych = *++YYCURSOR;
397 	switch (yych) {
398 	case 0xA0:
399 	case 0xA1:
400 	case 0xA2:
401 	case 0xA3:
402 	case 0xA4:
403 	case 0xA5:
404 	case 0xA6:
405 	case 0xA7:
406 	case 0xA8:	goto yy4;
407 	default:	goto yy25;
408 	}
409 yy37:
410 	yych = *++YYCURSOR;
411 	switch (yych) {
412 	case 0x80:	goto yy4;
413 	default:	goto yy25;
414 	}
415 yy38:
416 	yych = *++YYCURSOR;
417 	switch (yych) {
418 	case 0xAD:
419 	case 0xAE:	goto yy4;
420 	default:	goto yy25;
421 	}
422 yy39:
423 	yych = *++YYCURSOR;
424 	switch (yych) {
425 	case 0x9B:
426 	case 0x9C:	goto yy4;
427 	default:	goto yy25;
428 	}
429 yy40:
430 	yych = *++YYCURSOR;
431 	switch (yych) {
432 	case 0xAB:
433 	case 0xAC:
434 	case 0xAD:	goto yy4;
435 	default:	goto yy25;
436 	}
437 yy41:
438 	yych = *++YYCURSOR;
439 	switch (yych) {
440 	case 0xB5:
441 	case 0xB6:	goto yy4;
442 	default:	goto yy25;
443 	}
444 yy42:
445 	yych = *++YYCURSOR;
446 	switch (yych) {
447 	case 0x94:
448 	case 0x95:
449 	case 0x96:
450 	case 0x98:
451 	case 0x99:
452 	case 0x9A:	goto yy4;
453 	default:	goto yy25;
454 	}
455 yy43:
456 	yych = *++YYCURSOR;
457 	switch (yych) {
458 	case 0x80:
459 	case 0x81:
460 	case 0x82:
461 	case 0x83:
462 	case 0x84:
463 	case 0x85:
464 	case 0x86:
465 	case 0x87:
466 	case 0x88:
467 	case 0x89:
468 	case 0x8A:	goto yy4;
469 	default:	goto yy25;
470 	}
471 yy44:
472 	yych = *++YYCURSOR;
473 	switch (yych) {
474 	case 0x84:
475 	case 0x85:	goto yy4;
476 	default:	goto yy25;
477 	}
478 yy45:
479 	yych = *++YYCURSOR;
480 	switch (yych) {
481 	case 0x9E:
482 	case 0x9F:	goto yy4;
483 	default:	goto yy25;
484 	}
485 yy46:
486 	yych = *++YYCURSOR;
487 	switch (yych) {
488 	case 0xA0:
489 	case 0xA1:
490 	case 0xA2:
491 	case 0xA3:
492 	case 0xA4:
493 	case 0xA5:
494 	case 0xA6:
495 	case 0xA8:
496 	case 0xA9:
497 	case 0xAA:
498 	case 0xAB:
499 	case 0xAC:
500 	case 0xAD:	goto yy4;
501 	default:	goto yy25;
502 	}
503 yy47:
504 	yych = *++YYCURSOR;
505 	switch (yych) {
506 	case 0x9A:
507 	case 0x9B:
508 	case 0x9C:
509 	case 0x9D:
510 	case 0x9E:
511 	case 0x9F:
512 	case 0xA0:	goto yy4;
513 	default:	goto yy25;
514 	}
515 yy48:
516 	yych = *++YYCURSOR;
517 	switch (yych) {
518 	case 0xBC:
519 	case 0xBD:
520 	case 0xBE:
521 	case 0xBF:	goto yy4;
522 	default:	goto yy25;
523 	}
524 yy49:
525 	yych = *++YYCURSOR;
526 	switch (yych) {
527 	case 0xBB:
528 	case 0xBC:
529 	case 0xBD:
530 	case 0xBE:
531 	case 0xBF:	goto yy4;
532 	default:	goto yy25;
533 	}
534 yy50:
535 	yych = *++YYCURSOR;
536 	switch (yych) {
537 	case 0xBE:
538 	case 0xBF:	goto yy4;
539 	default:	goto yy25;
540 	}
541 yy51:
542 	yych = *++YYCURSOR;
543 	switch (yych) {
544 	case 0x80:
545 	case 0x81:
546 	case 0x82:
547 	case 0x83:
548 	case 0x84:
549 	case 0x85:
550 	case 0x86:
551 	case 0x87:
552 	case 0x93:	goto yy4;
553 	default:	goto yy25;
554 	}
555 yy52:
556 	yych = *++YYCURSOR;
557 	switch (yych) {
558 	case 0x90:
559 	case 0x91:
560 	case 0x92:
561 	case 0x93:
562 	case 0x94:
563 	case 0x95:
564 	case 0x96:
565 	case 0x97:
566 	case 0x98:
567 	case 0x99:
568 	case 0x9A:
569 	case 0x9B:
570 	case 0x9C:
571 	case 0x9D:
572 	case 0x9E:
573 	case 0x9F:
574 	case 0xA0:
575 	case 0xA1:
576 	case 0xA2:
577 	case 0xA3:
578 	case 0xA4:
579 	case 0xA5:
580 	case 0xA6:
581 	case 0xA7:
582 	case 0xB0:
583 	case 0xB1:
584 	case 0xB2:
585 	case 0xB3:
586 	case 0xB4:
587 	case 0xB5:
588 	case 0xB6:
589 	case 0xB7:
590 	case 0xB8:
591 	case 0xB9:
592 	case 0xBA:
593 	case 0xBB:
594 	case 0xBC:
595 	case 0xBD:
596 	case 0xBE:
597 	case 0xBF:	goto yy4;
598 	default:	goto yy25;
599 	}
600 yy53:
601 	yych = *++YYCURSOR;
602 	switch (yych) {
603 	case 0x80:
604 	case 0x81:
605 	case 0x82:
606 	case 0x83:
607 	case 0x85:
608 	case 0x86:
609 	case 0x87:
610 	case 0x88:
611 	case 0x89:
612 	case 0x8A:
613 	case 0x8B:
614 	case 0x8C:
615 	case 0x8D:
616 	case 0x8E:
617 	case 0x8F:
618 	case 0x90:
619 	case 0x91:
620 	case 0x93:
621 	case 0x94:
622 	case 0x95:
623 	case 0x96:
624 	case 0x97:
625 	case 0x98:
626 	case 0x99:
627 	case 0x9A:
628 	case 0x9B:
629 	case 0x9C:
630 	case 0x9D:
631 	case 0x9E:
632 	case 0xBD:
633 	case 0xBE:	goto yy4;
634 	default:	goto yy25;
635 	}
636 yy54:
637 	yych = *++YYCURSOR;
638 	switch (yych) {
639 	case 0x8D:
640 	case 0x8E:	goto yy4;
641 	default:	goto yy25;
642 	}
643 yy55:
644 	yych = *++YYCURSOR;
645 	switch (yych) {
646 	case 0x88:
647 	case 0x89:
648 	case 0x8A:
649 	case 0x8B:
650 	case 0xA9:
651 	case 0xAA:	goto yy4;
652 	default:	goto yy25;
653 	}
654 yy56:
655 	yych = *++YYCURSOR;
656 	switch (yych) {
657 	case 0xA8:
658 	case 0xA9:
659 	case 0xAA:
660 	case 0xAB:
661 	case 0xAC:
662 	case 0xAD:
663 	case 0xAE:
664 	case 0xAF:
665 	case 0xB0:
666 	case 0xB1:
667 	case 0xB2:
668 	case 0xB3:
669 	case 0xB4:
670 	case 0xB5:	goto yy4;
671 	default:	goto yy25;
672 	}
673 yy57:
674 	yych = *++YYCURSOR;
675 	switch (yych) {
676 	case 0x85:
677 	case 0x86:
678 	case 0xA6:
679 	case 0xA7:
680 	case 0xA8:
681 	case 0xA9:
682 	case 0xAA:
683 	case 0xAB:
684 	case 0xAC:
685 	case 0xAD:
686 	case 0xAE:
687 	case 0xAF:	goto yy4;
688 	default:	goto yy25;
689 	}
690 yy58:
691 	yych = *++YYCURSOR;
692 	switch (yych) {
693 	case 0x83:
694 	case 0x84:
695 	case 0x85:
696 	case 0x86:
697 	case 0x87:
698 	case 0x88:
699 	case 0x89:
700 	case 0x8A:
701 	case 0x8B:
702 	case 0x8C:
703 	case 0x8D:
704 	case 0x8E:
705 	case 0x8F:
706 	case 0x90:
707 	case 0x91:
708 	case 0x92:
709 	case 0x93:
710 	case 0x94:
711 	case 0x95:
712 	case 0x96:
713 	case 0x97:
714 	case 0x98:	goto yy4;
715 	default:	goto yy25;
716 	}
717 yy59:
718 	yych = *++YYCURSOR;
719 	switch (yych) {
720 	case 0x98:
721 	case 0x99:
722 	case 0x9A:
723 	case 0x9B:
724 	case 0xBC:
725 	case 0xBD:	goto yy4;
726 	default:	goto yy25;
727 	}
728 yy60:
729 	yych = *++YYCURSOR;
730 	switch (yych) {
731 	case 0xB9:
732 	case 0xBA:
733 	case 0xBB:
734 	case 0xBC:
735 	case 0xBE:
736 	case 0xBF:	goto yy4;
737 	default:	goto yy25;
738 	}
739 yy61:
740 	yych = *++YYCURSOR;
741 	switch (yych) {
742 	case 0x80:
743 	case 0x81:
744 	case 0x82:
745 	case 0x83:
746 	case 0x84:
747 	case 0x85:
748 	case 0x86:
749 	case 0x87:
750 	case 0x88:
751 	case 0x89:
752 	case 0x8A:
753 	case 0x8B:
754 	case 0x8C:
755 	case 0x8D:
756 	case 0x8E:
757 	case 0x8F:
758 	case 0x90:
759 	case 0x91:
760 	case 0x92:
761 	case 0x93:
762 	case 0x94:
763 	case 0x95:
764 	case 0x96:
765 	case 0x97:
766 	case 0x98:
767 	case 0x99:
768 	case 0x9A:
769 	case 0x9B:
770 	case 0x9C:
771 	case 0x9D:
772 	case 0x9E:
773 	case 0x9F:
774 	case 0xA0:
775 	case 0xA1:
776 	case 0xA2:
777 	case 0xA3:
778 	case 0xA4:
779 	case 0xA5:
780 	case 0xA6:
781 	case 0xA7:
782 	case 0xA8:
783 	case 0xA9:
784 	case 0xAA:
785 	case 0xAB:
786 	case 0xAC:
787 	case 0xAD:
788 	case 0xAE:
789 	case 0xB0:
790 	case 0xB1:
791 	case 0xB2:
792 	case 0xB3:
793 	case 0xB4:
794 	case 0xB5:
795 	case 0xB6:
796 	case 0xB7:
797 	case 0xB8:
798 	case 0xB9:
799 	case 0xBA:
800 	case 0xBB:
801 	case 0xBC:
802 	case 0xBD:
803 	case 0xBE:
804 	case 0xBF:	goto yy4;
805 	default:	goto yy25;
806 	}
807 yy62:
808 	yych = *++YYCURSOR;
809 	switch (yych) {
810 	case 0x80:
811 	case 0x81:
812 	case 0x82:	goto yy4;
813 	default:	goto yy25;
814 	}
815 yy63:
816 	yych = *++YYCURSOR;
817 	switch (yych) {
818 	case 0x81:
819 	case 0x82:
820 	case 0x83:
821 	case 0x88:
822 	case 0x89:
823 	case 0x8A:
824 	case 0x8B:
825 	case 0x8C:
826 	case 0x8D:
827 	case 0x8E:
828 	case 0x8F:
829 	case 0x90:
830 	case 0x91:
831 	case 0x94:
832 	case 0x95:
833 	case 0x96:
834 	case 0x97:
835 	case 0x98:
836 	case 0x99:
837 	case 0x9A:
838 	case 0x9B:
839 	case 0x9C:
840 	case 0x9D:
841 	case 0x9E:
842 	case 0x9F:
843 	case 0xB0:
844 	case 0xBD:	goto yy4;
845 	default:	goto yy25;
846 	}
847 yy64:
848 	yych = *++YYCURSOR;
849 	switch (yych) {
850 	case 0xA0:	goto yy4;
851 	default:	goto yy25;
852 	}
853 yy65:
854 	yych = *++YYCURSOR;
855 	switch (yych) {
856 	case 0x8D:
857 	case 0x8E:
858 	case 0x8F:	goto yy4;
859 	default:	goto yy25;
860 	}
861 yy66:
862 	yych = *++YYCURSOR;
863 	switch (yych) {
864 	case 0xB3:
865 	case 0xBE:	goto yy4;
866 	default:	goto yy25;
867 	}
868 yy67:
869 	yych = *++YYCURSOR;
870 	switch (yych) {
871 	case 0xB2:
872 	case 0xB3:
873 	case 0xB4:
874 	case 0xB5:
875 	case 0xB6:
876 	case 0xB7:	goto yy4;
877 	default:	goto yy25;
878 	}
879 yy68:
880 	yych = *++YYCURSOR;
881 	switch (yych) {
882 	case 0xB4:
883 	case 0xB5:
884 	case 0xB6:
885 	case 0xB7:	goto yy4;
886 	default:	goto yy25;
887 	}
888 yy69:
889 	yych = *++YYCURSOR;
890 	switch (yych) {
891 	case 0x8E:
892 	case 0x8F:
893 	case 0xB8:
894 	case 0xB9:
895 	case 0xBA:	goto yy4;
896 	default:	goto yy25;
897 	}
898 yy70:
899 	yych = *++YYCURSOR;
900 	switch (yych) {
901 	case 0xAE:
902 	case 0xAF:	goto yy4;
903 	default:	goto yy25;
904 	}
905 yy71:
906 	yych = *++YYCURSOR;
907 	switch (yych) {
908 	case 0x9F:	goto yy4;
909 	default:	goto yy25;
910 	}
911 yy72:
912 	yych = *++YYCURSOR;
913 	switch (yych) {
914 	case 0x81:
915 	case 0x82:
916 	case 0x83:
917 	case 0x84:
918 	case 0x85:
919 	case 0x86:
920 	case 0x87:
921 	case 0x88:
922 	case 0x89:
923 	case 0x8A:
924 	case 0x8B:
925 	case 0x8C:
926 	case 0x8D:
927 	case 0x9E:
928 	case 0x9F:	goto yy4;
929 	default:	goto yy25;
930 	}
931 yy73:
932 	yych = *++YYCURSOR;
933 	switch (yych) {
934 	case 0x9C:
935 	case 0x9D:
936 	case 0x9E:
937 	case 0x9F:	goto yy4;
938 	default:	goto yy25;
939 	}
940 yy74:
941 	yych = *++YYCURSOR;
942 	switch (yych) {
943 	case 0x9E:
944 	case 0x9F:
945 	case 0xB0:
946 	case 0xB1:	goto yy4;
947 	default:	goto yy25;
948 	}
949 yy75:
950 	yych = *++YYCURSOR;
951 	switch (yych) {
952 	case 0xAB:	goto yy4;
953 	default:	goto yy25;
954 	}
955 yy76:
956 	yych = *++YYCURSOR;
957 	switch (yych) {
958 	case 0x90:
959 	case 0x91:
960 	case 0x92:
961 	case 0x93:
962 	case 0x94:
963 	case 0x95:
964 	case 0x96:
965 	case 0x97:
966 	case 0x98:
967 	case 0x99:
968 	case 0xB0:
969 	case 0xB1:
970 	case 0xB2:
971 	case 0xB3:
972 	case 0xB4:
973 	case 0xB5:
974 	case 0xB6:
975 	case 0xB7:
976 	case 0xB8:
977 	case 0xB9:
978 	case 0xBA:
979 	case 0xBB:
980 	case 0xBC:
981 	case 0xBD:
982 	case 0xBE:
983 	case 0xBF:	goto yy4;
984 	default:	goto yy25;
985 	}
986 yy77:
987 	yych = *++YYCURSOR;
988 	switch (yych) {
989 	case 0x80:
990 	case 0x81:
991 	case 0x82:
992 	case 0x83:
993 	case 0x84:
994 	case 0x85:
995 	case 0x86:
996 	case 0x87:
997 	case 0x88:
998 	case 0x89:
999 	case 0x8A:
1000 	case 0x8B:
1001 	case 0x8C:
1002 	case 0x8D:
1003 	case 0x8E:
1004 	case 0x8F:
1005 	case 0x90:
1006 	case 0x91:
1007 	case 0x92:
1008 	case 0x94:
1009 	case 0x95:
1010 	case 0x96:
1011 	case 0x97:
1012 	case 0x98:
1013 	case 0x99:
1014 	case 0x9A:
1015 	case 0x9B:
1016 	case 0x9C:
1017 	case 0x9D:
1018 	case 0x9E:
1019 	case 0x9F:
1020 	case 0xA0:
1021 	case 0xA1:
1022 	case 0xA3:
1023 	case 0xA8:
1024 	case 0xAA:
1025 	case 0xAB:	goto yy4;
1026 	default:	goto yy25;
1027 	}
1028 yy78:
1029 	yych = *++YYCURSOR;
1030 	switch (yych) {
1031 	case 0x81:
1032 	case 0x82:
1033 	case 0x83:
1034 	case 0x85:
1035 	case 0x86:
1036 	case 0x87:
1037 	case 0x88:
1038 	case 0x89:
1039 	case 0x8A:
1040 	case 0x8C:
1041 	case 0x8D:
1042 	case 0x8E:
1043 	case 0x8F:
1044 	case 0x9A:
1045 	case 0x9B:
1046 	case 0x9F:
1047 	case 0xA0:
1048 	case 0xBB:
1049 	case 0xBC:
1050 	case 0xBD:
1051 	case 0xBF:	goto yy4;
1052 	default:	goto yy25;
1053 	}
1054 yy79:
1055 	yych = *++YYCURSOR;
1056 	switch (yych) {
1057 	case 0x9B:
1058 	case 0x9D:
1059 	case 0x9F:
1060 	case 0xA0:
1061 	case 0xA1:
1062 	case 0xA2:
1063 	case 0xA3:
1064 	case 0xA4:
1065 	case 0xA5:	goto yy4;
1066 	default:	goto yy25;
1067 	}
1068 yy80:
1069 	yych = *++YYCURSOR;
1070 	switch (yych) {
1071 	case 0x84:	goto yy62;
1072 	case 0x8E:	goto yy71;
1073 	case 0x8F:	goto yy85;
1074 	case 0x95:	goto yy86;
1075 	case 0xA1:	goto yy87;
1076 	case 0xA4:	goto yy88;
1077 	case 0xA9:	goto yy89;
1078 	case 0xAB:	goto yy90;
1079 	case 0xAC:	goto yy91;
1080 	case 0xAE:	goto yy92;
1081 	default:	goto yy25;
1082 	}
1083 yy81:
1084 	yych = *++YYCURSOR;
1085 	switch (yych) {
1086 	case 0x81:	goto yy93;
1087 	case 0x82:	goto yy94;
1088 	case 0x83:	goto yy95;
1089 	case 0x85:	goto yy96;
1090 	case 0x87:	goto yy97;
1091 	case 0x88:	goto yy98;
1092 	case 0x93:	goto yy99;
1093 	case 0x97:	goto yy100;
1094 	case 0x99:	goto yy101;
1095 	default:	goto yy25;
1096 	}
1097 yy82:
1098 	yych = *++YYCURSOR;
1099 	switch (yych) {
1100 	case 0x91:	goto yy102;
1101 	default:	goto yy25;
1102 	}
1103 yy83:
1104 	yych = *++YYCURSOR;
1105 	switch (yych) {
1106 	case 0xA9:	goto yy70;
1107 	case 0xAB:	goto yy103;
1108 	case 0xAC:	goto yy104;
1109 	case 0xAD:	goto yy105;
1110 	default:	goto yy25;
1111 	}
1112 yy84:
1113 	yych = *++YYCURSOR;
1114 	switch (yych) {
1115 	case 0xB2:	goto yy71;
1116 	default:	goto yy25;
1117 	}
1118 yy85:
1119 	yych = *++YYCURSOR;
1120 	switch (yych) {
1121 	case 0x90:	goto yy4;
1122 	default:	goto yy25;
1123 	}
1124 yy86:
1125 	yych = *++YYCURSOR;
1126 	switch (yych) {
1127 	case 0xAF:	goto yy4;
1128 	default:	goto yy25;
1129 	}
1130 yy87:
1131 	yych = *++YYCURSOR;
1132 	switch (yych) {
1133 	case 0x97:	goto yy4;
1134 	default:	goto yy25;
1135 	}
1136 yy88:
1137 	yych = *++YYCURSOR;
1138 	switch (yych) {
1139 	case 0x9F:
1140 	case 0xBF:	goto yy4;
1141 	default:	goto yy25;
1142 	}
1143 yy89:
1144 	yych = *++YYCURSOR;
1145 	switch (yych) {
1146 	case 0x90:
1147 	case 0x91:
1148 	case 0x92:
1149 	case 0x93:
1150 	case 0x94:
1151 	case 0x95:
1152 	case 0x96:
1153 	case 0x97:
1154 	case 0x98:
1155 	case 0xBF:	goto yy4;
1156 	default:	goto yy25;
1157 	}
1158 yy90:
1159 	yych = *++YYCURSOR;
1160 	switch (yych) {
1161 	case 0xB0:
1162 	case 0xB1:
1163 	case 0xB2:
1164 	case 0xB3:
1165 	case 0xB4:
1166 	case 0xB5:
1167 	case 0xB6:	goto yy4;
1168 	default:	goto yy25;
1169 	}
1170 yy91:
1171 	yych = *++YYCURSOR;
1172 	switch (yych) {
1173 	case 0xB9:
1174 	case 0xBA:
1175 	case 0xBB:
1176 	case 0xBC:
1177 	case 0xBD:
1178 	case 0xBE:
1179 	case 0xBF:	goto yy4;
1180 	default:	goto yy25;
1181 	}
1182 yy92:
1183 	yych = *++YYCURSOR;
1184 	switch (yych) {
1185 	case 0x99:
1186 	case 0x9A:
1187 	case 0x9B:
1188 	case 0x9C:	goto yy4;
1189 	default:	goto yy25;
1190 	}
1191 yy93:
1192 	yych = *++YYCURSOR;
1193 	switch (yych) {
1194 	case 0x87:
1195 	case 0x88:
1196 	case 0x89:
1197 	case 0x8A:
1198 	case 0x8B:
1199 	case 0x8C:
1200 	case 0x8D:	goto yy4;
1201 	default:	goto yy25;
1202 	}
1203 yy94:
1204 	yych = *++YYCURSOR;
1205 	switch (yych) {
1206 	case 0xBB:
1207 	case 0xBC:
1208 	case 0xBE:
1209 	case 0xBF:	goto yy4;
1210 	default:	goto yy25;
1211 	}
1212 yy95:
1213 	yych = *++YYCURSOR;
1214 	switch (yych) {
1215 	case 0x80:
1216 	case 0x81:	goto yy4;
1217 	default:	goto yy25;
1218 	}
1219 yy96:
1220 	yych = *++YYCURSOR;
1221 	switch (yych) {
1222 	case 0x80:
1223 	case 0x81:
1224 	case 0x82:
1225 	case 0x83:
1226 	case 0xB4:
1227 	case 0xB5:	goto yy4;
1228 	default:	goto yy25;
1229 	}
1230 yy97:
1231 	yych = *++YYCURSOR;
1232 	switch (yych) {
1233 	case 0x85:
1234 	case 0x86:
1235 	case 0x87:
1236 	case 0x88:
1237 	case 0x8D:	goto yy4;
1238 	default:	goto yy25;
1239 	}
1240 yy98:
1241 	yych = *++YYCURSOR;
1242 	switch (yych) {
1243 	case 0xB8:
1244 	case 0xB9:
1245 	case 0xBA:
1246 	case 0xBB:
1247 	case 0xBC:
1248 	case 0xBD:	goto yy4;
1249 	default:	goto yy25;
1250 	}
1251 yy99:
1252 	yych = *++YYCURSOR;
1253 	switch (yych) {
1254 	case 0x86:	goto yy4;
1255 	default:	goto yy25;
1256 	}
1257 yy100:
1258 	yych = *++YYCURSOR;
1259 	switch (yych) {
1260 	case 0x81:
1261 	case 0x82:
1262 	case 0x83:
1263 	case 0x84:
1264 	case 0x85:
1265 	case 0x86:
1266 	case 0x87:
1267 	case 0x88:
1268 	case 0x89:	goto yy4;
1269 	default:	goto yy25;
1270 	}
1271 yy101:
1272 	yych = *++YYCURSOR;
1273 	switch (yych) {
1274 	case 0x81:
1275 	case 0x82:
1276 	case 0x83:	goto yy4;
1277 	default:	goto yy25;
1278 	}
1279 yy102:
1280 	yych = *++YYCURSOR;
1281 	switch (yych) {
1282 	case 0xB0:
1283 	case 0xB1:
1284 	case 0xB2:
1285 	case 0xB3:
1286 	case 0xB4:	goto yy4;
1287 	default:	goto yy25;
1288 	}
1289 yy103:
1290 	yych = *++YYCURSOR;
1291 	switch (yych) {
1292 	case 0xB5:	goto yy4;
1293 	default:	goto yy25;
1294 	}
1295 yy104:
1296 	yych = *++YYCURSOR;
1297 	switch (yych) {
1298 	case 0xB7:
1299 	case 0xB8:
1300 	case 0xB9:
1301 	case 0xBA:
1302 	case 0xBB:	goto yy4;
1303 	default:	goto yy25;
1304 	}
1305 yy105:
1306 	yych = *++YYCURSOR;
1307 	switch (yych) {
1308 	case 0x84:	goto yy4;
1309 	default:	goto yy25;
1310 	}
1311 }
1312 #line 15 "encodings/unicode_group_P_8_encoding_policy_ignore.re"
1313 
1314 }
1315 static const unsigned int chars_P [] = {0x21,0x23,  0x25,0x2a,  0x2c,0x2f,  0x3a,0x3b,  0x3f,0x40,  0x5b,0x5d,  0x5f,0x5f,  0x7b,0x7b,  0x7d,0x7d,  0xa1,0xa1,  0xa7,0xa7,  0xab,0xab,  0xb6,0xb7,  0xbb,0xbb,  0xbf,0xbf,  0x37e,0x37e,  0x387,0x387,  0x55a,0x55f,  0x589,0x58a,  0x5be,0x5be,  0x5c0,0x5c0,  0x5c3,0x5c3,  0x5c6,0x5c6,  0x5f3,0x5f4,  0x609,0x60a,  0x60c,0x60d,  0x61b,0x61b,  0x61e,0x61f,  0x66a,0x66d,  0x6d4,0x6d4,  0x700,0x70d,  0x7f7,0x7f9,  0x830,0x83e,  0x85e,0x85e,  0x964,0x965,  0x970,0x970,  0xaf0,0xaf0,  0xdf4,0xdf4,  0xe4f,0xe4f,  0xe5a,0xe5b,  0xf04,0xf12,  0xf14,0xf14,  0xf3a,0xf3d,  0xf85,0xf85,  0xfd0,0xfd4,  0xfd9,0xfda,  0x104a,0x104f,  0x10fb,0x10fb,  0x1360,0x1368,  0x1400,0x1400,  0x166d,0x166e,  0x169b,0x169c,  0x16eb,0x16ed,  0x1735,0x1736,  0x17d4,0x17d6,  0x17d8,0x17da,  0x1800,0x180a,  0x1944,0x1945,  0x1a1e,0x1a1f,  0x1aa0,0x1aa6,  0x1aa8,0x1aad,  0x1b5a,0x1b60,  0x1bfc,0x1bff,  0x1c3b,0x1c3f,  0x1c7e,0x1c7f,  0x1cc0,0x1cc7,  0x1cd3,0x1cd3,  0x2010,0x2027,  0x2030,0x2043,  0x2045,0x2051,  0x2053,0x205e,  0x207d,0x207e,  0x208d,0x208e,  0x2308,0x230b,  0x2329,0x232a,  0x2768,0x2775,  0x27c5,0x27c6,  0x27e6,0x27ef,  0x2983,0x2998,  0x29d8,0x29db,  0x29fc,0x29fd,  0x2cf9,0x2cfc,  0x2cfe,0x2cff,  0x2d70,0x2d70,  0x2e00,0x2e2e,  0x2e30,0x2e42,  0x3001,0x3003,  0x3008,0x3011,  0x3014,0x301f,  0x3030,0x3030,  0x303d,0x303d,  0x30a0,0x30a0,  0x30fb,0x30fb,  0xa4fe,0xa4ff,  0xa60d,0xa60f,  0xa673,0xa673,  0xa67e,0xa67e,  0xa6f2,0xa6f7,  0xa874,0xa877,  0xa8ce,0xa8cf,  0xa8f8,0xa8fa,  0xa92e,0xa92f,  0xa95f,0xa95f,  0xa9c1,0xa9cd,  0xa9de,0xa9df,  0xaa5c,0xaa5f,  0xaade,0xaadf,  0xaaf0,0xaaf1,  0xabeb,0xabeb,  0xfd3e,0xfd3f,  0xfe10,0xfe19,  0xfe30,0xfe52,  0xfe54,0xfe61,  0xfe63,0xfe63,  0xfe68,0xfe68,  0xfe6a,0xfe6b,  0xff01,0xff03,  0xff05,0xff0a,  0xff0c,0xff0f,  0xff1a,0xff1b,  0xff1f,0xff20,  0xff3b,0xff3d,  0xff3f,0xff3f,  0xff5b,0xff5b,  0xff5d,0xff5d,  0xff5f,0xff65,  0x10100,0x10102,  0x1039f,0x1039f,  0x103d0,0x103d0,  0x1056f,0x1056f,  0x10857,0x10857,  0x1091f,0x1091f,  0x1093f,0x1093f,  0x10a50,0x10a58,  0x10a7f,0x10a7f,  0x10af0,0x10af6,  0x10b39,0x10b3f,  0x10b99,0x10b9c,  0x11047,0x1104d,  0x110bb,0x110bc,  0x110be,0x110c1,  0x11140,0x11143,  0x11174,0x11175,  0x111c5,0x111c8,  0x111cd,0x111cd,  0x11238,0x1123d,  0x114c6,0x114c6,  0x115c1,0x115c9,  0x11641,0x11643,  0x12470,0x12474,  0x16a6e,0x16a6f,  0x16af5,0x16af5,  0x16b37,0x16b3b,  0x16b44,0x16b44,  0x1bc9f,0x1bc9f,  0x0,0x0};
encode_utf8(const unsigned int * ranges,unsigned int ranges_count,unsigned int * s)1316 static unsigned int encode_utf8 (const unsigned int * ranges, unsigned int ranges_count, unsigned int * s)
1317 {
1318 	unsigned int * const s_start = s;
1319 	for (unsigned int i = 0; i < ranges_count - 2; i += 2)
1320 		for (unsigned int j = ranges[i]; j <= ranges[i + 1]; ++j)
1321 			s += re2c::utf8::rune_to_bytes (s, j);
1322 	re2c::utf8::rune_to_bytes (s, ranges[ranges_count - 1]);
1323 	return s - s_start + 1;
1324 }
1325 
main()1326 int main ()
1327 {
1328 	unsigned int * buffer_P = new unsigned int [2756];
1329 	YYCTYPE * s = (YYCTYPE *) buffer_P;
1330 	unsigned int buffer_len = encode_utf8 (chars_P, sizeof (chars_P) / sizeof (unsigned int), buffer_P);
1331 	/* convert 32-bit code units to YYCTYPE; reuse the same buffer */
1332 	for (unsigned int i = 0; i < buffer_len; ++i) s[i] = buffer_P[i];
1333 	if (!scan (s, s + buffer_len))
1334 		printf("test 'P' failed\n");
1335 	delete [] buffer_P;
1336 	return 0;
1337 }
1338