Fix #396
This commit is contained in:
Daniel Buckmaster 2015-03-01 14:13:50 +11:00
commit 18cc91000e
2 changed files with 125 additions and 136 deletions

View file

@ -302,7 +302,7 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
#define YY_NUM_RULES 94
#define YY_END_OF_BUFFER 95
static yyconst short int yy_accept[233] =
static yyconst short int yy_accept[224] =
{ 0,
0, 0, 95, 93, 1, 5, 4, 51, 93, 93,
58, 57, 93, 41, 42, 45, 43, 56, 44, 50,
@ -320,16 +320,15 @@ static yyconst short int yy_accept[233] =
92, 87, 0, 32, 3, 3, 91, 0, 91, 89,
29, 30, 35, 34, 88, 88, 88, 88, 88, 88,
88, 88, 73, 88, 88, 76, 88, 88, 88, 88,
88, 88, 92, 0, 2, 2, 88, 88, 79, 88,
88, 88, 92, 0, 3, 2, 88, 88, 79, 88,
88, 88, 66, 88, 88, 88, 88, 88, 88, 88,
88, 85, 88, 2, 2, 2, 2, 2, 88, 64,
88, 88, 88, 86, 88, 88, 88, 88, 88, 88,
88, 68, 0, 2, 2, 67, 88, 88, 88, 88,
88, 85, 88, 3, 0, 88, 64, 88, 88, 88,
86, 88, 88, 88, 88, 88, 88, 88, 68, 0,
67, 88, 88, 88, 88, 88, 88, 88, 65, 88,
88, 88, 88, 65, 88, 81, 0, 2, 2, 88,
88, 82, 72, 88, 88, 83, 88, 80, 0, 2,
2, 2, 74, 88, 71, 75, 88, 88, 78, 84,
77, 0
81, 0, 88, 88, 82, 72, 88, 88, 83, 88,
80, 0, 74, 88, 71, 75, 88, 88, 0, 78,
84, 77, 0
} ;
static yyconst int yy_ec[256] =
@ -375,69 +374,67 @@ static yyconst int yy_meta[68] =
7, 7, 7, 1, 1, 1, 1
} ;
static yyconst short int yy_base[248] =
static yyconst short int yy_base[237] =
{ 0,
0, 0, 380, 381, 377, 381, 381, 61, 63, 51,
53, 65, 66, 381, 381, 354, 64, 381, 66, 60,
68, 76, 80, 356, 381, 60, 352, 77, 381, 381,
0, 341, 338, 345, 381, 381, 348, 311, 311, 54,
61, 315, 59, 38, 62, 309, 323, 318, 62, 306,
313, 381, 89, 381, 381, 361, 338, 381, 111, 381,
357, 100, 381, 339, 381, 381, 381, 112, 381, 355,
381, 381, 381, 333, 381, 381, 107, 381, 339, 381,
110, 114, 121, 0, 381, 332, 381, 381, 381, 331,
0, 0, 324, 324, 381, 292, 303, 290, 293, 287,
0, 0, 337, 338, 334, 338, 338, 61, 63, 51,
53, 65, 66, 338, 338, 311, 64, 338, 66, 60,
68, 76, 80, 313, 338, 60, 309, 77, 338, 338,
0, 298, 295, 302, 338, 338, 305, 268, 268, 54,
61, 272, 59, 38, 62, 266, 280, 275, 62, 263,
270, 338, 89, 338, 338, 318, 295, 338, 111, 338,
314, 100, 338, 296, 338, 338, 338, 112, 338, 312,
338, 338, 338, 290, 338, 338, 107, 338, 296, 338,
110, 114, 121, 0, 338, 289, 338, 338, 338, 288,
0, 0, 281, 281, 338, 249, 260, 247, 250, 244,
298, 0, 286, 291, 285, 287, 0, 0, 287, 278,
0, 294, 278, 282, 285, 274, 283, 381, 381, 381,
313, 312, 311, 381, 0, 139, 119, 125, 128, 0,
381, 381, 0, 0, 283, 286, 281, 267, 283, 282,
277, 264, 275, 276, 273, 0, 267, 257, 268, 256,
268, 261, 293, 292, 146, 152, 253, 258, 0, 258,
264, 246, 0, 259, 262, 244, 244, 259, 243, 247,
254, 0, 251, 155, 157, 162, 165, 168, 237, 0,
241, 242, 241, 0, 248, 241, 230, 199, 185, 190,
183, 0, 215, 173, 175, 0, 168, 172, 161, 167,
255, 0, 243, 248, 242, 244, 0, 0, 244, 235,
0, 251, 235, 239, 242, 231, 240, 338, 338, 338,
270, 269, 268, 338, 0, 139, 119, 125, 128, 0,
338, 338, 0, 0, 240, 243, 238, 224, 240, 239,
234, 221, 232, 233, 230, 0, 224, 214, 225, 213,
225, 218, 250, 249, 146, 152, 210, 215, 0, 215,
221, 203, 0, 216, 219, 201, 201, 216, 200, 204,
211, 0, 208, 155, 237, 193, 0, 197, 198, 197,
0, 204, 197, 190, 197, 190, 197, 193, 0, 225,
0, 180, 184, 179, 177, 153, 158, 151, 0, 134,
154, 164, 159, 0, 145, 198, 185, 178, 181, 153,
154, 0, 191, 141, 146, 0, 117, 381, 0, 184,
186, 191, 0, 110, 381, 0, 88, 76, 0, 0,
0, 381, 209, 213, 220, 224, 228, 232, 239, 119,
243, 250, 257, 264, 271, 278, 285
187, 157, 143, 144, 0, 176, 123, 126, 0, 112,
338, 160, 0, 115, 338, 0, 88, 76, 162, 0,
0, 0, 338, 170, 174, 181, 185, 189, 193, 200,
119, 204, 211, 218, 225, 232
} ;
static yyconst short int yy_def[248] =
static yyconst short int yy_def[237] =
{ 0,
232, 1, 232, 232, 232, 232, 232, 232, 233, 234,
234, 232, 235, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
236, 236, 236, 236, 232, 232, 232, 236, 236, 236,
236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
236, 232, 232, 232, 232, 232, 232, 232, 233, 232,
233, 237, 232, 238, 232, 232, 232, 235, 232, 235,
232, 232, 232, 232, 232, 232, 232, 232, 239, 232,
232, 232, 232, 240, 232, 232, 232, 232, 232, 232,
236, 236, 236, 236, 232, 236, 236, 236, 236, 236,
223, 1, 223, 223, 223, 223, 223, 223, 224, 225,
225, 223, 226, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
227, 227, 227, 227, 223, 223, 223, 227, 227, 227,
227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
227, 223, 223, 223, 223, 223, 223, 223, 224, 223,
224, 228, 223, 229, 223, 223, 223, 226, 223, 226,
223, 223, 223, 223, 223, 223, 223, 223, 230, 223,
223, 223, 223, 231, 223, 223, 223, 223, 223, 223,
227, 227, 227, 227, 223, 227, 227, 227, 227, 227,
236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 236, 236, 236, 236, 236, 232, 232, 232,
241, 238, 238, 232, 239, 242, 232, 232, 232, 240,
232, 232, 236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 241, 241, 243, 244, 236, 236, 236, 236,
236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 236, 243, 232, 243, 244, 244, 236, 236,
236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
236, 236, 232, 243, 244, 236, 236, 236, 236, 236,
227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
227, 227, 227, 227, 227, 227, 227, 223, 223, 223,
232, 229, 229, 223, 230, 233, 223, 223, 223, 231,
223, 223, 227, 227, 227, 227, 227, 227, 227, 227,
227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
227, 227, 232, 232, 234, 223, 227, 227, 227, 227,
227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
227, 227, 227, 234, 223, 227, 227, 227, 227, 227,
227, 227, 227, 227, 227, 227, 227, 227, 227, 223,
227, 227, 227, 227, 227, 227, 227, 227, 227, 227,
236, 236, 236, 236, 236, 236, 232, 245, 246, 236,
236, 236, 236, 236, 236, 236, 236, 232, 247, 243,
244, 244, 236, 236, 232, 236, 236, 236, 236, 236,
236, 0, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232
227, 235, 227, 227, 227, 227, 227, 227, 227, 227,
223, 236, 227, 227, 223, 227, 227, 227, 236, 227,
227, 227, 0, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223
} ;
static yyconst short int yy_nxt[449] =
static yyconst short int yy_nxt[406] =
{ 0,
4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
@ -453,44 +450,40 @@ static yyconst short int yy_nxt[449] =
89, 90, 104, 61, 100, 109, 70, 83, 101, 110,
99, 83, 118, 114, 84, 105, 60, 102, 62, 62,
106, 69, 130, 83, 115, 77, 77, 83, 127, 127,
81, 231, 82, 82, 128, 230, 128, 127, 127, 129,
129, 156, 156, 129, 129, 83, 129, 129, 175, 175,
83, 61, 70, 119, 175, 175, 125, 175, 175, 175,
175, 83, 229, 176, 175, 175, 83, 175, 175, 178,
175, 175, 176, 228, 193, 175, 175, 175, 175, 194,
221, 221, 178, 221, 221, 195, 175, 175, 175, 175,
208, 227, 209, 175, 175, 208, 226, 225, 209, 224,
81, 222, 82, 82, 128, 221, 128, 127, 127, 129,
129, 156, 156, 129, 129, 83, 129, 129, 156, 156,
83, 61, 70, 119, 156, 156, 125, 156, 156, 156,
156, 83, 156, 156, 156, 156, 83, 220, 218, 175,
59, 217, 59, 59, 59, 59, 59, 64, 216, 64,
64, 68, 215, 68, 68, 68, 68, 68, 91, 214,
213, 91, 121, 211, 210, 121, 122, 122, 209, 122,
223, 176, 219, 178, 218, 217, 216, 215, 178, 59,
214, 59, 59, 59, 59, 59, 64, 213, 64, 64,
68, 212, 68, 68, 68, 68, 68, 91, 211, 210,
91, 121, 207, 206, 121, 122, 122, 205, 122, 125,
204, 125, 125, 125, 125, 125, 153, 153, 203, 153,
155, 155, 155, 155, 155, 155, 155, 174, 174, 174,
174, 174, 174, 174, 177, 177, 177, 177, 177, 177,
177, 220, 220, 220, 220, 220, 220, 220, 222, 222,
222, 222, 222, 222, 222, 156, 156, 202, 156, 156,
156, 156, 201, 200, 199, 198, 197, 196, 192, 191,
125, 208, 125, 125, 125, 125, 125, 153, 153, 207,
153, 155, 155, 155, 155, 155, 155, 155, 174, 174,
174, 174, 174, 174, 174, 212, 212, 206, 212, 212,
212, 212, 219, 219, 219, 219, 219, 219, 219, 205,
204, 203, 202, 201, 200, 199, 198, 197, 196, 195,
194, 193, 192, 191, 190, 189, 188, 187, 186, 185,
184, 183, 182, 181, 180, 179, 178, 177, 176, 154,
154, 173, 172, 171, 170, 169, 168, 167, 166, 165,
164, 163, 162, 161, 160, 159, 158, 157, 123, 123,
154, 152, 151, 150, 149, 148, 147, 146, 145, 144,
190, 189, 188, 187, 186, 185, 184, 183, 182, 181,
180, 179, 154, 154, 173, 172, 171, 170, 169, 168,
167, 166, 165, 164, 163, 162, 161, 160, 159, 158,
157, 123, 123, 154, 152, 151, 150, 149, 148, 147,
146, 145, 144, 143, 142, 141, 140, 139, 138, 137,
136, 135, 134, 133, 132, 131, 126, 124, 68, 123,
59, 120, 56, 117, 116, 113, 112, 111, 103, 97,
96, 95, 94, 93, 92, 88, 85, 71, 56, 232,
3, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
143, 142, 141, 140, 139, 138, 137, 136, 135, 134,
133, 132, 131, 126, 124, 68, 123, 59, 120, 56,
117, 116, 113, 112, 111, 103, 97, 96, 95, 94,
93, 92, 88, 85, 71, 56, 223, 3, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232
223, 223, 223, 223, 223
} ;
static yyconst short int yy_chk[449] =
static yyconst short int yy_chk[406] =
{ 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@ -505,42 +498,38 @@ static yyconst short int yy_chk[449] =
28, 28, 43, 9, 41, 45, 13, 22, 41, 45,
40, 23, 53, 49, 22, 43, 59, 41, 62, 62,
43, 68, 240, 22, 49, 77, 77, 23, 81, 81,
82, 228, 82, 82, 83, 227, 83, 127, 127, 83,
43, 68, 231, 22, 49, 77, 77, 23, 81, 81,
82, 218, 82, 82, 83, 217, 83, 127, 127, 83,
83, 126, 126, 128, 128, 82, 129, 129, 155, 155,
127, 59, 68, 53, 156, 156, 126, 174, 174, 175,
175, 82, 224, 155, 176, 176, 127, 177, 177, 156,
178, 178, 174, 217, 175, 194, 194, 195, 195, 176,
208, 208, 177, 209, 209, 178, 220, 220, 221, 221,
194, 215, 195, 222, 222, 208, 214, 213, 209, 211,
127, 59, 68, 53, 156, 156, 126, 174, 174, 202,
202, 82, 212, 212, 219, 219, 127, 214, 210, 156,
224, 208, 224, 224, 224, 224, 224, 225, 207, 225,
225, 226, 206, 226, 226, 226, 226, 226, 227, 204,
203, 227, 228, 201, 200, 228, 229, 229, 198, 229,
210, 220, 207, 221, 206, 205, 203, 202, 222, 233,
201, 233, 233, 233, 233, 233, 234, 200, 234, 234,
235, 199, 235, 235, 235, 235, 235, 236, 198, 197,
236, 237, 193, 191, 237, 238, 238, 190, 238, 239,
189, 239, 239, 239, 239, 239, 241, 241, 188, 241,
242, 242, 242, 242, 242, 242, 242, 243, 243, 243,
243, 243, 243, 243, 244, 244, 244, 244, 244, 244,
244, 245, 245, 245, 245, 245, 245, 245, 246, 246,
246, 246, 246, 246, 246, 247, 247, 187, 247, 247,
247, 247, 186, 185, 183, 182, 181, 179, 173, 171,
230, 197, 230, 230, 230, 230, 230, 232, 232, 196,
232, 233, 233, 233, 233, 233, 233, 233, 234, 234,
234, 234, 234, 234, 234, 235, 235, 195, 235, 235,
235, 235, 236, 236, 236, 236, 236, 236, 236, 194,
193, 192, 190, 188, 187, 186, 185, 184, 183, 182,
180, 179, 178, 176, 175, 173, 171, 170, 169, 168,
167, 166, 165, 164, 162, 161, 160, 158, 157, 154,
153, 152, 151, 150, 149, 148, 147, 145, 144, 143,
142, 141, 140, 139, 138, 137, 136, 135, 123, 122,
121, 117, 116, 115, 114, 113, 112, 110, 109, 106,
170, 169, 168, 167, 166, 165, 164, 162, 161, 160,
158, 157, 154, 153, 152, 151, 150, 149, 148, 147,
145, 144, 143, 142, 141, 140, 139, 138, 137, 136,
135, 123, 122, 121, 117, 116, 115, 114, 113, 112,
110, 109, 106, 105, 104, 103, 101, 100, 99, 98,
97, 96, 94, 93, 90, 86, 79, 74, 70, 64,
61, 57, 56, 51, 50, 48, 47, 46, 42, 39,
38, 37, 34, 33, 32, 27, 24, 16, 5, 3,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
105, 104, 103, 101, 100, 99, 98, 97, 96, 94,
93, 90, 86, 79, 74, 70, 64, 61, 57, 56,
51, 50, 48, 47, 46, 42, 39, 38, 37, 34,
33, 32, 27, 24, 16, 5, 3, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
223, 223, 223, 223, 223, 223, 223, 223, 223, 223,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232
223, 223, 223, 223, 223
} ;
static yy_state_type yy_last_accepting_state;
@ -642,7 +631,7 @@ void CMDerror(char * s, ...);
// Reset the parser.
void CMDrestart(FILE *in);
#line 646 "CMDscan.cpp"
#line 635 "CMDscan.cpp"
/* Macros after this point can all be overridden by user definitions in
* section 1.
@ -792,7 +781,7 @@ YY_DECL
#line 105 "CMDscan.l"
;
#line 796 "CMDscan.cpp"
#line 785 "CMDscan.cpp"
if ( yy_init )
{
@ -843,13 +832,13 @@ yy_match:
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 233 )
if ( yy_current_state >= 224 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
++yy_cp;
}
while ( yy_base[yy_current_state] != 381 );
while ( yy_base[yy_current_state] != 338 );
yy_find_action:
yy_act = yy_accept[yy_current_state];
@ -1298,7 +1287,7 @@ YY_RULE_SETUP
#line 222 "CMDscan.l"
ECHO;
YY_BREAK
#line 1302 "CMDscan.cpp"
#line 1291 "CMDscan.cpp"
case YY_STATE_EOF(INITIAL):
yyterminate();
@ -1587,7 +1576,7 @@ static yy_state_type yy_get_previous_state()
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 233 )
if ( yy_current_state >= 224 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@ -1622,11 +1611,11 @@ yy_state_type yy_current_state;
while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
{
yy_current_state = (int) yy_def[yy_current_state];
if ( yy_current_state >= 233 )
if ( yy_current_state >= 224 )
yy_c = yy_meta[(unsigned int) yy_c];
}
yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
yy_is_jam = (yy_current_state == 232);
yy_is_jam = (yy_current_state == 223);
return yy_is_jam ? 0 : yy_current_state;
}

View file

@ -105,7 +105,7 @@ HEXDIGIT [a-fA-F0-9]
%%
;
{SPACE}+ { }
("///"[^/][^\n\r]*[\n\r]*)+ { return(Sc_ScanDocBlock()); }
("///"([^/\n\r][^\n\r]*)?[\n\r]+)+ { return(Sc_ScanDocBlock()); }
"//"[^\n\r]* ;
[\r] ;
[\n] {lineIndex++;}