Fortran: Add support for submodule syntax in dependency scanning
Fortran 2008 [1] adds support for a new syntax related to modules: submodule ( ParentModule ) SubModule submodule ( ParentModule : SubModule ) NestedSubModule Both of these mean that the current source file requires the module `ParentModule` to be available if it is not provided in the current file. Teach our Fortran dependency scanner to parse this syntax to extract this relationship. For now simply tolerate the nested submodule case and extract only the dependency it expresses on the main module. Further work will be needed to extract dependencies among nested submodules. [1] http://fortranwiki.org/fortran/show/Fortran+2008 Closes: #16234
This commit is contained in:
parent
bdcc1f517e
commit
b5ac8b8aa7
|
@ -347,8 +347,8 @@ static void yynoreturn yy_fatal_error (yyconst char* msg ,yyscan_t yyscanner );
|
||||||
*yy_cp = '\0'; \
|
*yy_cp = '\0'; \
|
||||||
yyg->yy_c_buf_p = yy_cp;
|
yyg->yy_c_buf_p = yy_cp;
|
||||||
|
|
||||||
#define YY_NUM_RULES 50
|
#define YY_NUM_RULES 54
|
||||||
#define YY_END_OF_BUFFER 51
|
#define YY_END_OF_BUFFER 55
|
||||||
/* This struct is not used in this scanner,
|
/* This struct is not used in this scanner,
|
||||||
but its presence is necessary. */
|
but its presence is necessary. */
|
||||||
struct yy_trans_info
|
struct yy_trans_info
|
||||||
|
@ -356,30 +356,31 @@ struct yy_trans_info
|
||||||
flex_int32_t yy_verify;
|
flex_int32_t yy_verify;
|
||||||
flex_int32_t yy_nxt;
|
flex_int32_t yy_nxt;
|
||||||
};
|
};
|
||||||
static yyconst flex_int16_t yy_accept[199] =
|
static yyconst flex_int16_t yy_accept[210] =
|
||||||
{ 0,
|
{ 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
51, 45, 47, 46, 49, 1, 45, 33, 2, 35,
|
55, 49, 51, 50, 53, 1, 49, 33, 2, 47,
|
||||||
45, 46, 38, 45, 44, 44, 44, 44, 44, 45,
|
48, 35, 37, 50, 39, 49, 46, 46, 46, 46,
|
||||||
44, 47, 45, 46, 45, 44, 9, 8, 9, 4,
|
46, 46, 49, 46, 51, 49, 50, 49, 46, 9,
|
||||||
3, 45, 0, 10, 0, 0, 0, 0, 0, 33,
|
8, 9, 4, 3, 49, 0, 10, 0, 0, 0,
|
||||||
33, 34, 36, 38, 45, 44, 44, 44, 44, 44,
|
0, 0, 33, 33, 34, 36, 39, 49, 46, 46,
|
||||||
0, 48, 44, 0, 0, 0, 12, 0, 0, 0,
|
46, 46, 46, 46, 0, 52, 46, 0, 0, 0,
|
||||||
0, 0, 0, 45, 0, 11, 44, 0, 0, 5,
|
12, 0, 0, 0, 0, 0, 0, 49, 0, 11,
|
||||||
0, 0, 0, 29, 0, 0, 33, 33, 33, 33,
|
46, 0, 0, 5, 0, 0, 0, 29, 0, 0,
|
||||||
0, 0, 39, 44, 44, 44, 43, 12, 12, 0,
|
33, 33, 33, 33, 0, 0, 40, 46, 46, 46,
|
||||||
|
|
||||||
0, 0, 23, 0, 0, 0, 0, 0, 0, 6,
|
46, 45, 12, 12, 0, 0, 0, 23, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 0, 44,
|
0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
|
||||||
44, 44, 0, 0, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 46, 46, 46, 46, 0, 0,
|
||||||
0, 0, 0, 0, 30, 31, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 44, 44, 44, 0, 24, 25, 0, 0,
|
30, 31, 0, 0, 0, 0, 0, 0, 46, 46,
|
||||||
0, 0, 0, 0, 0, 0, 0, 32, 27, 0,
|
46, 46, 0, 24, 25, 0, 0, 0, 0, 0,
|
||||||
0, 20, 0, 44, 44, 42, 0, 26, 21, 0,
|
0, 0, 0, 0, 32, 27, 0, 0, 20, 0,
|
||||||
0, 0, 19, 0, 0, 18, 28, 0, 0, 40,
|
46, 46, 43, 46, 0, 26, 21, 0, 0, 0,
|
||||||
44, 17, 22, 0, 7, 37, 7, 15, 0, 44,
|
19, 0, 0, 18, 28, 0, 0, 41, 46, 46,
|
||||||
14, 16, 41, 0, 0, 0, 13, 0
|
17, 22, 0, 7, 38, 7, 15, 0, 46, 46,
|
||||||
|
|
||||||
|
14, 16, 42, 44, 0, 0, 0, 13, 0
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst YY_CHAR yy_ec[256] =
|
static yyconst YY_CHAR yy_ec[256] =
|
||||||
|
@ -387,17 +388,17 @@ static yyconst YY_CHAR yy_ec[256] =
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
|
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
|
||||||
1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 5, 6, 7, 8, 9, 1, 10, 11, 1,
|
1, 5, 6, 7, 8, 9, 1, 10, 11, 12,
|
||||||
1, 12, 1, 13, 1, 1, 1, 14, 14, 14,
|
13, 14, 1, 15, 1, 1, 1, 16, 16, 16,
|
||||||
14, 14, 14, 14, 14, 14, 14, 15, 16, 17,
|
16, 16, 16, 16, 16, 16, 16, 17, 18, 19,
|
||||||
18, 19, 20, 1, 21, 22, 23, 24, 25, 26,
|
20, 21, 22, 1, 23, 24, 25, 26, 27, 28,
|
||||||
22, 22, 27, 22, 22, 28, 29, 30, 31, 22,
|
29, 29, 30, 29, 29, 31, 32, 33, 34, 29,
|
||||||
22, 32, 33, 34, 35, 22, 22, 22, 22, 22,
|
29, 35, 36, 37, 38, 29, 29, 29, 29, 29,
|
||||||
1, 36, 1, 1, 37, 1, 21, 22, 38, 39,
|
1, 39, 1, 1, 40, 1, 23, 24, 41, 42,
|
||||||
|
|
||||||
40, 41, 22, 22, 42, 22, 22, 43, 29, 44,
|
43, 44, 29, 29, 45, 29, 29, 46, 32, 47,
|
||||||
31, 22, 22, 32, 45, 34, 46, 22, 22, 22,
|
34, 29, 29, 35, 48, 37, 49, 29, 29, 29,
|
||||||
22, 22, 1, 1, 1, 1, 1, 1, 1, 1,
|
29, 29, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
@ -414,211 +415,217 @@ static yyconst YY_CHAR yy_ec[256] =
|
||||||
1, 1, 1, 1, 1
|
1, 1, 1, 1, 1
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst YY_CHAR yy_meta[47] =
|
static yyconst YY_CHAR yy_meta[50] =
|
||||||
{ 0,
|
{ 0,
|
||||||
1, 2, 2, 3, 4, 3, 3, 1, 1, 3,
|
1, 2, 2, 3, 4, 3, 3, 1, 1, 3,
|
||||||
3, 1, 3, 5, 1, 3, 1, 3, 6, 1,
|
3, 3, 3, 1, 3, 5, 3, 3, 1, 3,
|
||||||
7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
|
6, 1, 7, 7, 7, 7, 7, 7, 7, 7,
|
||||||
7, 7, 7, 7, 7, 1, 5, 7, 7, 7,
|
7, 7, 7, 7, 7, 7, 7, 7, 1, 5,
|
||||||
7, 7, 7, 7, 7, 7
|
7, 7, 7, 7, 7, 7, 7, 7, 7
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_uint16_t yy_base[208] =
|
static yyconst flex_uint16_t yy_base[219] =
|
||||||
{ 0,
|
{ 0,
|
||||||
0, 45, 0, 46, 392, 53, 49, 59, 61, 71,
|
0, 48, 0, 49, 513, 56, 52, 57, 62, 68,
|
||||||
392, 0, 572, 572, 364, 572, 91, 77, 572, 572,
|
515, 0, 583, 583, 509, 583, 97, 74, 583, 583,
|
||||||
342, 572, 317, 232, 0, 19, 42, 218, 40, 92,
|
583, 583, 491, 583, 423, 421, 0, 19, 40, 392,
|
||||||
137, 96, 174, 240, 220, 257, 572, 238, 97, 572,
|
36, 47, 86, 146, 88, 186, 413, 235, 275, 583,
|
||||||
572, 0, 205, 572, 302, 50, 77, 83, 59, 137,
|
407, 98, 583, 583, 0, 386, 583, 323, 65, 73,
|
||||||
156, 572, 0, 572, 123, 0, 84, 130, 90, 92,
|
81, 74, 127, 146, 583, 583, 583, 108, 0, 89,
|
||||||
167, 572, 0, 176, 347, 0, 190, 94, 175, 200,
|
120, 92, 362, 116, 161, 583, 0, 167, 371, 0,
|
||||||
121, 92, 201, 393, 193, 572, 0, 162, 222, 175,
|
168, 131, 146, 171, 81, 89, 352, 420, 353, 583,
|
||||||
171, 209, 176, 281, 184, 207, 307, 313, 328, 348,
|
0, 349, 178, 196, 175, 197, 188, 208, 196, 197,
|
||||||
338, 111, 0, 205, 213, 125, 0, 354, 185, 280,
|
256, 262, 324, 330, 337, 143, 0, 151, 220, 56,
|
||||||
|
|
||||||
336, 300, 340, 309, 278, 321, 139, 130, 245, 572,
|
305, 0, 336, 139, 225, 315, 305, 322, 318, 163,
|
||||||
335, 347, 351, 356, 360, 375, 375, 379, 383, 300,
|
320, 268, 266, 369, 583, 340, 347, 350, 350, 351,
|
||||||
80, 381, 384, 390, 392, 393, 397, 399, 397, 402,
|
357, 350, 357, 363, 140, 235, 359, 218, 362, 375,
|
||||||
403, 106, 105, 284, 572, 572, 407, 408, 411, 320,
|
379, 380, 381, 385, 384, 404, 405, 243, 235, 213,
|
||||||
413, 413, 420, 419, 421, 420, 572, 572, 421, 426,
|
583, 583, 405, 407, 410, 171, 410, 409, 419, 418,
|
||||||
428, 420, 467, 432, 101, 83, 438, 572, 572, 439,
|
423, 426, 311, 583, 583, 428, 429, 431, 173, 462,
|
||||||
446, 572, 436, 449, 63, 0, 450, 572, 572, 450,
|
435, 166, 145, 438, 583, 583, 441, 444, 583, 433,
|
||||||
453, 481, 572, 64, 0, 572, 572, 454, 460, 0,
|
448, 89, 0, 438, 450, 583, 583, 452, 457, 487,
|
||||||
464, 572, 572, 463, 572, 572, 572, 572, 468, 471,
|
583, 114, 0, 583, 583, 457, 462, 0, 465, 463,
|
||||||
495, 572, 0, 496, 0, 38, 572, 572, 513, 520,
|
583, 583, 468, 583, 583, 583, 583, 470, 471, 474,
|
||||||
|
|
||||||
526, 529, 536, 543, 550, 557, 564
|
500, 583, 0, 0, 505, 0, 65, 583, 583, 524,
|
||||||
|
531, 537, 540, 547, 554, 561, 568, 575
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_int16_t yy_def[208] =
|
static yyconst flex_int16_t yy_def[219] =
|
||||||
{ 0,
|
{ 0,
|
||||||
198, 1, 1, 1, 1, 1, 199, 199, 199, 199,
|
209, 1, 1, 1, 1, 1, 210, 210, 210, 210,
|
||||||
198, 200, 198, 198, 201, 198, 200, 198, 198, 198,
|
209, 211, 209, 209, 212, 209, 211, 209, 209, 209,
|
||||||
200, 198, 198, 200, 202, 202, 202, 202, 202, 200,
|
209, 209, 209, 209, 209, 211, 213, 213, 213, 213,
|
||||||
202, 198, 198, 198, 203, 198, 198, 198, 198, 198,
|
213, 213, 211, 213, 209, 209, 209, 214, 209, 209,
|
||||||
198, 200, 201, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 211, 212, 209, 209, 209, 209,
|
||||||
204, 198, 200, 198, 200, 202, 202, 202, 202, 202,
|
209, 209, 209, 215, 209, 209, 209, 211, 213, 213,
|
||||||
198, 198, 31, 198, 198, 65, 200, 198, 198, 198,
|
213, 213, 213, 213, 209, 209, 34, 209, 209, 69,
|
||||||
198, 198, 198, 203, 203, 198, 36, 198, 198, 198,
|
211, 209, 209, 209, 209, 209, 209, 214, 214, 209,
|
||||||
198, 198, 198, 198, 198, 198, 204, 204, 204, 204,
|
39, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 202, 202, 202, 202, 202, 198, 198, 198,
|
215, 215, 215, 215, 209, 209, 213, 213, 213, 213,
|
||||||
|
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
213, 213, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 202,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
202, 202, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 213, 213, 213, 213, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 202, 202, 202, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 213, 213,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
213, 213, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 202, 202, 202, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 205, 206, 198, 198, 198, 198, 202,
|
213, 213, 213, 213, 209, 209, 209, 209, 209, 209,
|
||||||
202, 198, 198, 198, 198, 198, 198, 198, 198, 202,
|
209, 216, 217, 209, 209, 209, 209, 213, 213, 213,
|
||||||
198, 198, 202, 198, 207, 207, 198, 0, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 213, 213,
|
||||||
|
|
||||||
198, 198, 198, 198, 198, 198, 198
|
209, 209, 213, 213, 209, 218, 218, 209, 0, 209,
|
||||||
|
209, 209, 209, 209, 209, 209, 209, 209
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_uint16_t yy_nxt[619] =
|
static yyconst flex_uint16_t yy_nxt[633] =
|
||||||
{ 0,
|
{ 0,
|
||||||
12, 13, 14, 13, 13, 15, 16, 12, 17, 18,
|
12, 13, 14, 13, 13, 15, 16, 12, 17, 18,
|
||||||
19, 12, 20, 12, 21, 22, 12, 23, 12, 24,
|
19, 20, 21, 12, 22, 12, 23, 24, 12, 25,
|
||||||
25, 25, 25, 25, 26, 25, 27, 25, 28, 25,
|
12, 26, 27, 27, 27, 27, 28, 27, 27, 29,
|
||||||
25, 25, 25, 25, 29, 30, 31, 25, 25, 26,
|
27, 30, 27, 27, 27, 31, 27, 32, 33, 34,
|
||||||
25, 27, 25, 25, 25, 29, 32, 32, 57, 32,
|
27, 27, 28, 27, 29, 27, 27, 31, 32, 35,
|
||||||
32, 38, 33, 33, 32, 34, 197, 32, 39, 40,
|
35, 60, 35, 35, 41, 36, 36, 35, 37, 41,
|
||||||
33, 38, 57, 38, 35, 186, 186, 41, 39, 40,
|
35, 42, 43, 36, 41, 60, 42, 43, 44, 38,
|
||||||
39, 58, 60, 38, 81, 36, 36, 41, 50, 50,
|
41, 42, 61, 63, 44, 53, 53, 42, 53, 54,
|
||||||
39, 50, 51, 181, 60, 58, 52, 175, 86, 81,
|
39, 39, 64, 55, 63, 208, 61, 65, 66, 68,
|
||||||
36, 36, 45, 61, 62, 45, 61, 64, 79, 80,
|
65, 85, 68, 127, 64, 69, 39, 39, 48, 83,
|
||||||
|
|
||||||
64, 79, 86, 65, 82, 174, 83, 93, 84, 156,
|
84, 48, 83, 86, 127, 87, 90, 85, 88, 95,
|
||||||
155, 144, 85, 96, 46, 47, 97, 48, 100, 82,
|
110, 189, 95, 89, 97, 195, 195, 100, 86, 87,
|
||||||
83, 106, 93, 84, 91, 49, 85, 91, 96, 46,
|
90, 111, 49, 50, 88, 110, 51, 89, 53, 53,
|
||||||
47, 97, 48, 100, 133, 106, 49, 42, 50, 50,
|
97, 53, 54, 100, 52, 111, 55, 96, 49, 50,
|
||||||
119, 50, 51, 132, 42, 42, 52, 105, 42, 92,
|
104, 51, 102, 104, 98, 52, 45, 92, 53, 183,
|
||||||
63, 42, 94, 42, 119, 42, 42, 88, 50, 122,
|
92, 93, 96, 45, 45, 94, 99, 105, 102, 45,
|
||||||
88, 89, 105, 95, 92, 90, 108, 94, 61, 62,
|
98, 67, 65, 66, 45, 65, 45, 45, 68, 104,
|
||||||
122, 61, 42, 63, 42, 66, 109, 64, 66, 109,
|
182, 68, 104, 105, 69, 124, 106, 149, 107, 83,
|
||||||
64, 42, 42, 65, 110, 42, 99, 67, 42, 99,
|
84, 125, 83, 71, 45, 67, 45, 70, 149, 124,
|
||||||
42, 99, 42, 42, 99, 76, 111, 68, 69, 114,
|
70, 106, 107, 45, 45, 136, 125, 114, 108, 45,
|
||||||
|
|
||||||
70, 71, 101, 67, 102, 107, 117, 44, 72, 42,
|
114, 71, 116, 109, 45, 115, 45, 45, 168, 136,
|
||||||
42, 111, 68, 69, 114, 70, 71, 101, 102, 72,
|
179, 72, 73, 119, 108, 74, 75, 109, 116, 168,
|
||||||
74, 117, 76, 79, 80, 103, 79, 74, 74, 104,
|
122, 179, 123, 76, 45, 45, 117, 72, 73, 119,
|
||||||
118, 74, 120, 74, 74, 112, 74, 121, 74, 74,
|
74, 75, 118, 120, 76, 78, 122, 80, 123, 163,
|
||||||
103, 113, 78, 104, 73, 118, 109, 120, 59, 109,
|
121, 117, 78, 78, 118, 164, 126, 162, 78, 120,
|
||||||
112, 55, 121, 113, 110, 74, 74, 75, 75, 76,
|
78, 152, 129, 78, 121, 78, 78, 92, 53, 164,
|
||||||
75, 75, 75, 75, 75, 75, 75, 75, 75, 75,
|
92, 93, 126, 92, 53, 94, 92, 93, 129, 150,
|
||||||
77, 75, 75, 75, 75, 75, 75, 77, 77, 77,
|
139, 94, 138, 78, 78, 79, 79, 80, 79, 79,
|
||||||
77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
|
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
|
||||||
77, 77, 75, 77, 77, 77, 77, 77, 77, 77,
|
81, 79, 79, 79, 79, 79, 79, 81, 81, 81,
|
||||||
|
|
||||||
77, 77, 77, 45, 115, 123, 45, 130, 88, 50,
|
81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
|
||||||
116, 88, 89, 157, 88, 50, 90, 88, 89, 115,
|
81, 81, 81, 79, 81, 81, 81, 81, 81, 81,
|
||||||
123, 130, 90, 126, 116, 46, 47, 157, 48, 88,
|
81, 81, 81, 81, 48, 92, 53, 48, 92, 93,
|
||||||
50, 129, 88, 89, 143, 54, 49, 90, 126, 91,
|
132, 92, 53, 94, 92, 93, 128, 104, 95, 94,
|
||||||
46, 47, 91, 48, 131, 143, 129, 49, 66, 88,
|
104, 95, 135, 175, 130, 137, 132, 133, 49, 50,
|
||||||
50, 66, 88, 89, 161, 99, 53, 90, 99, 131,
|
131, 103, 51, 113, 134, 80, 112, 175, 135, 130,
|
||||||
98, 134, 124, 127, 92, 161, 44, 98, 125, 128,
|
52, 137, 131, 133, 49, 50, 96, 51, 134, 140,
|
||||||
68, 69, 135, 70, 71, 136, 134, 124, 127, 92,
|
114, 52, 70, 114, 141, 70, 142, 144, 115, 143,
|
||||||
125, 72, 137, 128, 138, 68, 69, 135, 70, 71,
|
146, 96, 145, 147, 140, 101, 103, 148, 47, 151,
|
||||||
136, 198, 72, 74, 34, 76, 198, 137, 139, 138,
|
141, 153, 142, 144, 143, 146, 72, 73, 145, 147,
|
||||||
|
|
||||||
74, 74, 140, 141, 74, 142, 74, 74, 145, 74,
|
74, 75, 154, 148, 151, 155, 153, 157, 76, 156,
|
||||||
146, 74, 74, 139, 198, 147, 148, 140, 141, 149,
|
158, 82, 72, 73, 159, 74, 75, 77, 154, 76,
|
||||||
142, 150, 151, 145, 152, 146, 153, 154, 74, 74,
|
78, 155, 80, 157, 156, 62, 158, 78, 78, 159,
|
||||||
147, 148, 158, 159, 149, 160, 150, 151, 162, 152,
|
160, 161, 165, 78, 166, 78, 167, 169, 78, 170,
|
||||||
163, 153, 154, 164, 165, 166, 168, 158, 159, 167,
|
78, 78, 58, 57, 171, 172, 160, 161, 165, 173,
|
||||||
160, 169, 170, 162, 171, 163, 198, 173, 164, 165,
|
166, 174, 167, 169, 170, 176, 177, 178, 78, 78,
|
||||||
166, 168, 176, 167, 177, 171, 169, 170, 172, 178,
|
171, 172, 181, 180, 184, 173, 180, 174, 185, 186,
|
||||||
179, 172, 173, 180, 182, 183, 184, 176, 188, 177,
|
187, 176, 177, 178, 188, 190, 191, 103, 181, 192,
|
||||||
98, 179, 172, 189, 178, 172, 190, 191, 180, 182,
|
184, 187, 193, 197, 185, 186, 190, 198, 180, 199,
|
||||||
183, 184, 192, 188, 98, 193, 194, 194, 189, 194,
|
188, 180, 191, 200, 201, 192, 202, 203, 193, 197,
|
||||||
|
|
||||||
194, 190, 191, 198, 198, 198, 198, 192, 198, 198,
|
204, 205, 103, 198, 205, 199, 205, 56, 200, 205,
|
||||||
193, 195, 195, 37, 37, 37, 37, 37, 37, 37,
|
201, 47, 202, 203, 209, 37, 204, 209, 206, 209,
|
||||||
42, 198, 198, 198, 42, 42, 43, 43, 43, 43,
|
209, 209, 209, 206, 40, 40, 40, 40, 40, 40,
|
||||||
43, 43, 43, 56, 198, 56, 75, 75, 75, 75,
|
40, 45, 209, 209, 209, 45, 45, 46, 46, 46,
|
||||||
75, 75, 75, 87, 87, 87, 87, 87, 87, 87,
|
46, 46, 46, 46, 59, 209, 59, 79, 79, 79,
|
||||||
185, 185, 185, 198, 185, 185, 185, 187, 198, 187,
|
79, 79, 79, 79, 91, 91, 91, 91, 91, 91,
|
||||||
198, 187, 187, 187, 196, 196, 196, 196, 196, 198,
|
91, 194, 194, 194, 209, 194, 194, 194, 196, 209,
|
||||||
196, 11, 198, 198, 198, 198, 198, 198, 198, 198,
|
196, 209, 196, 196, 196, 207, 207, 207, 207, 207,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 207, 11, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
209, 209
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
static yyconst flex_int16_t yy_chk[619] =
|
static yyconst flex_int16_t yy_chk[633] =
|
||||||
{ 0,
|
{ 0,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 2, 4, 26, 2,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
|
||||||
4, 7, 2, 4, 6, 6, 196, 6, 7, 7,
|
4, 28, 2, 4, 7, 2, 4, 6, 6, 8,
|
||||||
6, 8, 26, 9, 6, 174, 174, 9, 8, 8,
|
6, 7, 7, 6, 9, 28, 8, 8, 9, 6,
|
||||||
9, 27, 29, 10, 46, 6, 6, 10, 18, 18,
|
10, 9, 29, 31, 10, 18, 18, 10, 18, 18,
|
||||||
10, 18, 18, 165, 29, 27, 18, 156, 49, 46,
|
6, 6, 32, 18, 31, 207, 29, 33, 33, 35,
|
||||||
6, 6, 17, 30, 30, 17, 30, 32, 39, 39,
|
33, 49, 35, 100, 32, 35, 6, 6, 17, 42,
|
||||||
|
|
||||||
32, 39, 49, 32, 47, 155, 47, 57, 48, 133,
|
42, 17, 42, 50, 100, 50, 52, 49, 51, 58,
|
||||||
132, 121, 48, 59, 17, 17, 60, 17, 68, 47,
|
75, 172, 58, 51, 60, 182, 182, 62, 50, 50,
|
||||||
47, 72, 57, 48, 55, 17, 48, 55, 59, 17,
|
52, 76, 17, 17, 51, 75, 17, 51, 53, 53,
|
||||||
17, 60, 17, 68, 108, 72, 17, 31, 50, 50,
|
60, 53, 53, 62, 17, 76, 53, 58, 17, 17,
|
||||||
92, 50, 50, 107, 31, 31, 50, 71, 31, 55,
|
104, 17, 64, 104, 61, 17, 34, 54, 54, 163,
|
||||||
31, 31, 58, 31, 92, 31, 31, 51, 51, 96,
|
54, 54, 58, 34, 34, 54, 61, 72, 64, 34,
|
||||||
51, 51, 71, 58, 55, 51, 78, 58, 61, 61,
|
61, 34, 65, 65, 34, 65, 34, 34, 68, 71,
|
||||||
96, 61, 31, 31, 33, 33, 80, 64, 33, 80,
|
162, 68, 71, 72, 68, 96, 73, 125, 73, 83,
|
||||||
64, 33, 33, 64, 80, 33, 99, 33, 33, 99,
|
83, 98, 83, 71, 34, 34, 36, 36, 125, 96,
|
||||||
33, 67, 33, 33, 67, 75, 81, 33, 33, 83,
|
36, 73, 73, 36, 36, 110, 98, 84, 74, 36,
|
||||||
|
|
||||||
33, 33, 69, 67, 69, 73, 85, 43, 33, 33,
|
84, 36, 85, 74, 36, 84, 36, 36, 146, 110,
|
||||||
33, 81, 33, 33, 83, 33, 33, 69, 69, 33,
|
159, 36, 36, 87, 74, 36, 36, 74, 85, 146,
|
||||||
35, 85, 35, 79, 79, 70, 79, 35, 35, 70,
|
89, 159, 90, 36, 36, 36, 86, 36, 36, 87,
|
||||||
86, 35, 94, 35, 35, 82, 35, 95, 35, 35,
|
36, 36, 86, 88, 36, 38, 89, 38, 90, 139,
|
||||||
70, 82, 38, 70, 34, 86, 109, 94, 28, 109,
|
88, 86, 38, 38, 86, 140, 99, 138, 38, 88,
|
||||||
82, 24, 95, 82, 109, 35, 35, 36, 36, 36,
|
38, 128, 105, 38, 88, 38, 38, 91, 91, 140,
|
||||||
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
|
91, 91, 99, 92, 92, 91, 92, 92, 105, 126,
|
||||||
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
|
113, 92, 112, 38, 38, 39, 39, 39, 39, 39,
|
||||||
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
|
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||||
36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
|
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||||
|
|
||||||
36, 36, 36, 45, 84, 100, 45, 105, 87, 87,
|
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||||
84, 87, 87, 134, 88, 88, 87, 88, 88, 84,
|
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
||||||
100, 105, 88, 102, 84, 45, 45, 134, 45, 89,
|
39, 39, 39, 39, 48, 93, 93, 48, 93, 93,
|
||||||
89, 104, 89, 89, 120, 23, 45, 89, 102, 91,
|
107, 94, 94, 93, 94, 94, 101, 103, 95, 94,
|
||||||
45, 45, 91, 45, 106, 120, 104, 45, 65, 90,
|
103, 95, 109, 153, 106, 111, 107, 108, 48, 48,
|
||||||
90, 65, 90, 90, 140, 98, 21, 90, 98, 106,
|
106, 103, 48, 82, 108, 79, 77, 153, 109, 106,
|
||||||
65, 111, 101, 103, 91, 140, 15, 98, 101, 103,
|
48, 111, 106, 108, 48, 48, 95, 48, 108, 116,
|
||||||
65, 65, 112, 65, 65, 113, 111, 101, 103, 91,
|
114, 48, 69, 114, 117, 69, 118, 120, 114, 119,
|
||||||
101, 65, 114, 103, 115, 65, 65, 112, 65, 65,
|
122, 95, 121, 123, 116, 63, 69, 124, 46, 127,
|
||||||
113, 11, 65, 74, 5, 74, 0, 114, 116, 115,
|
117, 129, 118, 120, 119, 122, 69, 69, 121, 123,
|
||||||
|
|
||||||
74, 74, 117, 118, 74, 119, 74, 74, 122, 74,
|
69, 69, 130, 124, 127, 131, 129, 133, 69, 132,
|
||||||
123, 74, 74, 116, 0, 124, 125, 117, 118, 126,
|
134, 41, 69, 69, 135, 69, 69, 37, 130, 69,
|
||||||
119, 127, 128, 122, 129, 123, 130, 131, 74, 74,
|
78, 131, 78, 133, 132, 30, 134, 78, 78, 135,
|
||||||
124, 125, 137, 138, 126, 139, 127, 128, 141, 129,
|
136, 137, 143, 78, 144, 78, 145, 147, 78, 148,
|
||||||
142, 130, 131, 143, 144, 145, 149, 137, 138, 146,
|
78, 78, 26, 25, 149, 150, 136, 137, 143, 151,
|
||||||
139, 150, 151, 141, 152, 142, 0, 154, 143, 144,
|
144, 152, 145, 147, 148, 156, 157, 158, 78, 78,
|
||||||
145, 149, 157, 146, 160, 152, 150, 151, 153, 161,
|
149, 150, 161, 160, 164, 151, 160, 152, 167, 168,
|
||||||
163, 153, 154, 164, 167, 170, 171, 157, 178, 160,
|
170, 156, 157, 158, 171, 174, 175, 160, 161, 178,
|
||||||
153, 163, 172, 179, 161, 172, 181, 184, 164, 167,
|
164, 170, 179, 186, 167, 168, 174, 187, 180, 189,
|
||||||
170, 171, 189, 178, 172, 190, 191, 194, 179, 191,
|
171, 180, 175, 190, 193, 178, 198, 199, 179, 186,
|
||||||
|
|
||||||
194, 181, 184, 0, 0, 0, 0, 189, 0, 0,
|
200, 201, 180, 187, 201, 189, 205, 23, 190, 205,
|
||||||
190, 191, 194, 199, 199, 199, 199, 199, 199, 199,
|
193, 15, 198, 199, 11, 5, 200, 0, 201, 0,
|
||||||
200, 0, 0, 0, 200, 200, 201, 201, 201, 201,
|
0, 0, 0, 205, 210, 210, 210, 210, 210, 210,
|
||||||
201, 201, 201, 202, 0, 202, 203, 203, 203, 203,
|
210, 211, 0, 0, 0, 211, 211, 212, 212, 212,
|
||||||
203, 203, 203, 204, 204, 204, 204, 204, 204, 204,
|
212, 212, 212, 212, 213, 0, 213, 214, 214, 214,
|
||||||
205, 205, 205, 0, 205, 205, 205, 206, 0, 206,
|
214, 214, 214, 214, 215, 215, 215, 215, 215, 215,
|
||||||
0, 206, 206, 206, 207, 207, 207, 207, 207, 0,
|
215, 216, 216, 216, 0, 216, 216, 216, 217, 0,
|
||||||
207, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
217, 0, 217, 217, 217, 218, 218, 218, 218, 218,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
0, 218, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
|
||||||
198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
198, 198, 198, 198, 198, 198, 198, 198
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
209, 209, 209, 209, 209, 209, 209, 209, 209, 209,
|
||||||
|
209, 209
|
||||||
} ;
|
} ;
|
||||||
|
|
||||||
/* The intent behind this definition is that it'll catch
|
/* The intent behind this definition is that it'll catch
|
||||||
|
@ -685,7 +692,7 @@ Modify cmFortranLexer.cxx:
|
||||||
/*--------------------------------------------------------------------------*/
|
/*--------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
|
||||||
#line 689 "cmFortranLexer.cxx"
|
#line 696 "cmFortranLexer.cxx"
|
||||||
|
|
||||||
#define INITIAL 0
|
#define INITIAL 0
|
||||||
#define free_fmt 1
|
#define free_fmt 1
|
||||||
|
@ -956,7 +963,7 @@ YY_DECL
|
||||||
#line 65 "cmFortranLexer.in.l"
|
#line 65 "cmFortranLexer.in.l"
|
||||||
|
|
||||||
|
|
||||||
#line 960 "cmFortranLexer.cxx"
|
#line 967 "cmFortranLexer.cxx"
|
||||||
|
|
||||||
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
|
while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
|
||||||
{
|
{
|
||||||
|
@ -984,13 +991,13 @@ yy_match:
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 199 )
|
if ( yy_current_state >= 210 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
||||||
++yy_cp;
|
++yy_cp;
|
||||||
}
|
}
|
||||||
while ( yy_base[yy_current_state] != 572 );
|
while ( yy_base[yy_current_state] != 583 );
|
||||||
|
|
||||||
yy_find_action:
|
yy_find_action:
|
||||||
yy_act = yy_accept[yy_current_state];
|
yy_act = yy_accept[yy_current_state];
|
||||||
|
@ -1201,71 +1208,87 @@ YY_RULE_SETUP
|
||||||
#line 148 "cmFortranLexer.in.l"
|
#line 148 "cmFortranLexer.in.l"
|
||||||
{ return DCOLON; }
|
{ return DCOLON; }
|
||||||
case 37:
|
case 37:
|
||||||
/* rule 37 can match eol */
|
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 150 "cmFortranLexer.in.l"
|
#line 149 "cmFortranLexer.in.l"
|
||||||
{ return GARBAGE; }
|
{ return COLON; }
|
||||||
case 38:
|
case 38:
|
||||||
|
/* rule 38 can match eol */
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 152 "cmFortranLexer.in.l"
|
#line 151 "cmFortranLexer.in.l"
|
||||||
{ return ASSIGNMENT_OP; }
|
{ return GARBAGE; }
|
||||||
case 39:
|
case 39:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 154 "cmFortranLexer.in.l"
|
#line 153 "cmFortranLexer.in.l"
|
||||||
{ return END; }
|
{ return ASSIGNMENT_OP; }
|
||||||
case 40:
|
case 40:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 155 "cmFortranLexer.in.l"
|
#line 155 "cmFortranLexer.in.l"
|
||||||
{ return INCLUDE; }
|
{ return END; }
|
||||||
case 41:
|
case 41:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 156 "cmFortranLexer.in.l"
|
#line 156 "cmFortranLexer.in.l"
|
||||||
{ return INTERFACE; }
|
{ return INCLUDE; }
|
||||||
case 42:
|
case 42:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 157 "cmFortranLexer.in.l"
|
#line 157 "cmFortranLexer.in.l"
|
||||||
{ return MODULE; }
|
{ return INTERFACE; }
|
||||||
case 43:
|
case 43:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 158 "cmFortranLexer.in.l"
|
#line 158 "cmFortranLexer.in.l"
|
||||||
{ return USE; }
|
{ return MODULE; }
|
||||||
case 44:
|
case 44:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
|
#line 159 "cmFortranLexer.in.l"
|
||||||
|
{ return SUBMODULE; }
|
||||||
|
case 45:
|
||||||
|
YY_RULE_SETUP
|
||||||
#line 160 "cmFortranLexer.in.l"
|
#line 160 "cmFortranLexer.in.l"
|
||||||
|
{ return USE; }
|
||||||
|
case 46:
|
||||||
|
YY_RULE_SETUP
|
||||||
|
#line 162 "cmFortranLexer.in.l"
|
||||||
{
|
{
|
||||||
yylvalp->string = strdup(yytext);
|
yylvalp->string = strdup(yytext);
|
||||||
return WORD;
|
return WORD;
|
||||||
}
|
}
|
||||||
case 45:
|
|
||||||
YY_RULE_SETUP
|
|
||||||
#line 165 "cmFortranLexer.in.l"
|
|
||||||
{ return GARBAGE; }
|
|
||||||
case 46:
|
|
||||||
/* rule 46 can match eol */
|
|
||||||
YY_RULE_SETUP
|
|
||||||
#line 167 "cmFortranLexer.in.l"
|
|
||||||
{ return EOSTMT; }
|
|
||||||
case 47:
|
case 47:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 170 "cmFortranLexer.in.l"
|
#line 167 "cmFortranLexer.in.l"
|
||||||
/* Ignore */
|
{ return LPAREN; }
|
||||||
YY_BREAK
|
|
||||||
case 48:
|
case 48:
|
||||||
/* rule 48 can match eol */
|
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 171 "cmFortranLexer.in.l"
|
#line 168 "cmFortranLexer.in.l"
|
||||||
/* Ignore line-endings preceded by \ */
|
{ return RPAREN; }
|
||||||
YY_BREAK
|
|
||||||
case 49:
|
case 49:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 173 "cmFortranLexer.in.l"
|
#line 170 "cmFortranLexer.in.l"
|
||||||
|
{ return GARBAGE; }
|
||||||
|
case 50:
|
||||||
|
/* rule 50 can match eol */
|
||||||
|
YY_RULE_SETUP
|
||||||
|
#line 172 "cmFortranLexer.in.l"
|
||||||
|
{ return EOSTMT; }
|
||||||
|
case 51:
|
||||||
|
YY_RULE_SETUP
|
||||||
|
#line 175 "cmFortranLexer.in.l"
|
||||||
|
/* Ignore */
|
||||||
|
YY_BREAK
|
||||||
|
case 52:
|
||||||
|
/* rule 52 can match eol */
|
||||||
|
YY_RULE_SETUP
|
||||||
|
#line 176 "cmFortranLexer.in.l"
|
||||||
|
/* Ignore line-endings preceded by \ */
|
||||||
|
YY_BREAK
|
||||||
|
case 53:
|
||||||
|
YY_RULE_SETUP
|
||||||
|
#line 178 "cmFortranLexer.in.l"
|
||||||
{ return *yytext; }
|
{ return *yytext; }
|
||||||
case YY_STATE_EOF(INITIAL):
|
case YY_STATE_EOF(INITIAL):
|
||||||
case YY_STATE_EOF(free_fmt):
|
case YY_STATE_EOF(free_fmt):
|
||||||
case YY_STATE_EOF(fixed_fmt):
|
case YY_STATE_EOF(fixed_fmt):
|
||||||
case YY_STATE_EOF(str_sq):
|
case YY_STATE_EOF(str_sq):
|
||||||
case YY_STATE_EOF(str_dq):
|
case YY_STATE_EOF(str_dq):
|
||||||
#line 175 "cmFortranLexer.in.l"
|
#line 180 "cmFortranLexer.in.l"
|
||||||
{
|
{
|
||||||
if(!cmFortranParser_FilePop(yyextra) )
|
if(!cmFortranParser_FilePop(yyextra) )
|
||||||
{
|
{
|
||||||
|
@ -1273,12 +1296,12 @@ case YY_STATE_EOF(str_dq):
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
case 50:
|
case 54:
|
||||||
YY_RULE_SETUP
|
YY_RULE_SETUP
|
||||||
#line 182 "cmFortranLexer.in.l"
|
#line 187 "cmFortranLexer.in.l"
|
||||||
ECHO;
|
ECHO;
|
||||||
YY_BREAK
|
YY_BREAK
|
||||||
#line 1320 "cmFortranLexer.cxx"
|
#line 1347 "cmFortranLexer.cxx"
|
||||||
|
|
||||||
case YY_END_OF_BUFFER:
|
case YY_END_OF_BUFFER:
|
||||||
{
|
{
|
||||||
|
@ -1572,7 +1595,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 199 )
|
if ( yy_current_state >= 210 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
||||||
|
@ -1601,11 +1624,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
|
||||||
while ( yy_chk[yy_base[yy_current_state] + yy_c] != 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];
|
yy_current_state = (int) yy_def[yy_current_state];
|
||||||
if ( yy_current_state >= 199 )
|
if ( yy_current_state >= 210 )
|
||||||
yy_c = yy_meta[(unsigned int) yy_c];
|
yy_c = yy_meta[(unsigned int) yy_c];
|
||||||
}
|
}
|
||||||
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c];
|
||||||
yy_is_jam = (yy_current_state == 198);
|
yy_is_jam = (yy_current_state == 209);
|
||||||
|
|
||||||
(void)yyg;
|
(void)yyg;
|
||||||
return yy_is_jam ? 0 : yy_current_state;
|
return yy_is_jam ? 0 : yy_current_state;
|
||||||
|
@ -2447,7 +2470,7 @@ void cmFortran_yyfree (void * ptr , yyscan_t yyscanner)
|
||||||
|
|
||||||
#define YYTABLES_NAME "yytables"
|
#define YYTABLES_NAME "yytables"
|
||||||
|
|
||||||
#line 182 "cmFortranLexer.in.l"
|
#line 187 "cmFortranLexer.in.l"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -337,7 +337,7 @@ extern int cmFortran_yylex (yyscan_t yyscanner);
|
||||||
#undef YY_DECL
|
#undef YY_DECL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#line 182 "cmFortranLexer.in.l"
|
#line 187 "cmFortranLexer.in.l"
|
||||||
|
|
||||||
|
|
||||||
#line 344 "cmFortranLexer.h"
|
#line 344 "cmFortranLexer.h"
|
||||||
|
|
|
@ -146,6 +146,7 @@ $[ \t]*endif { return F90PPR_ENDIF; }
|
||||||
, { return COMMA; }
|
, { return COMMA; }
|
||||||
|
|
||||||
:: { return DCOLON; }
|
:: { return DCOLON; }
|
||||||
|
: { return COLON; }
|
||||||
|
|
||||||
<fixed_fmt>\n[ ]{5}[^ ] { return GARBAGE; }
|
<fixed_fmt>\n[ ]{5}[^ ] { return GARBAGE; }
|
||||||
|
|
||||||
|
@ -155,6 +156,7 @@ $[ \t]*endif { return F90PPR_ENDIF; }
|
||||||
[Ii][Nn][Cc][Ll][Uu][Dd][Ee] { return INCLUDE; }
|
[Ii][Nn][Cc][Ll][Uu][Dd][Ee] { return INCLUDE; }
|
||||||
[Ii][Nn][Tt][Ee][Rr][Ff][Aa][Cc][Ee] { return INTERFACE; }
|
[Ii][Nn][Tt][Ee][Rr][Ff][Aa][Cc][Ee] { return INTERFACE; }
|
||||||
[Mm][Oo][Dd][Uu][Ll][Ee] { return MODULE; }
|
[Mm][Oo][Dd][Uu][Ll][Ee] { return MODULE; }
|
||||||
|
[Ss][Uu][bb][Mm][Oo][Dd][Uu][Ll][Ee] { return SUBMODULE; }
|
||||||
[Uu][Ss][Ee] { return USE; }
|
[Uu][Ss][Ee] { return USE; }
|
||||||
|
|
||||||
[a-zA-Z_][a-zA-Z_0-9]* {
|
[a-zA-Z_][a-zA-Z_0-9]* {
|
||||||
|
@ -162,7 +164,10 @@ $[ \t]*endif { return F90PPR_ENDIF; }
|
||||||
return WORD;
|
return WORD;
|
||||||
}
|
}
|
||||||
|
|
||||||
[^ \t\n\r;,!'"a-zA-Z=&]+ { return GARBAGE; }
|
\( { return LPAREN; }
|
||||||
|
\) { return RPAREN; }
|
||||||
|
|
||||||
|
[^ \t\n\r:;,!'"a-zA-Z=&()]+ { return GARBAGE; }
|
||||||
|
|
||||||
;|\n { return EOSTMT; }
|
;|\n { return EOSTMT; }
|
||||||
|
|
||||||
|
|
|
@ -192,16 +192,20 @@ extern int cmFortran_yydebug;
|
||||||
F90PPR_ELIF = 279,
|
F90PPR_ELIF = 279,
|
||||||
F90PPR_ENDIF = 280,
|
F90PPR_ENDIF = 280,
|
||||||
COMMA = 281,
|
COMMA = 281,
|
||||||
DCOLON = 282,
|
COLON = 282,
|
||||||
UNTERMINATED_STRING = 283,
|
DCOLON = 283,
|
||||||
STRING = 284,
|
LPAREN = 284,
|
||||||
WORD = 285,
|
RPAREN = 285,
|
||||||
CPP_INCLUDE_ANGLE = 286,
|
UNTERMINATED_STRING = 286,
|
||||||
END = 287,
|
STRING = 287,
|
||||||
INCLUDE = 288,
|
WORD = 288,
|
||||||
INTERFACE = 289,
|
CPP_INCLUDE_ANGLE = 289,
|
||||||
MODULE = 290,
|
END = 290,
|
||||||
USE = 291
|
INCLUDE = 291,
|
||||||
|
INTERFACE = 292,
|
||||||
|
MODULE = 293,
|
||||||
|
SUBMODULE = 294,
|
||||||
|
USE = 295
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
/* Tokens. */
|
/* Tokens. */
|
||||||
|
@ -229,16 +233,20 @@ extern int cmFortran_yydebug;
|
||||||
#define F90PPR_ELIF 279
|
#define F90PPR_ELIF 279
|
||||||
#define F90PPR_ENDIF 280
|
#define F90PPR_ENDIF 280
|
||||||
#define COMMA 281
|
#define COMMA 281
|
||||||
#define DCOLON 282
|
#define COLON 282
|
||||||
#define UNTERMINATED_STRING 283
|
#define DCOLON 283
|
||||||
#define STRING 284
|
#define LPAREN 284
|
||||||
#define WORD 285
|
#define RPAREN 285
|
||||||
#define CPP_INCLUDE_ANGLE 286
|
#define UNTERMINATED_STRING 286
|
||||||
#define END 287
|
#define STRING 287
|
||||||
#define INCLUDE 288
|
#define WORD 288
|
||||||
#define INTERFACE 289
|
#define CPP_INCLUDE_ANGLE 289
|
||||||
#define MODULE 290
|
#define END 290
|
||||||
#define USE 291
|
#define INCLUDE 291
|
||||||
|
#define INTERFACE 292
|
||||||
|
#define MODULE 293
|
||||||
|
#define SUBMODULE 294
|
||||||
|
#define USE 295
|
||||||
|
|
||||||
/* Value type. */
|
/* Value type. */
|
||||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||||
|
@ -249,7 +257,7 @@ union YYSTYPE
|
||||||
|
|
||||||
char* string;
|
char* string;
|
||||||
|
|
||||||
#line 253 "cmFortranParser.cxx" /* yacc.c:355 */
|
#line 261 "cmFortranParser.cxx" /* yacc.c:355 */
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef union YYSTYPE YYSTYPE;
|
typedef union YYSTYPE YYSTYPE;
|
||||||
|
@ -265,7 +273,7 @@ int cmFortran_yyparse (yyscan_t yyscanner);
|
||||||
|
|
||||||
/* Copy the second part of user declarations. */
|
/* Copy the second part of user declarations. */
|
||||||
|
|
||||||
#line 269 "cmFortranParser.cxx" /* yacc.c:358 */
|
#line 277 "cmFortranParser.cxx" /* yacc.c:358 */
|
||||||
|
|
||||||
#ifdef short
|
#ifdef short
|
||||||
# undef short
|
# undef short
|
||||||
|
@ -507,21 +515,21 @@ union yyalloc
|
||||||
/* YYFINAL -- State number of the termination state. */
|
/* YYFINAL -- State number of the termination state. */
|
||||||
#define YYFINAL 2
|
#define YYFINAL 2
|
||||||
/* YYLAST -- Last index in YYTABLE. */
|
/* YYLAST -- Last index in YYTABLE. */
|
||||||
#define YYLAST 469
|
#define YYLAST 593
|
||||||
|
|
||||||
/* YYNTOKENS -- Number of terminals. */
|
/* YYNTOKENS -- Number of terminals. */
|
||||||
#define YYNTOKENS 37
|
#define YYNTOKENS 41
|
||||||
/* YYNNTS -- Number of nonterminals. */
|
/* YYNNTS -- Number of nonterminals. */
|
||||||
#define YYNNTS 14
|
#define YYNNTS 14
|
||||||
/* YYNRULES -- Number of rules. */
|
/* YYNRULES -- Number of rules. */
|
||||||
#define YYNRULES 57
|
#define YYNRULES 63
|
||||||
/* YYNSTATES -- Number of states. */
|
/* YYNSTATES -- Number of states. */
|
||||||
#define YYNSTATES 109
|
#define YYNSTATES 126
|
||||||
|
|
||||||
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
|
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
|
||||||
by yylex, with out-of-bounds checking. */
|
by yylex, with out-of-bounds checking. */
|
||||||
#define YYUNDEFTOK 2
|
#define YYUNDEFTOK 2
|
||||||
#define YYMAXUTOK 291
|
#define YYMAXUTOK 295
|
||||||
|
|
||||||
#define YYTRANSLATE(YYX) \
|
#define YYTRANSLATE(YYX) \
|
||||||
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
||||||
|
@ -559,19 +567,20 @@ static const yytype_uint8 yytranslate[] =
|
||||||
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
|
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
|
||||||
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
|
||||||
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
|
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
|
||||||
35, 36
|
35, 36, 37, 38, 39, 40
|
||||||
};
|
};
|
||||||
|
|
||||||
#if YYDEBUG
|
#if YYDEBUG
|
||||||
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
|
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
|
||||||
static const yytype_uint8 yyrline[] =
|
static const yytype_uint8 yyrline[] =
|
||||||
{
|
{
|
||||||
0, 102, 102, 102, 105, 109, 114, 123, 128, 132,
|
0, 103, 103, 103, 106, 110, 115, 124, 130, 137,
|
||||||
137, 145, 150, 155, 160, 165, 170, 175, 180, 185,
|
142, 146, 151, 159, 164, 169, 174, 179, 184, 189,
|
||||||
189, 193, 197, 201, 202, 207, 207, 207, 208, 208,
|
194, 199, 203, 207, 211, 215, 216, 221, 221, 221,
|
||||||
209, 209, 210, 210, 211, 211, 212, 212, 213, 213,
|
222, 222, 223, 223, 224, 224, 225, 225, 226, 226,
|
||||||
214, 214, 215, 215, 216, 216, 219, 220, 221, 222,
|
227, 227, 228, 228, 229, 229, 230, 230, 233, 234,
|
||||||
223, 224, 225, 226, 227, 228, 229, 230
|
235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
|
||||||
|
245, 246, 247, 248
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -585,10 +594,11 @@ static const char *const yytname[] =
|
||||||
"F90PPR_DEFINE", "CPP_DEFINE", "F90PPR_UNDEF", "CPP_UNDEF", "CPP_IFDEF",
|
"F90PPR_DEFINE", "CPP_DEFINE", "F90PPR_UNDEF", "CPP_UNDEF", "CPP_IFDEF",
|
||||||
"CPP_IFNDEF", "CPP_IF", "CPP_ELSE", "CPP_ELIF", "CPP_ENDIF",
|
"CPP_IFNDEF", "CPP_IF", "CPP_ELSE", "CPP_ELIF", "CPP_ENDIF",
|
||||||
"F90PPR_IFDEF", "F90PPR_IFNDEF", "F90PPR_IF", "F90PPR_ELSE",
|
"F90PPR_IFDEF", "F90PPR_IFNDEF", "F90PPR_IF", "F90PPR_ELSE",
|
||||||
"F90PPR_ELIF", "F90PPR_ENDIF", "COMMA", "DCOLON", "UNTERMINATED_STRING",
|
"F90PPR_ELIF", "F90PPR_ENDIF", "COMMA", "COLON", "DCOLON", "LPAREN",
|
||||||
"STRING", "WORD", "CPP_INCLUDE_ANGLE", "END", "INCLUDE", "INTERFACE",
|
"RPAREN", "UNTERMINATED_STRING", "STRING", "WORD", "CPP_INCLUDE_ANGLE",
|
||||||
"MODULE", "USE", "$accept", "code", "stmt", "include", "define", "undef",
|
"END", "INCLUDE", "INTERFACE", "MODULE", "SUBMODULE", "USE", "$accept",
|
||||||
"ifdef", "ifndef", "if", "elif", "else", "endif", "other", "misc_code", YY_NULLPTR
|
"code", "stmt", "include", "define", "undef", "ifdef", "ifndef", "if",
|
||||||
|
"elif", "else", "endif", "other", "misc_code", YY_NULLPTR
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -600,14 +610,15 @@ static const yytype_uint16 yytoknum[] =
|
||||||
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
|
||||||
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
|
||||||
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
|
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
|
||||||
285, 286, 287, 288, 289, 290, 291
|
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
|
||||||
|
295
|
||||||
};
|
};
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
#define YYPACT_NINF -38
|
#define YYPACT_NINF -39
|
||||||
|
|
||||||
#define yypact_value_is_default(Yystate) \
|
#define yypact_value_is_default(Yystate) \
|
||||||
(!!((Yystate) == (-38)))
|
(!!((Yystate) == (-39)))
|
||||||
|
|
||||||
#define YYTABLE_NINF -1
|
#define YYTABLE_NINF -1
|
||||||
|
|
||||||
|
@ -618,17 +629,19 @@ static const yytype_uint16 yytoknum[] =
|
||||||
STATE-NUM. */
|
STATE-NUM. */
|
||||||
static const yytype_int16 yypact[] =
|
static const yytype_int16 yypact[] =
|
||||||
{
|
{
|
||||||
-38, 39, -38, 3, -38, -20, -38, -38, -38, -38,
|
-39, 21, -39, 1, -39, -20, -39, -39, -39, -39,
|
||||||
-38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
|
-39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
|
||||||
-38, -38, -38, -38, -38, -38, -22, -16, 1, -8,
|
-39, -39, -39, -39, -39, -39, -24, -18, 20, -8,
|
||||||
-6, -38, -4, -7, -3, -2, -1, -38, -38, -38,
|
-3, 39, -39, 15, 16, 18, 19, 33, -39, -39,
|
||||||
-38, -38, -38, 62, -38, -38, -38, -38, -38, 0,
|
-39, -39, -39, -39, 59, -39, -39, -39, -39, -39,
|
||||||
2, -38, -38, -38, -38, -38, -38, 73, 107, 118,
|
35, 36, 37, -39, -39, -39, -39, -39, -39, 76,
|
||||||
152, 163, -38, -38, -38, -38, -38, -38, -38, -38,
|
114, 129, 167, 182, -39, -39, -39, -39, -39, -39,
|
||||||
-38, -38, -38, -38, -38, -38, 197, 208, 242, 253,
|
-39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
|
||||||
6, -38, 287, 298, 332, 343, 377, 388, -38, -38,
|
-39, -39, 220, 235, 273, 288, -21, 26, -39, 326,
|
||||||
-38, -38, -38, -38, -38, -38, -38, 4, 422, -38,
|
341, 379, 394, 432, 447, -39, -39, -39, -39, -39,
|
||||||
-38, -38, -38, -38, -38, -38, -38, 433, -38
|
-39, -39, -39, -39, 38, 40, 41, 485, -39, -39,
|
||||||
|
-39, -39, -39, -39, 45, -39, -39, -39, 43, 500,
|
||||||
|
538, -39, -39, -39, 553, -39
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
|
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
|
||||||
|
@ -636,31 +649,33 @@ static const yytype_int16 yypact[] =
|
||||||
means the default is an error. */
|
means the default is an error. */
|
||||||
static const yytype_uint8 yydefact[] =
|
static const yytype_uint8 yydefact[] =
|
||||||
{
|
{
|
||||||
2, 0, 1, 0, 23, 0, 25, 26, 27, 29,
|
2, 0, 1, 0, 25, 0, 27, 28, 29, 31,
|
||||||
28, 31, 30, 32, 34, 36, 40, 38, 42, 33,
|
30, 33, 32, 34, 36, 38, 42, 40, 44, 35,
|
||||||
35, 37, 41, 39, 43, 44, 0, 0, 0, 0,
|
37, 39, 43, 41, 45, 46, 0, 0, 0, 0,
|
||||||
0, 3, 0, 0, 0, 0, 0, 44, 44, 44,
|
0, 0, 3, 0, 0, 0, 0, 0, 46, 46,
|
||||||
44, 24, 44, 0, 44, 44, 4, 44, 44, 0,
|
46, 46, 26, 46, 0, 46, 46, 4, 46, 46,
|
||||||
0, 44, 44, 44, 44, 44, 44, 0, 0, 0,
|
0, 0, 0, 46, 46, 46, 46, 46, 46, 0,
|
||||||
0, 0, 13, 54, 53, 56, 55, 57, 52, 46,
|
0, 0, 0, 0, 15, 57, 56, 62, 58, 59,
|
||||||
47, 48, 49, 50, 51, 45, 0, 0, 0, 0,
|
60, 61, 63, 55, 48, 49, 50, 51, 52, 53,
|
||||||
0, 44, 0, 0, 0, 0, 0, 0, 19, 20,
|
54, 47, 0, 0, 0, 0, 0, 0, 46, 0,
|
||||||
21, 22, 12, 8, 11, 7, 6, 0, 0, 5,
|
0, 0, 0, 0, 0, 21, 22, 23, 24, 14,
|
||||||
14, 15, 16, 17, 18, 44, 9, 0, 10
|
10, 13, 9, 6, 0, 0, 0, 0, 5, 16,
|
||||||
|
17, 18, 19, 20, 0, 46, 46, 11, 0, 0,
|
||||||
|
0, 46, 7, 12, 0, 8
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYPGOTO[NTERM-NUM]. */
|
/* YYPGOTO[NTERM-NUM]. */
|
||||||
static const yytype_int8 yypgoto[] =
|
static const yytype_int8 yypgoto[] =
|
||||||
{
|
{
|
||||||
-38, -38, -38, -38, -38, -38, -38, -38, -38, -38,
|
-39, -39, -39, -39, -39, -39, -39, -39, -39, -39,
|
||||||
-38, -38, -37, -38
|
-39, -39, -38, -39
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYDEFGOTO[NTERM-NUM]. */
|
/* YYDEFGOTO[NTERM-NUM]. */
|
||||||
static const yytype_int8 yydefgoto[] =
|
static const yytype_int8 yydefgoto[] =
|
||||||
{
|
{
|
||||||
-1, 1, 31, 32, 33, 34, 35, 36, 37, 38,
|
-1, 1, 32, 33, 34, 35, 36, 37, 38, 39,
|
||||||
39, 40, 43, 75
|
40, 41, 44, 81
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
||||||
|
@ -668,143 +683,173 @@ static const yytype_int8 yydefgoto[] =
|
||||||
number is the opposite. If YYTABLE_NINF, syntax error. */
|
number is the opposite. If YYTABLE_NINF, syntax error. */
|
||||||
static const yytype_uint8 yytable[] =
|
static const yytype_uint8 yytable[] =
|
||||||
{
|
{
|
||||||
57, 58, 59, 60, 46, 61, 41, 76, 77, 42,
|
59, 60, 61, 62, 42, 63, 104, 82, 83, 105,
|
||||||
78, 79, 44, 45, 82, 83, 84, 85, 86, 87,
|
84, 85, 43, 45, 46, 89, 90, 91, 92, 93,
|
||||||
49, 50, 48, 53, 51, 52, 0, 54, 55, 56,
|
94, 2, 3, 47, 4, 49, 50, 5, 6, 7,
|
||||||
80, 47, 81, 97, 105, 0, 0, 0, 0, 2,
|
8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
|
||||||
3, 0, 4, 0, 98, 5, 6, 7, 8, 9,
|
18, 19, 20, 21, 22, 23, 24, 54, 0, 55,
|
||||||
10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
|
107, 56, 57, 48, 106, 25, 26, 27, 28, 29,
|
||||||
20, 21, 22, 23, 24, 62, 63, 64, 107, 0,
|
30, 31, 64, 65, 66, 51, 58, 52, 86, 87,
|
||||||
25, 26, 27, 28, 29, 30, 88, 63, 64, 0,
|
88, 114, 53, 115, 116, 118, 121, 119, 120, 95,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 65, 66,
|
65, 66, 0, 124, 0, 67, 68, 69, 70, 71,
|
||||||
67, 68, 69, 0, 70, 71, 72, 73, 74, 65,
|
72, 73, 74, 0, 75, 76, 77, 78, 79, 80,
|
||||||
66, 67, 68, 69, 0, 70, 71, 72, 73, 74,
|
0, 0, 67, 68, 69, 70, 71, 72, 73, 74,
|
||||||
89, 63, 64, 0, 0, 0, 0, 0, 0, 0,
|
0, 75, 76, 77, 78, 79, 80, 96, 65, 66,
|
||||||
0, 90, 63, 64, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 0, 65, 66, 67, 68, 69, 0, 70,
|
0, 0, 97, 65, 66, 0, 0, 0, 0, 0,
|
||||||
71, 72, 73, 74, 65, 66, 67, 68, 69, 0,
|
67, 68, 69, 70, 71, 72, 73, 74, 0, 75,
|
||||||
70, 71, 72, 73, 74, 91, 63, 64, 0, 0,
|
76, 77, 78, 79, 80, 67, 68, 69, 70, 71,
|
||||||
0, 0, 0, 0, 0, 0, 92, 63, 64, 0,
|
72, 73, 74, 0, 75, 76, 77, 78, 79, 80,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 65, 66,
|
98, 65, 66, 0, 0, 0, 0, 0, 0, 0,
|
||||||
67, 68, 69, 0, 70, 71, 72, 73, 74, 65,
|
0, 0, 0, 0, 0, 99, 65, 66, 0, 0,
|
||||||
66, 67, 68, 69, 0, 70, 71, 72, 73, 74,
|
0, 0, 0, 67, 68, 69, 70, 71, 72, 73,
|
||||||
93, 63, 64, 0, 0, 0, 0, 0, 0, 0,
|
74, 0, 75, 76, 77, 78, 79, 80, 67, 68,
|
||||||
0, 94, 63, 64, 0, 0, 0, 0, 0, 0,
|
69, 70, 71, 72, 73, 74, 0, 75, 76, 77,
|
||||||
0, 0, 0, 65, 66, 67, 68, 69, 0, 70,
|
78, 79, 80, 100, 65, 66, 0, 0, 0, 0,
|
||||||
71, 72, 73, 74, 65, 66, 67, 68, 69, 0,
|
0, 0, 0, 0, 0, 0, 0, 0, 101, 65,
|
||||||
70, 71, 72, 73, 74, 95, 63, 64, 0, 0,
|
66, 0, 0, 0, 0, 0, 67, 68, 69, 70,
|
||||||
0, 0, 0, 0, 0, 0, 96, 63, 64, 0,
|
71, 72, 73, 74, 0, 75, 76, 77, 78, 79,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 65, 66,
|
80, 67, 68, 69, 70, 71, 72, 73, 74, 0,
|
||||||
67, 68, 69, 0, 70, 71, 72, 73, 74, 65,
|
75, 76, 77, 78, 79, 80, 102, 65, 66, 0,
|
||||||
66, 67, 68, 69, 0, 70, 71, 72, 73, 74,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
99, 63, 64, 0, 0, 0, 0, 0, 0, 0,
|
0, 103, 65, 66, 0, 0, 0, 0, 0, 67,
|
||||||
0, 100, 63, 64, 0, 0, 0, 0, 0, 0,
|
68, 69, 70, 71, 72, 73, 74, 0, 75, 76,
|
||||||
0, 0, 0, 65, 66, 67, 68, 69, 0, 70,
|
77, 78, 79, 80, 67, 68, 69, 70, 71, 72,
|
||||||
71, 72, 73, 74, 65, 66, 67, 68, 69, 0,
|
73, 74, 0, 75, 76, 77, 78, 79, 80, 108,
|
||||||
70, 71, 72, 73, 74, 101, 63, 64, 0, 0,
|
65, 66, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 102, 63, 64, 0,
|
0, 0, 0, 0, 109, 65, 66, 0, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 65, 66,
|
0, 0, 67, 68, 69, 70, 71, 72, 73, 74,
|
||||||
67, 68, 69, 0, 70, 71, 72, 73, 74, 65,
|
0, 75, 76, 77, 78, 79, 80, 67, 68, 69,
|
||||||
66, 67, 68, 69, 0, 70, 71, 72, 73, 74,
|
70, 71, 72, 73, 74, 0, 75, 76, 77, 78,
|
||||||
103, 63, 64, 0, 0, 0, 0, 0, 0, 0,
|
79, 80, 110, 65, 66, 0, 0, 0, 0, 0,
|
||||||
0, 104, 63, 64, 0, 0, 0, 0, 0, 0,
|
0, 0, 0, 0, 0, 0, 0, 111, 65, 66,
|
||||||
0, 0, 0, 65, 66, 67, 68, 69, 0, 70,
|
0, 0, 0, 0, 0, 67, 68, 69, 70, 71,
|
||||||
71, 72, 73, 74, 65, 66, 67, 68, 69, 0,
|
72, 73, 74, 0, 75, 76, 77, 78, 79, 80,
|
||||||
70, 71, 72, 73, 74, 106, 63, 64, 0, 0,
|
67, 68, 69, 70, 71, 72, 73, 74, 0, 75,
|
||||||
0, 0, 0, 0, 0, 0, 108, 63, 64, 0,
|
76, 77, 78, 79, 80, 112, 65, 66, 0, 0,
|
||||||
0, 0, 0, 0, 0, 0, 0, 0, 65, 66,
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
67, 68, 69, 0, 70, 71, 72, 73, 74, 65,
|
113, 65, 66, 0, 0, 0, 0, 0, 67, 68,
|
||||||
66, 67, 68, 69, 0, 70, 71, 72, 73, 74
|
69, 70, 71, 72, 73, 74, 0, 75, 76, 77,
|
||||||
|
78, 79, 80, 67, 68, 69, 70, 71, 72, 73,
|
||||||
|
74, 0, 75, 76, 77, 78, 79, 80, 117, 65,
|
||||||
|
66, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 122, 65, 66, 0, 0, 0, 0,
|
||||||
|
0, 67, 68, 69, 70, 71, 72, 73, 74, 0,
|
||||||
|
75, 76, 77, 78, 79, 80, 67, 68, 69, 70,
|
||||||
|
71, 72, 73, 74, 0, 75, 76, 77, 78, 79,
|
||||||
|
80, 123, 65, 66, 0, 0, 0, 0, 0, 0,
|
||||||
|
0, 0, 0, 0, 0, 0, 125, 65, 66, 0,
|
||||||
|
0, 0, 0, 0, 67, 68, 69, 70, 71, 72,
|
||||||
|
73, 74, 0, 75, 76, 77, 78, 79, 80, 67,
|
||||||
|
68, 69, 70, 71, 72, 73, 74, 0, 75, 76,
|
||||||
|
77, 78, 79, 80
|
||||||
};
|
};
|
||||||
|
|
||||||
static const yytype_int8 yycheck[] =
|
static const yytype_int8 yycheck[] =
|
||||||
{
|
{
|
||||||
37, 38, 39, 40, 3, 42, 3, 44, 45, 29,
|
38, 39, 40, 41, 3, 43, 27, 45, 46, 30,
|
||||||
47, 48, 34, 29, 51, 52, 53, 54, 55, 56,
|
48, 49, 32, 37, 32, 53, 54, 55, 56, 57,
|
||||||
26, 27, 30, 30, 30, 29, -1, 30, 30, 30,
|
58, 0, 1, 3, 3, 33, 29, 6, 7, 8,
|
||||||
30, 30, 30, 27, 30, -1, -1, -1, -1, 0,
|
9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
|
||||||
1, -1, 3, -1, 81, 6, 7, 8, 9, 10,
|
19, 20, 21, 22, 23, 24, 25, 32, -1, 33,
|
||||||
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
88, 33, 33, 33, 28, 34, 35, 36, 37, 38,
|
||||||
21, 22, 23, 24, 25, 3, 4, 5, 105, -1,
|
39, 40, 3, 4, 5, 26, 33, 28, 33, 33,
|
||||||
31, 32, 33, 34, 35, 36, 3, 4, 5, -1,
|
33, 33, 33, 33, 33, 30, 33, 115, 116, 3,
|
||||||
-1, -1, -1, -1, -1, -1, -1, -1, 26, 27,
|
4, 5, -1, 121, -1, 26, 27, 28, 29, 30,
|
||||||
28, 29, 30, -1, 32, 33, 34, 35, 36, 26,
|
31, 32, 33, -1, 35, 36, 37, 38, 39, 40,
|
||||||
27, 28, 29, 30, -1, 32, 33, 34, 35, 36,
|
-1, -1, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||||
|
-1, 35, 36, 37, 38, 39, 40, 3, 4, 5,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||||
|
-1, -1, 3, 4, 5, -1, -1, -1, -1, -1,
|
||||||
|
26, 27, 28, 29, 30, 31, 32, 33, -1, 35,
|
||||||
|
36, 37, 38, 39, 40, 26, 27, 28, 29, 30,
|
||||||
|
31, 32, 33, -1, 35, 36, 37, 38, 39, 40,
|
||||||
3, 4, 5, -1, -1, -1, -1, -1, -1, -1,
|
3, 4, 5, -1, -1, -1, -1, -1, -1, -1,
|
||||||
-1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
|
-1, -1, -1, -1, -1, 3, 4, 5, -1, -1,
|
||||||
-1, -1, -1, 26, 27, 28, 29, 30, -1, 32,
|
-1, -1, -1, 26, 27, 28, 29, 30, 31, 32,
|
||||||
33, 34, 35, 36, 26, 27, 28, 29, 30, -1,
|
33, -1, 35, 36, 37, 38, 39, 40, 26, 27,
|
||||||
32, 33, 34, 35, 36, 3, 4, 5, -1, -1,
|
28, 29, 30, 31, 32, 33, -1, 35, 36, 37,
|
||||||
|
38, 39, 40, 3, 4, 5, -1, -1, -1, -1,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, -1, 3, 4,
|
||||||
|
5, -1, -1, -1, -1, -1, 26, 27, 28, 29,
|
||||||
|
30, 31, 32, 33, -1, 35, 36, 37, 38, 39,
|
||||||
|
40, 26, 27, 28, 29, 30, 31, 32, 33, -1,
|
||||||
|
35, 36, 37, 38, 39, 40, 3, 4, 5, -1,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||||
|
-1, 3, 4, 5, -1, -1, -1, -1, -1, 26,
|
||||||
|
27, 28, 29, 30, 31, 32, 33, -1, 35, 36,
|
||||||
|
37, 38, 39, 40, 26, 27, 28, 29, 30, 31,
|
||||||
|
32, 33, -1, 35, 36, 37, 38, 39, 40, 3,
|
||||||
|
4, 5, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||||
|
-1, -1, -1, -1, 3, 4, 5, -1, -1, -1,
|
||||||
|
-1, -1, 26, 27, 28, 29, 30, 31, 32, 33,
|
||||||
|
-1, 35, 36, 37, 38, 39, 40, 26, 27, 28,
|
||||||
|
29, 30, 31, 32, 33, -1, 35, 36, 37, 38,
|
||||||
|
39, 40, 3, 4, 5, -1, -1, -1, -1, -1,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, 3, 4, 5,
|
||||||
|
-1, -1, -1, -1, -1, 26, 27, 28, 29, 30,
|
||||||
|
31, 32, 33, -1, 35, 36, 37, 38, 39, 40,
|
||||||
|
26, 27, 28, 29, 30, 31, 32, 33, -1, 35,
|
||||||
|
36, 37, 38, 39, 40, 3, 4, 5, -1, -1,
|
||||||
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||||
|
3, 4, 5, -1, -1, -1, -1, -1, 26, 27,
|
||||||
|
28, 29, 30, 31, 32, 33, -1, 35, 36, 37,
|
||||||
|
38, 39, 40, 26, 27, 28, 29, 30, 31, 32,
|
||||||
|
33, -1, 35, 36, 37, 38, 39, 40, 3, 4,
|
||||||
|
5, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
||||||
|
-1, -1, -1, 3, 4, 5, -1, -1, -1, -1,
|
||||||
|
-1, 26, 27, 28, 29, 30, 31, 32, 33, -1,
|
||||||
|
35, 36, 37, 38, 39, 40, 26, 27, 28, 29,
|
||||||
|
30, 31, 32, 33, -1, 35, 36, 37, 38, 39,
|
||||||
|
40, 3, 4, 5, -1, -1, -1, -1, -1, -1,
|
||||||
-1, -1, -1, -1, -1, -1, 3, 4, 5, -1,
|
-1, -1, -1, -1, -1, -1, 3, 4, 5, -1,
|
||||||
-1, -1, -1, -1, -1, -1, -1, -1, 26, 27,
|
-1, -1, -1, -1, 26, 27, 28, 29, 30, 31,
|
||||||
28, 29, 30, -1, 32, 33, 34, 35, 36, 26,
|
32, 33, -1, 35, 36, 37, 38, 39, 40, 26,
|
||||||
27, 28, 29, 30, -1, 32, 33, 34, 35, 36,
|
27, 28, 29, 30, 31, 32, 33, -1, 35, 36,
|
||||||
3, 4, 5, -1, -1, -1, -1, -1, -1, -1,
|
37, 38, 39, 40
|
||||||
-1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
|
|
||||||
-1, -1, -1, 26, 27, 28, 29, 30, -1, 32,
|
|
||||||
33, 34, 35, 36, 26, 27, 28, 29, 30, -1,
|
|
||||||
32, 33, 34, 35, 36, 3, 4, 5, -1, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, 3, 4, 5, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, -1, -1, 26, 27,
|
|
||||||
28, 29, 30, -1, 32, 33, 34, 35, 36, 26,
|
|
||||||
27, 28, 29, 30, -1, 32, 33, 34, 35, 36,
|
|
||||||
3, 4, 5, -1, -1, -1, -1, -1, -1, -1,
|
|
||||||
-1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
|
|
||||||
-1, -1, -1, 26, 27, 28, 29, 30, -1, 32,
|
|
||||||
33, 34, 35, 36, 26, 27, 28, 29, 30, -1,
|
|
||||||
32, 33, 34, 35, 36, 3, 4, 5, -1, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, 3, 4, 5, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, -1, -1, 26, 27,
|
|
||||||
28, 29, 30, -1, 32, 33, 34, 35, 36, 26,
|
|
||||||
27, 28, 29, 30, -1, 32, 33, 34, 35, 36,
|
|
||||||
3, 4, 5, -1, -1, -1, -1, -1, -1, -1,
|
|
||||||
-1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
|
|
||||||
-1, -1, -1, 26, 27, 28, 29, 30, -1, 32,
|
|
||||||
33, 34, 35, 36, 26, 27, 28, 29, 30, -1,
|
|
||||||
32, 33, 34, 35, 36, 3, 4, 5, -1, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, 3, 4, 5, -1,
|
|
||||||
-1, -1, -1, -1, -1, -1, -1, -1, 26, 27,
|
|
||||||
28, 29, 30, -1, 32, 33, 34, 35, 36, 26,
|
|
||||||
27, 28, 29, 30, -1, 32, 33, 34, 35, 36
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
||||||
symbol of state STATE-NUM. */
|
symbol of state STATE-NUM. */
|
||||||
static const yytype_uint8 yystos[] =
|
static const yytype_uint8 yystos[] =
|
||||||
{
|
{
|
||||||
0, 38, 0, 1, 3, 6, 7, 8, 9, 10,
|
0, 42, 0, 1, 3, 6, 7, 8, 9, 10,
|
||||||
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
|
||||||
21, 22, 23, 24, 25, 31, 32, 33, 34, 35,
|
21, 22, 23, 24, 25, 34, 35, 36, 37, 38,
|
||||||
36, 39, 40, 41, 42, 43, 44, 45, 46, 47,
|
39, 40, 43, 44, 45, 46, 47, 48, 49, 50,
|
||||||
48, 3, 29, 49, 34, 29, 3, 30, 30, 26,
|
51, 52, 3, 32, 53, 37, 32, 3, 33, 33,
|
||||||
27, 30, 29, 30, 30, 30, 30, 49, 49, 49,
|
29, 26, 28, 33, 32, 33, 33, 33, 33, 53,
|
||||||
49, 49, 3, 4, 5, 26, 27, 28, 29, 30,
|
53, 53, 53, 53, 3, 4, 5, 26, 27, 28,
|
||||||
32, 33, 34, 35, 36, 50, 49, 49, 49, 49,
|
29, 30, 31, 32, 33, 35, 36, 37, 38, 39,
|
||||||
30, 30, 49, 49, 49, 49, 49, 49, 3, 3,
|
40, 54, 53, 53, 53, 53, 33, 33, 33, 53,
|
||||||
3, 3, 3, 3, 3, 3, 3, 27, 49, 3,
|
53, 53, 53, 53, 53, 3, 3, 3, 3, 3,
|
||||||
3, 3, 3, 3, 3, 30, 3, 49, 3
|
3, 3, 3, 3, 27, 30, 28, 53, 3, 3,
|
||||||
|
3, 3, 3, 3, 33, 33, 33, 3, 30, 53,
|
||||||
|
53, 33, 3, 3, 53, 3
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
||||||
static const yytype_uint8 yyr1[] =
|
static const yytype_uint8 yyr1[] =
|
||||||
{
|
{
|
||||||
0, 37, 38, 38, 39, 39, 39, 39, 39, 39,
|
0, 41, 42, 42, 43, 43, 43, 43, 43, 43,
|
||||||
39, 39, 39, 39, 39, 39, 39, 39, 39, 39,
|
43, 43, 43, 43, 43, 43, 43, 43, 43, 43,
|
||||||
39, 39, 39, 39, 39, 40, 40, 40, 41, 41,
|
43, 43, 43, 43, 43, 43, 43, 44, 44, 44,
|
||||||
42, 42, 43, 43, 44, 44, 45, 45, 46, 46,
|
45, 45, 46, 46, 47, 47, 48, 48, 49, 49,
|
||||||
47, 47, 48, 48, 49, 49, 50, 50, 50, 50,
|
50, 50, 51, 51, 52, 52, 53, 53, 54, 54,
|
||||||
50, 50, 50, 50, 50, 50, 50, 50
|
54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
|
||||||
|
54, 54, 54, 54
|
||||||
};
|
};
|
||||||
|
|
||||||
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
||||||
static const yytype_uint8 yyr2[] =
|
static const yytype_uint8 yyr2[] =
|
||||||
{
|
{
|
||||||
0, 2, 0, 2, 2, 4, 4, 4, 4, 5,
|
0, 2, 0, 2, 2, 4, 4, 7, 9, 4,
|
||||||
7, 4, 4, 3, 4, 4, 4, 4, 4, 3,
|
4, 5, 7, 4, 4, 3, 4, 4, 4, 4,
|
||||||
3, 3, 3, 1, 2, 1, 1, 1, 1, 1,
|
4, 3, 3, 3, 3, 1, 2, 1, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
1, 1, 1, 1, 0, 2, 1, 1, 1, 1,
|
1, 1, 1, 1, 1, 1, 0, 2, 1, 1,
|
||||||
1, 1, 1, 1, 1, 1, 1, 1
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
||||||
|
1, 1, 1, 1
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -1487,26 +1532,26 @@ yyreduce:
|
||||||
switch (yyn)
|
switch (yyn)
|
||||||
{
|
{
|
||||||
case 4:
|
case 4:
|
||||||
#line 105 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 106 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_SetInInterface(parser, true);
|
cmFortranParser_SetInInterface(parser, true);
|
||||||
}
|
}
|
||||||
#line 1496 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1541 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
#line 109 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 110 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1506 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1551 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 6:
|
case 6:
|
||||||
#line 114 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 115 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
if (cmsysString_strcasecmp((yyvsp[-2].string), "function") != 0 &&
|
if (cmsysString_strcasecmp((yyvsp[-2].string), "function") != 0 &&
|
||||||
|
@ -1516,40 +1561,63 @@ yyreduce:
|
||||||
}
|
}
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1520 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1565 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 7:
|
case 7:
|
||||||
#line 123 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 124 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
|
{
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleUse(parser, (yyvsp[-4].string));
|
||||||
|
free((yyvsp[-4].string));
|
||||||
|
free((yyvsp[-2].string));
|
||||||
|
}
|
||||||
|
#line 1576 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 8:
|
||||||
|
#line 130 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
|
{
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleUse(parser, (yyvsp[-6].string));
|
||||||
|
free((yyvsp[-6].string));
|
||||||
|
free((yyvsp[-4].string));
|
||||||
|
free((yyvsp[-2].string));
|
||||||
|
}
|
||||||
|
#line 1588 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 9:
|
||||||
|
#line 137 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_SetInInterface(parser, true);
|
cmFortranParser_SetInInterface(parser, true);
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1530 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1598 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 8:
|
case 10:
|
||||||
#line 128 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 142 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_SetInInterface(parser, false);
|
cmFortranParser_SetInInterface(parser, false);
|
||||||
}
|
}
|
||||||
#line 1539 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1607 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 9:
|
case 11:
|
||||||
#line 132 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 146 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleUse(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1549 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1617 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 10:
|
case 12:
|
||||||
#line 137 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 151 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
if (cmsysString_strcasecmp((yyvsp[-4].string), "non_intrinsic") == 0) {
|
if (cmsysString_strcasecmp((yyvsp[-4].string), "non_intrinsic") == 0) {
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
@ -1558,139 +1626,139 @@ yyreduce:
|
||||||
free((yyvsp[-4].string));
|
free((yyvsp[-4].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1562 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1630 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 11:
|
case 13:
|
||||||
#line 145 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 159 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1572 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1640 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 12:
|
case 14:
|
||||||
#line 150 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 164 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleLineDirective(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleLineDirective(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1582 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1650 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
|
||||||
|
|
||||||
case 13:
|
|
||||||
#line 155 "cmFortranParser.y" /* yacc.c:1646 */
|
|
||||||
{
|
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
|
||||||
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
|
||||||
free((yyvsp[-2].string));
|
|
||||||
}
|
|
||||||
#line 1592 "cmFortranParser.cxx" /* yacc.c:1646 */
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 14:
|
|
||||||
#line 160 "cmFortranParser.y" /* yacc.c:1646 */
|
|
||||||
{
|
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
|
||||||
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
|
||||||
free((yyvsp[-2].string));
|
|
||||||
}
|
|
||||||
#line 1602 "cmFortranParser.cxx" /* yacc.c:1646 */
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 15:
|
case 15:
|
||||||
#line 165 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 169 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
|
{
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
||||||
|
free((yyvsp[-2].string));
|
||||||
|
}
|
||||||
|
#line 1660 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 16:
|
||||||
|
#line 174 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
|
{
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleInclude(parser, (yyvsp[-2].string));
|
||||||
|
free((yyvsp[-2].string));
|
||||||
|
}
|
||||||
|
#line 1670 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 17:
|
||||||
|
#line 179 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleDefine(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleDefine(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1612 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1680 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 16:
|
case 18:
|
||||||
#line 170 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 184 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleUndef(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleUndef(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1622 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1690 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 17:
|
case 19:
|
||||||
#line 175 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 189 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleIfdef(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleIfdef(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1632 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1700 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 18:
|
case 20:
|
||||||
#line 180 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 194 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleIfndef(parser, (yyvsp[-2].string));
|
cmFortranParser_RuleIfndef(parser, (yyvsp[-2].string));
|
||||||
free((yyvsp[-2].string));
|
free((yyvsp[-2].string));
|
||||||
}
|
}
|
||||||
#line 1642 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1710 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 19:
|
case 21:
|
||||||
#line 185 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 199 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleIf(parser);
|
cmFortranParser_RuleIf(parser);
|
||||||
}
|
}
|
||||||
#line 1651 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1719 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 20:
|
case 22:
|
||||||
#line 189 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 203 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleElif(parser);
|
cmFortranParser_RuleElif(parser);
|
||||||
}
|
}
|
||||||
#line 1660 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1728 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 21:
|
case 23:
|
||||||
#line 193 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 207 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleElse(parser);
|
cmFortranParser_RuleElse(parser);
|
||||||
}
|
}
|
||||||
#line 1669 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1737 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 22:
|
case 24:
|
||||||
#line 197 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 211 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{
|
{
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_RuleEndif(parser);
|
cmFortranParser_RuleEndif(parser);
|
||||||
}
|
}
|
||||||
#line 1678 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1746 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 46:
|
case 48:
|
||||||
#line 219 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 233 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{ free ((yyvsp[0].string)); }
|
{ free ((yyvsp[0].string)); }
|
||||||
#line 1684 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1752 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 52:
|
case 55:
|
||||||
#line 225 "cmFortranParser.y" /* yacc.c:1646 */
|
#line 240 "cmFortranParser.y" /* yacc.c:1646 */
|
||||||
{ free ((yyvsp[0].string)); }
|
{ free ((yyvsp[0].string)); }
|
||||||
#line 1690 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1758 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
||||||
#line 1694 "cmFortranParser.cxx" /* yacc.c:1646 */
|
#line 1762 "cmFortranParser.cxx" /* yacc.c:1646 */
|
||||||
default: break;
|
default: break;
|
||||||
}
|
}
|
||||||
/* User semantic actions sometimes alter yychar, and that requires
|
/* User semantic actions sometimes alter yychar, and that requires
|
||||||
|
@ -1920,6 +1988,6 @@ yyreturn:
|
||||||
#endif
|
#endif
|
||||||
return yyresult;
|
return yyresult;
|
||||||
}
|
}
|
||||||
#line 233 "cmFortranParser.y" /* yacc.c:1906 */
|
#line 251 "cmFortranParser.y" /* yacc.c:1906 */
|
||||||
|
|
||||||
/* End of grammar */
|
/* End of grammar */
|
||||||
|
|
|
@ -85,7 +85,7 @@ static void cmFortran_yyerror(yyscan_t yyscanner, const char* message)
|
||||||
%token CPP_IFDEF CPP_IFNDEF CPP_IF CPP_ELSE CPP_ELIF CPP_ENDIF
|
%token CPP_IFDEF CPP_IFNDEF CPP_IF CPP_ELSE CPP_ELIF CPP_ENDIF
|
||||||
%token F90PPR_IFDEF F90PPR_IFNDEF F90PPR_IF
|
%token F90PPR_IFDEF F90PPR_IFNDEF F90PPR_IF
|
||||||
%token F90PPR_ELSE F90PPR_ELIF F90PPR_ENDIF
|
%token F90PPR_ELSE F90PPR_ELIF F90PPR_ENDIF
|
||||||
%token COMMA DCOLON
|
%token COMMA COLON DCOLON LPAREN RPAREN
|
||||||
%token <number> UNTERMINATED_STRING
|
%token <number> UNTERMINATED_STRING
|
||||||
%token <string> STRING WORD
|
%token <string> STRING WORD
|
||||||
%token <string> CPP_INCLUDE_ANGLE
|
%token <string> CPP_INCLUDE_ANGLE
|
||||||
|
@ -93,6 +93,7 @@ static void cmFortran_yyerror(yyscan_t yyscanner, const char* message)
|
||||||
%token INCLUDE
|
%token INCLUDE
|
||||||
%token INTERFACE
|
%token INTERFACE
|
||||||
%token MODULE
|
%token MODULE
|
||||||
|
%token SUBMODULE
|
||||||
%token USE
|
%token USE
|
||||||
|
|
||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
@ -120,6 +121,19 @@ stmt:
|
||||||
}
|
}
|
||||||
free($2);
|
free($2);
|
||||||
}
|
}
|
||||||
|
| SUBMODULE LPAREN WORD RPAREN WORD other EOSTMT {
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleUse(parser, $3);
|
||||||
|
free($3);
|
||||||
|
free($5);
|
||||||
|
}
|
||||||
|
| SUBMODULE LPAREN WORD COLON WORD RPAREN WORD other EOSTMT {
|
||||||
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
|
cmFortranParser_RuleUse(parser, $3);
|
||||||
|
free($3);
|
||||||
|
free($5);
|
||||||
|
free($7);
|
||||||
|
}
|
||||||
| INTERFACE WORD other EOSTMT {
|
| INTERFACE WORD other EOSTMT {
|
||||||
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
cmFortranParser* parser = cmFortran_yyget_extra(yyscanner);
|
||||||
cmFortranParser_SetInInterface(parser, true);
|
cmFortranParser_SetInInterface(parser, true);
|
||||||
|
@ -221,11 +235,15 @@ misc_code:
|
||||||
| INCLUDE
|
| INCLUDE
|
||||||
| INTERFACE
|
| INTERFACE
|
||||||
| MODULE
|
| MODULE
|
||||||
|
| SUBMODULE
|
||||||
| USE
|
| USE
|
||||||
| STRING { free ($1); }
|
| STRING { free ($1); }
|
||||||
| GARBAGE
|
| GARBAGE
|
||||||
| ASSIGNMENT_OP
|
| ASSIGNMENT_OP
|
||||||
|
| COLON
|
||||||
| DCOLON
|
| DCOLON
|
||||||
|
| LPAREN
|
||||||
|
| RPAREN
|
||||||
| COMMA
|
| COMMA
|
||||||
| UNTERMINATED_STRING
|
| UNTERMINATED_STRING
|
||||||
;
|
;
|
||||||
|
|
|
@ -69,16 +69,20 @@ extern int cmFortran_yydebug;
|
||||||
F90PPR_ELIF = 279,
|
F90PPR_ELIF = 279,
|
||||||
F90PPR_ENDIF = 280,
|
F90PPR_ENDIF = 280,
|
||||||
COMMA = 281,
|
COMMA = 281,
|
||||||
DCOLON = 282,
|
COLON = 282,
|
||||||
UNTERMINATED_STRING = 283,
|
DCOLON = 283,
|
||||||
STRING = 284,
|
LPAREN = 284,
|
||||||
WORD = 285,
|
RPAREN = 285,
|
||||||
CPP_INCLUDE_ANGLE = 286,
|
UNTERMINATED_STRING = 286,
|
||||||
END = 287,
|
STRING = 287,
|
||||||
INCLUDE = 288,
|
WORD = 288,
|
||||||
INTERFACE = 289,
|
CPP_INCLUDE_ANGLE = 289,
|
||||||
MODULE = 290,
|
END = 290,
|
||||||
USE = 291
|
INCLUDE = 291,
|
||||||
|
INTERFACE = 292,
|
||||||
|
MODULE = 293,
|
||||||
|
SUBMODULE = 294,
|
||||||
|
USE = 295
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
/* Tokens. */
|
/* Tokens. */
|
||||||
|
@ -106,16 +110,20 @@ extern int cmFortran_yydebug;
|
||||||
#define F90PPR_ELIF 279
|
#define F90PPR_ELIF 279
|
||||||
#define F90PPR_ENDIF 280
|
#define F90PPR_ENDIF 280
|
||||||
#define COMMA 281
|
#define COMMA 281
|
||||||
#define DCOLON 282
|
#define COLON 282
|
||||||
#define UNTERMINATED_STRING 283
|
#define DCOLON 283
|
||||||
#define STRING 284
|
#define LPAREN 284
|
||||||
#define WORD 285
|
#define RPAREN 285
|
||||||
#define CPP_INCLUDE_ANGLE 286
|
#define UNTERMINATED_STRING 286
|
||||||
#define END 287
|
#define STRING 287
|
||||||
#define INCLUDE 288
|
#define WORD 288
|
||||||
#define INTERFACE 289
|
#define CPP_INCLUDE_ANGLE 289
|
||||||
#define MODULE 290
|
#define END 290
|
||||||
#define USE 291
|
#define INCLUDE 291
|
||||||
|
#define INTERFACE 292
|
||||||
|
#define MODULE 293
|
||||||
|
#define SUBMODULE 294
|
||||||
|
#define USE 295
|
||||||
|
|
||||||
/* Value type. */
|
/* Value type. */
|
||||||
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
||||||
|
@ -126,7 +134,7 @@ union YYSTYPE
|
||||||
|
|
||||||
char* string;
|
char* string;
|
||||||
|
|
||||||
#line 130 "cmFortranParserTokens.h" /* yacc.c:1909 */
|
#line 138 "cmFortranParserTokens.h" /* yacc.c:1909 */
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef union YYSTYPE YYSTYPE;
|
typedef union YYSTYPE YYSTYPE;
|
||||||
|
|
Loading…
Reference in New Issue