context_check(clist);
for(CondList::const_iterator it = clist->begin(); it != clist->end(); ++it)
{
+ if (specMap.find(*it) == specMap.end())
+ {
+ condnames.push_back (*it);
+ }
RuleOp * def = new RuleOp
( code->loc
, in->mkDefault ()
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 193, 193, 195, 199, 203, 211, 219, 223, 227,
- 231, 247, 264, 268, 274, 279, 285, 289, 303, 319,
- 324, 330, 345, 362, 381, 387, 395, 398, 405, 411,
- 421, 424, 432, 435, 442, 446, 453, 457, 464, 468,
- 475, 479, 494, 513, 517, 521, 525, 532, 542, 546
+ 0, 197, 197, 199, 203, 207, 215, 223, 227, 231,
+ 235, 251, 268, 272, 278, 283, 289, 293, 307, 323,
+ 328, 334, 349, 366, 385, 391, 399, 402, 409, 415,
+ 425, 428, 436, 439, 446, 450, 457, 461, 468, 472,
+ 479, 483, 498, 517, 521, 525, 529, 536, 546, 550
};
#endif
--- /dev/null
+/* Generated by re2c */
+#include <stdio.h>
+
+
+enum YYCONDTYPE {
+ yycinit,
+ yycC2,
+};
+
+
+int test(const char* str)
+{
+ const unsigned char* YYCURSOR = (const unsigned char*)str;
+ const unsigned char* YYMARKER;
+ const unsigned char *YYCTXMARKER;
+ int c = yycinit;
+
+
+{
+ unsigned char yych;
+ switch (c) {
+ case yycinit: goto yyc_init;
+ case yycC2: goto yyc_C2;
+ }
+/* *********************************** */
+yyc_C2:
+ yych = *YYCURSOR;
+ switch (yych) {
+ case 'B': goto yy5;
+ default: goto yy3;
+ }
+yy3:
+ ++YYCURSOR;
+ { return 0; }
+yy5:
+ ++YYCURSOR;
+ { return 1; }
+/* *********************************** */
+yyc_init:
+ yych = *YYCURSOR;
+ switch (yych) {
+ case 'A': goto yy11;
+ default: goto yy9;
+ }
+yy9:
+ ++YYCURSOR;
+ { return 0; }
+yy11:
+ ++YYCURSOR;
+ c = yycC2;
+ goto yyc_C2;
+}
+
+}
+
+int main()
+{
+ printf("%d\n", test("AB"));
+ return 0;
+}
--- /dev/null
+#include <stdio.h>
+
+/*!types:re2c*/
+
+int test(const char* str)
+{
+ const unsigned char* YYCURSOR = (const unsigned char*)str;
+ const unsigned char* YYMARKER;
+ const unsigned char *YYCTXMARKER;
+ int c = yycinit;
+
+ /*!re2c
+ re2c:define:YYCTYPE = "unsigned char";
+ re2c:yyfill:enable = 0;
+ re2c:define:YYGETCONDITION = "c";
+ re2c:define:YYGETCONDITION:naked = 1;
+ re2c:define:YYSETCONDITION = "c = @@;";
+ re2c:define:YYSETCONDITION:naked = 1;
+
+ //<*>* { return 0; }
+ <init>* { return 0; }
+ <init>"A" :=> C2
+ <C2>* { return 0; }
+ <C2>"B" { return 1; }
+ */
+}
+
+int main()
+{
+ printf("%d\n", test("AB"));
+ return 0;
+}