From c6e983861593d994981a7190c8123bf60facec88 Mon Sep 17 00:00:00 2001 From: Pasi Kallinen Date: Fri, 10 Apr 2015 19:45:04 +0300 Subject: [PATCH] Update precompiled lex and yacc files --- sys/share/lev_lex.c | 1622 +++++++++++++++-------------- sys/share/lev_yacc.c | 2354 ++++++++++++++++++++++-------------------- 2 files changed, 2034 insertions(+), 1942 deletions(-) diff --git a/sys/share/lev_lex.c b/sys/share/lev_lex.c index c5fdc4097..bfe700ceb 100644 --- a/sys/share/lev_lex.c +++ b/sys/share/lev_lex.c @@ -369,8 +369,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 197 -#define YY_END_OF_BUFFER 198 +#define YY_NUM_RULES 198 +#define YY_END_OF_BUFFER 199 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -378,123 +378,122 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1049] = +static yyconst flex_int16_t yy_accept[1038] = { 0, - 0, 0, 0, 0, 198, 196, 192, 191, 196, 196, - 196, 196, 196, 196, 195, 181, 189, 196, 190, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 196, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 192, 196, 195, 2, 196, 192, 196, 196, 195, 181, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 192, 196, 195, 192, 191, 185, - 0, 182, 183, 0, 0, 179, 195, 178, 180, 181, + 0, 0, 0, 0, 199, 197, 193, 192, 197, 197, + 197, 197, 197, 197, 196, 182, 190, 197, 191, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 197, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 193, 197, 196, 2, 197, 193, 197, 197, 196, 182, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 193, 197, 193, 192, 186, 0, 183, 184, + 0, 0, 180, 196, 179, 181, 182, 196, 188, 187, - 195, 187, 186, 184, 188, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 39, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 55, 195, 195, 0, 0, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 185, 189, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 39, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 55, 196, 196, 0, 0, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 153, 195, 195, 192, 0, - 0, 3, 195, 2, 2, 0, 192, 0, 179, 195, - 178, 181, 195, 195, 195, 195, 195, 39, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 192, 0, 2, - 0, 0, 195, 194, 0, 194, 176, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 54, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 153, 196, 196, 193, 0, 0, 3, 196, + 2, 2, 0, 193, 0, 180, 196, 179, 182, 196, + 196, 196, 196, 39, 196, 196, 196, 196, 196, 196, + 193, 0, 2, 0, 0, 195, 0, 195, 177, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 54, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 0, 196, 103, 196, 83, - 195, 195, 195, 0, 195, 103, 195, 83, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 79, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 81, 195, 195, 195, - 195, 138, 195, 195, 195, 195, 127, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 16, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 125, 195, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 79, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 81, + 196, 196, 196, 196, 138, 196, 196, 196, 196, 127, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 16, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 125, 196, 196, 196, 196, 196, 196, 196, 196, - 195, 195, 195, 195, 195, 195, 195, 80, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 193, - 195, 195, 195, 58, 195, 195, 195, 22, 195, 40, - 195, 41, 195, 195, 195, 195, 49, 195, 195, 195, - 195, 56, 6, 195, 195, 195, 53, 195, 195, 195, - 36, 195, 195, 195, 195, 42, 195, 35, 195, 195, - 195, 195, 195, 21, 195, 0, 177, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 159, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 154, - 157, 113, 195, 195, 195, 195, 195, 195, 195, 195, + 80, 196, 196, 196, 196, 196, 196, 196, 196, 194, + 196, 196, 196, 58, 196, 196, 196, 22, 196, 40, + 196, 41, 196, 196, 196, 196, 49, 196, 196, 196, + 196, 56, 6, 196, 196, 196, 53, 196, 196, 196, + 36, 196, 196, 196, 196, 42, 196, 35, 196, 196, + 196, 196, 196, 21, 196, 0, 178, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 159, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 154, 157, 113, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 69, 196, 196, 196, 196, - 195, 195, 195, 195, 69, 195, 195, 195, 195, 195, - 195, 195, 195, 120, 195, 195, 67, 195, 195, 195, - 195, 160, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 118, 195, 195, 195, 106, 195, 195, 195, 195, - 195, 195, 195, 65, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 156, 195, 195, 195, 195, 195, 115, 15, - 0, 195, 195, 195, 195, 195, 195, 2, 0, 28, - 195, 59, 195, 195, 195, 195, 195, 13, 195, 195, - 195, 50, 195, 195, 7, 195, 195, 195, 195, 5, + 196, 196, 196, 196, 120, 196, 196, 67, 196, 196, + 196, 196, 160, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 118, 196, 196, 196, 106, 196, 196, 196, + 196, 196, 196, 196, 65, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 156, 196, 196, 196, 196, 196, 115, + 15, 0, 196, 196, 196, 196, 196, 28, 196, 59, + 196, 196, 196, 196, 196, 13, 196, 196, 196, 50, + 196, 196, 7, 196, 196, 196, 196, 5, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 30, 196, 196, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 30, - 195, 195, 195, 195, 195, 119, 152, 195, 195, 195, - 146, 195, 195, 161, 195, 195, 195, 195, 195, 140, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 155, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 11, 195, 195, 195, 195, - 195, 195, 195, 112, 195, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 124, 195, 12, 195, - 195, 195, 195, 195, 195, 195, 82, 114, 195, 195, + 196, 196, 196, 119, 152, 196, 196, 196, 146, 196, + 196, 161, 196, 196, 196, 196, 196, 140, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 155, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 11, 196, 196, 196, 196, 196, + 196, 196, 112, 196, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 124, 196, 12, 196, 196, + 196, 196, 196, 196, 196, 82, 114, 196, 196, 196, + 196, 196, 196, 196, 196, 128, 196, 196, 196, 196, - 195, 195, 195, 195, 195, 195, 128, 195, 195, 195, - 195, 195, 33, 195, 195, 195, 195, 195, 195, 195, - 195, 195, 29, 195, 195, 195, 195, 195, 195, 17, - 31, 195, 27, 195, 195, 195, 195, 57, 195, 195, - 195, 195, 145, 96, 195, 195, 126, 110, 86, 195, - 122, 72, 107, 195, 195, 195, 164, 195, 195, 87, - 195, 93, 129, 195, 74, 195, 195, 195, 195, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 134, 195, - 195, 108, 195, 195, 195, 195, 195, 195, 195, 195, - 195, 109, 167, 195, 195, 16, 195, 195, 195, 195, + 33, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 29, 196, 196, 196, 196, 196, 196, 17, 31, 196, + 27, 196, 196, 196, 196, 57, 196, 196, 196, 196, + 145, 96, 196, 196, 126, 110, 86, 196, 122, 72, + 107, 196, 196, 196, 196, 164, 196, 196, 87, 196, + 93, 129, 196, 74, 196, 196, 196, 196, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 134, 196, 196, + 108, 196, 196, 196, 196, 196, 196, 196, 196, 196, + 109, 167, 196, 196, 16, 196, 196, 196, 196, 77, + 196, 116, 196, 196, 196, 196, 196, 111, 196, 196, - 77, 195, 116, 195, 195, 195, 195, 195, 111, 195, - 195, 195, 151, 172, 195, 195, 78, 195, 195, 195, - 195, 195, 195, 195, 195, 1, 195, 57, 195, 195, - 195, 60, 195, 195, 195, 195, 195, 195, 195, 4, - 195, 19, 195, 195, 195, 195, 195, 62, 43, 195, - 46, 26, 195, 162, 98, 195, 195, 195, 195, 73, - 158, 195, 195, 97, 195, 195, 195, 92, 195, 195, - 195, 195, 144, 195, 195, 195, 195, 135, 195, 195, - 195, 195, 195, 20, 63, 139, 137, 195, 195, 195, - 195, 195, 195, 195, 117, 195, 131, 95, 195, 150, + 196, 151, 172, 196, 196, 78, 196, 196, 196, 196, + 196, 196, 196, 196, 1, 57, 196, 196, 196, 60, + 196, 196, 196, 196, 196, 196, 196, 4, 196, 19, + 196, 196, 196, 196, 196, 62, 43, 196, 46, 26, + 196, 162, 98, 196, 196, 196, 196, 196, 73, 158, + 196, 196, 97, 196, 196, 196, 92, 196, 196, 196, + 196, 144, 196, 196, 196, 196, 135, 196, 196, 196, + 196, 196, 20, 63, 139, 137, 196, 196, 196, 196, + 196, 196, 196, 117, 196, 131, 95, 196, 150, 196, + 196, 196, 196, 196, 100, 47, 89, 196, 196, 196, - 195, 195, 195, 195, 195, 100, 47, 89, 195, 195, - 195, 195, 195, 26, 195, 45, 195, 195, 34, 61, - 14, 8, 25, 195, 195, 195, 195, 195, 23, 195, - 168, 195, 195, 195, 101, 195, 66, 195, 75, 195, - 195, 195, 195, 195, 195, 195, 195, 195, 195, 195, - 149, 9, 195, 195, 195, 195, 143, 195, 85, 68, - 195, 71, 195, 195, 195, 195, 175, 163, 130, 133, - 195, 105, 18, 195, 51, 195, 195, 195, 195, 195, - 195, 94, 141, 195, 195, 70, 173, 121, 195, 166, - 195, 174, 91, 132, 84, 147, 148, 170, 195, 195, + 196, 196, 196, 45, 196, 196, 34, 61, 14, 8, + 25, 196, 196, 196, 196, 196, 23, 196, 168, 196, + 196, 196, 101, 176, 196, 66, 196, 75, 196, 196, + 196, 196, 196, 196, 196, 196, 196, 196, 196, 149, + 9, 196, 196, 196, 196, 143, 196, 85, 68, 196, + 71, 196, 196, 196, 196, 175, 163, 130, 133, 196, + 105, 18, 196, 51, 196, 196, 196, 196, 196, 196, + 94, 141, 196, 196, 70, 173, 121, 196, 166, 196, + 174, 91, 132, 84, 147, 148, 170, 196, 196, 99, + 171, 90, 196, 64, 196, 10, 136, 24, 52, 196, - 99, 171, 90, 195, 64, 195, 10, 136, 24, 52, - 195, 195, 195, 195, 195, 76, 88, 123, 104, 195, - 165, 102, 195, 195, 195, 195, 195, 195, 195, 195, - 37, 38, 195, 195, 195, 142, 169, 195, 195, 195, - 195, 195, 195, 195, 48, 32, 44, 0 + 196, 196, 196, 196, 76, 88, 123, 104, 196, 165, + 102, 196, 196, 196, 196, 196, 196, 196, 196, 37, + 38, 196, 196, 196, 142, 169, 196, 196, 196, 196, + 196, 196, 196, 48, 32, 44, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -534,254 +533,252 @@ static yyconst flex_int32_t yy_meta[75] = 1, 2, 3, 2, 2, 1, 1, 2, 1, 1, 1, 2, 4, 2, 4, 1, 1, 1, 5, 5, 5, 6, 6, 5, 6, 5, 5, 6, 5, 5, - 5, 6, 6, 5, 6, 6, 5, 5, 5, 6, - 5, 6, 5, 6, 1, 2, 1, 6, 6, 6, + 6, 6, 6, 5, 6, 6, 5, 5, 6, 6, + 5, 6, 6, 6, 1, 2, 1, 6, 6, 6, + 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, - 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 6, 5, 6, 6 } ; -static yyconst flex_int16_t yy_base[1056] = +static yyconst flex_int16_t yy_base[1045] = { 0, - 0, 73, 102, 77, 1287, 1288, 75, 1288, 1283, 1268, - 1277, 0, 1237, 1267, 1266, 78, 66, 1263, 1262, 1248, - 1241, 57, 63, 59, 64, 101, 0, 63, 79, 119, - 94, 1256, 1242, 128, 127, 126, 1255, 104, 109, 118, - 133, 94, 139, 151, 1207, 95, 132, 1209, 157, 164, - 154, 100, 166, 1202, 173, 175, 176, 56, 1217, 1216, - 239, 1265, 226, 1288, 1264, 252, 248, 258, 271, 157, - 162, 120, 248, 216, 274, 1251, 201, 249, 296, 140, - 306, 301, 176, 265, 346, 352, 369, 232, 1288, 1288, - 1258, 1288, 0, 1253, 1252, 1247, 0, 1246, 1288, 278, + 0, 73, 102, 77, 1235, 1236, 75, 1236, 1231, 1216, + 1225, 0, 1185, 1215, 1214, 78, 66, 1211, 1210, 1196, + 1189, 57, 63, 59, 64, 101, 0, 63, 79, 119, + 94, 1204, 1190, 122, 123, 121, 1203, 104, 105, 100, + 124, 90, 129, 137, 1155, 84, 117, 1157, 139, 150, + 151, 151, 156, 1150, 163, 168, 166, 56, 1165, 1164, + 232, 1213, 216, 1236, 1212, 242, 248, 251, 264, 196, + 155, 167, 208, 228, 241, 1199, 249, 242, 195, 277, + 284, 223, 319, 334, 257, 1236, 1236, 1206, 1236, 0, + 1201, 1200, 1195, 0, 1194, 1236, 298, 1193, 1236, 1236, - 1245, 1288, 1288, 1288, 1288, 1221, 246, 1221, 234, 1233, - 1223, 1236, 1217, 1228, 1225, 1232, 260, 1218, 1216, 1218, - 1228, 0, 1219, 1223, 1204, 1210, 1198, 1204, 1208, 1207, - 1207, 246, 1209, 270, 1204, 301, 1202, 1195, 1201, 1213, - 1211, 1203, 306, 0, 1210, 1198, 347, 208, 301, 1154, - 1176, 1165, 1171, 1174, 317, 1154, 1158, 1154, 1157, 1156, - 1168, 1150, 1152, 338, 1148, 1142, 1139, 1144, 1143, 1149, - 1153, 1144, 1146, 1144, 1144, 300, 348, 280, 337, 1150, - 1132, 1135, 1143, 1128, 217, 345, 1147, 314, 26, 1135, - 1134, 1134, 1125, 360, 1135, 1139, 1125, 1141, 1136, 1139, + 1236, 1236, 1169, 263, 1169, 264, 1181, 1171, 1184, 1165, + 1176, 1173, 1180, 270, 1166, 1164, 1166, 1176, 0, 1167, + 1171, 1152, 1158, 1146, 1152, 1156, 1155, 1155, 280, 1157, + 292, 1152, 301, 1150, 1143, 1149, 1161, 1159, 1151, 259, + 0, 1158, 1146, 203, 304, 272, 1102, 1124, 1113, 1119, + 1122, 288, 1102, 1106, 1102, 1105, 1104, 1116, 1098, 1100, + 308, 1096, 1090, 1087, 1092, 1091, 1097, 1101, 1092, 1094, + 1092, 1092, 234, 281, 296, 299, 1098, 1080, 1083, 1091, + 1076, 81, 315, 1095, 324, 26, 1083, 1082, 1082, 1073, + 330, 1083, 1087, 1073, 1089, 1084, 1087, 281, 333, 1080, - 356, 359, 1132, 1134, 1130, 1122, 372, 259, 325, 1114, - 1113, 1115, 1116, 366, 376, 0, 1113, 349, 435, 1175, - 1174, 1288, 397, 1288, 1288, 1173, 442, 446, 449, 1160, - 0, 423, 404, 424, 316, 439, 440, 1159, 305, 441, - 442, 444, 445, 447, 448, 170, 450, 484, 0, 1288, - 1170, 0, 456, 1288, 1161, 1160, 1155, 1150, 1136, 1148, - 1143, 1127, 1128, 1144, 1126, 1120, 1137, 1123, 1120, 1132, - 0, 1124, 1134, 1123, 1131, 1112, 1113, 1128, 1126, 1114, - 1124, 1109, 1122, 1107, 1120, 1123, 1093, 1117, 1109, 1100, - 1115, 1109, 1105, 1103, 1109, 1103, 1104, 1094, 1091, 1105, + 1082, 1078, 1070, 342, 323, 321, 1062, 1061, 1063, 1064, + 345, 350, 0, 1061, 332, 407, 1123, 1122, 1236, 363, + 1236, 1236, 1121, 411, 415, 416, 1108, 0, 412, 390, + 396, 404, 415, 1107, 337, 410, 420, 417, 423, 424, + 0, 0, 1236, 1118, 0, 1236, 1109, 1108, 1103, 1098, + 1084, 1096, 1091, 1075, 1076, 1092, 1074, 1068, 1085, 1071, + 1068, 1080, 0, 1072, 1082, 1071, 1079, 1060, 1061, 1076, + 1074, 1062, 1072, 1057, 1070, 1055, 1068, 1071, 1041, 1065, + 1057, 1048, 1063, 1057, 1053, 1051, 1057, 1051, 1052, 1042, + 1039, 1053, 1039, 1040, 1043, 326, 1017, 0, 1022, 0, - 1091, 1092, 1095, 462, 1069, 0, 1074, 0, 1059, 1068, - 1058, 1060, 1051, 1055, 1053, 1047, 1055, 416, 1062, 1044, - 1048, 1059, 1042, 1048, 1043, 1052, 1038, 1042, 0, 1035, - 1034, 1044, 1034, 1047, 1031, 1048, 416, 1043, 1032, 427, - 1045, 1022, 1038, 1039, 1033, 1021, 0, 1036, 1030, 1033, - 1023, 0, 1016, 1017, 1025, 1028, 0, 1021, 1026, 1015, - 1027, 1017, 1022, 1021, 402, 1020, 1004, 1011, 1007, 1008, - 440, 1000, 1014, 1013, 1003, 1015, 1012, 1001, 999, 1003, - 1007, 426, 989, 1000, 1000, 1004, 985, 1002, 986, 989, - 997, 983, 438, 991, 979, 997, 983, 978, 0, 979, + 1007, 1016, 1006, 1008, 999, 1003, 1001, 995, 1003, 380, + 1010, 992, 996, 1007, 990, 996, 991, 1000, 987, 985, + 989, 0, 982, 981, 991, 981, 994, 978, 995, 380, + 990, 979, 389, 992, 969, 985, 986, 980, 968, 0, + 983, 977, 980, 970, 0, 963, 964, 972, 975, 0, + 968, 973, 962, 974, 964, 969, 968, 376, 967, 951, + 958, 954, 955, 394, 947, 961, 960, 950, 962, 959, + 948, 946, 950, 954, 390, 936, 947, 947, 951, 932, + 949, 933, 936, 944, 930, 394, 938, 926, 944, 930, + 925, 0, 926, 936, 919, 930, 923, 928, 916, 915, - 989, 972, 983, 976, 981, 969, 968, 0, 495, 487, - 481, 1004, 488, 490, 492, 493, 495, 496, 512, 1288, - 998, 1012, 1003, 0, 1012, 1003, 990, 0, 1008, 0, - 1008, 0, 989, 987, 986, 1000, 0, 999, 973, 997, - 989, 0, 977, 998, 980, 977, 0, 980, 490, 992, - 0, 993, 978, 977, 990, 986, 983, 0, 970, 972, - 983, 969, 983, 0, 974, 476, 1288, 938, 933, 932, - 944, 941, 942, 927, 941, 940, 928, 937, 936, 0, - 935, 934, 919, 925, 931, 926, 922, 912, 927, 0, - 0, 0, 915, 929, 924, 923, 915, 464, 921, 916, + 0, 452, 446, 445, 951, 438, 447, 451, 452, 1236, + 945, 959, 950, 0, 959, 950, 937, 0, 955, 0, + 955, 0, 936, 934, 933, 947, 0, 946, 920, 944, + 936, 0, 924, 945, 927, 924, 0, 927, 447, 939, + 0, 940, 925, 924, 937, 933, 930, 0, 917, 919, + 930, 916, 930, 0, 921, 465, 1236, 885, 880, 879, + 891, 888, 889, 874, 888, 887, 875, 884, 883, 0, + 882, 881, 866, 872, 878, 873, 869, 859, 866, 873, + 0, 0, 0, 861, 875, 870, 869, 861, 418, 867, + 862, 866, 860, 863, 848, 0, 901, 859, 838, 854, - 920, 914, 917, 902, 0, 955, 913, 892, 908, 900, - 896, 907, 908, 0, 907, 891, 0, 905, 908, 894, - 897, 0, 465, 887, 885, 879, 885, 893, 886, 899, - 884, 0, 890, 885, 893, 0, 883, 889, 892, 872, - 890, 458, 889, 0, 877, 866, 867, 871, 880, 864, - 878, 882, 878, 860, 865, 857, 873, 868, 857, 860, - 872, 856, 0, 853, 858, 860, 467, 859, 0, 1288, - 912, 507, 895, 516, 517, 521, 519, 1288, 910, 0, - 886, 0, 884, 888, 879, 872, 867, 0, 887, 878, - 866, 0, 872, 866, 0, 882, 875, 880, 875, 0, + 846, 842, 853, 854, 0, 853, 837, 0, 851, 854, + 840, 843, 0, 417, 833, 831, 825, 831, 839, 832, + 845, 830, 0, 836, 831, 839, 0, 829, 835, 838, + 818, 836, 413, 835, 0, 823, 812, 813, 817, 826, + 810, 824, 828, 824, 806, 811, 803, 819, 814, 803, + 806, 818, 802, 0, 799, 804, 806, 417, 805, 0, + 1236, 858, 460, 841, 464, 465, 468, 0, 833, 0, + 831, 835, 826, 819, 814, 0, 834, 825, 813, 0, + 819, 813, 0, 829, 822, 827, 822, 0, 817, 824, + 804, 811, 809, 807, 817, 804, 806, 0, 802, 808, - 870, 877, 857, 864, 862, 860, 870, 857, 859, 0, - 855, 861, 853, 858, 860, 0, 0, 830, 818, 828, - 0, 827, 826, 0, 817, 815, 824, 815, 808, 0, - 820, 820, 816, 817, 802, 816, 800, 796, 485, 0, - 812, 812, 810, 796, 799, 806, 806, 785, 804, 478, - 796, 792, 794, 790, 795, 782, 798, 794, 795, 795, - 778, 778, 791, 777, 789, 0, 788, 776, 790, 783, - 771, 772, 786, 0, 781, 765, 759, 777, 766, 772, - 768, 770, 765, 759, 775, 770, 0, 759, 0, 752, - 752, 751, 750, 750, 763, 763, 491, 0, 761, 760, + 800, 805, 807, 0, 0, 777, 765, 775, 0, 774, + 773, 0, 764, 762, 771, 762, 755, 0, 767, 767, + 763, 764, 749, 766, 762, 746, 742, 435, 0, 758, + 758, 756, 742, 745, 752, 752, 731, 750, 428, 742, + 738, 740, 736, 741, 728, 744, 740, 741, 741, 724, + 724, 737, 723, 735, 0, 734, 722, 736, 729, 717, + 718, 732, 0, 727, 711, 705, 723, 712, 718, 714, + 716, 711, 705, 721, 716, 0, 705, 0, 698, 698, + 697, 696, 696, 709, 709, 436, 0, 707, 706, 701, + 704, 689, 695, 692, 696, 0, 701, 717, 476, 477, - 755, 758, 743, 749, 746, 750, 0, 755, 771, 524, - 526, 532, 0, 772, 770, 764, 774, 773, 772, 765, - 761, 777, 0, 765, 771, 763, 756, 766, 750, 0, - 0, 720, 0, 88, 261, 336, 519, 0, 515, 523, - 514, 509, 0, 0, 507, 508, 0, 0, 0, 501, - 0, 0, 0, 500, 502, 511, 0, 512, 513, 0, - 501, 0, 0, 517, 0, 514, 513, 509, 523, 521, - 521, 518, 513, 515, 525, 516, 530, 521, 0, 525, - 531, 0, 515, 517, 535, 530, 518, 523, 537, 531, - 530, 0, 0, 533, 530, 0, 521, 527, 533, 530, + 0, 718, 716, 710, 720, 719, 718, 711, 707, 723, + 0, 711, 717, 709, 699, 691, 74, 0, 0, 110, + 0, 207, 230, 474, 467, 0, 467, 472, 462, 457, + 0, 0, 455, 456, 0, 0, 0, 449, 0, 0, + 0, 448, 450, 460, 440, 0, 462, 463, 0, 451, + 0, 0, 467, 0, 464, 463, 459, 473, 471, 471, + 468, 463, 465, 475, 466, 480, 471, 0, 475, 481, + 0, 465, 467, 485, 480, 468, 473, 487, 481, 480, + 0, 0, 483, 480, 0, 471, 477, 483, 480, 0, + 487, 505, 496, 486, 501, 488, 494, 0, 490, 500, - 0, 537, 555, 546, 536, 551, 538, 544, 0, 540, - 550, 551, 0, 0, 552, 556, 0, 559, 550, 561, - 561, 562, 563, 549, 569, 0, 604, 605, 606, 599, - 587, 0, 602, 593, 594, 596, 586, 596, 602, 0, - 605, 0, 608, 597, 614, 588, 601, 0, 0, 600, - 0, 0, 579, 0, 0, 587, 588, 589, 591, 0, - 0, 581, 577, 0, 586, 579, 582, 0, 596, 596, - 589, 585, 0, 594, 595, 607, 594, 0, 592, 606, - 592, 609, 609, 0, 0, 0, 0, 606, 601, 612, - 606, 614, 595, 616, 1288, 617, 0, 0, 619, 0, + 501, 0, 0, 502, 506, 0, 509, 500, 511, 511, + 512, 513, 499, 519, 0, 554, 555, 548, 536, 0, + 551, 542, 543, 544, 534, 544, 550, 0, 553, 0, + 556, 545, 562, 536, 549, 0, 0, 548, 0, 0, + 527, 0, 0, 535, 536, 537, 539, 539, 0, 0, + 530, 526, 0, 535, 528, 531, 0, 545, 545, 538, + 534, 0, 543, 544, 556, 543, 0, 541, 555, 541, + 558, 558, 0, 0, 0, 0, 555, 550, 561, 555, + 563, 544, 565, 1236, 566, 0, 0, 568, 0, 572, + 559, 568, 564, 552, 0, 0, 0, 574, 575, 576, - 623, 610, 619, 615, 603, 0, 0, 0, 625, 626, - 627, 627, 621, 667, 647, 0, 659, 660, 0, 0, - 0, 0, 0, 642, 668, 647, 656, 652, 0, 643, - 0, 640, 641, 632, 0, 632, 0, 636, 0, 645, - 630, 643, 634, 652, 635, 650, 638, 643, 653, 641, - 0, 0, 648, 654, 644, 659, 0, 660, 0, 0, - 661, 0, 650, 653, 660, 657, 0, 0, 0, 0, - 666, 0, 0, 696, 0, 697, 701, 703, 687, 701, - 689, 0, 0, 658, 673, 0, 0, 0, 660, 0, - 669, 0, 0, 0, 0, 0, 0, 0, 668, 663, + 576, 570, 595, 0, 607, 608, 0, 0, 0, 0, + 0, 590, 616, 595, 604, 600, 0, 591, 0, 588, + 589, 580, 0, 0, 580, 0, 584, 0, 593, 578, + 591, 582, 600, 583, 598, 586, 591, 601, 589, 0, + 0, 596, 602, 592, 607, 0, 608, 0, 0, 609, + 0, 598, 601, 608, 605, 0, 0, 0, 0, 614, + 0, 0, 644, 0, 645, 649, 651, 635, 649, 637, + 0, 0, 606, 621, 0, 0, 0, 608, 0, 617, + 0, 0, 0, 0, 0, 0, 0, 616, 611, 0, + 0, 0, 613, 0, 613, 0, 0, 0, 0, 652, - 0, 0, 0, 665, 0, 665, 0, 0, 0, 0, - 704, 705, 700, 701, 715, 0, 0, 0, 0, 686, - 0, 0, 687, 718, 712, 716, 708, 720, 694, 695, - 0, 0, 726, 730, 723, 0, 0, 718, 725, 720, - 718, 723, 724, 720, 0, 0, 0, 1288, 757, 759, - 765, 768, 774, 779, 784 + 653, 648, 649, 663, 0, 0, 0, 0, 634, 0, + 0, 635, 666, 660, 664, 656, 668, 642, 643, 0, + 0, 674, 678, 671, 0, 0, 666, 673, 668, 666, + 671, 672, 668, 0, 0, 0, 1236, 705, 707, 713, + 716, 722, 727, 732 } ; -static yyconst flex_int16_t yy_def[1056] = +static yyconst flex_int16_t yy_def[1045] = { 0, - 1048, 1, 1, 3, 1048, 1048, 1048, 1048, 1048, 1048, - 1049, 1050, 1051, 1048, 1052, 1052, 1048, 1048, 1048, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1048, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1048, 1053, 1052, 1048, 1048, 1054, 1054, 1054, 1052, 69, - 69, 69, 69, 1052, 69, 69, 69, 69, 69, 69, - 69, 69, 69, 69, 1054, 1053, 69, 1048, 1048, 1048, - 1049, 1048, 1050, 1048, 1055, 1048, 1052, 1052, 1048, 1052, + 1037, 1, 1, 3, 1037, 1037, 1037, 1037, 1037, 1037, + 1038, 1039, 1040, 1037, 1041, 1041, 1037, 1037, 1037, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1037, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1037, 1042, 1041, 1037, 1037, 1043, 1043, 1043, 1041, 69, + 69, 69, 69, 1041, 69, 69, 69, 69, 69, 69, + 69, 69, 1043, 1042, 1037, 1037, 1037, 1038, 1037, 1039, + 1037, 1044, 1037, 1041, 1041, 1037, 1041, 1041, 1037, 1037, - 1052, 1048, 1048, 1048, 1048, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1048, 1048, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1037, 1037, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1037, 1037, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1048, 1053, - 1053, 1048, 1052, 1048, 1048, 1048, 1054, 1054, 1054, 69, - 69, 69, 69, 69, 1052, 69, 69, 69, 69, 69, - 69, 69, 69, 69, 69, 69, 69, 1054, 86, 1048, - 1053, 86, 69, 1048, 1048, 1048, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1037, 1042, 1042, 1037, 1041, + 1037, 1037, 1037, 83, 83, 83, 69, 69, 69, 69, + 69, 1041, 69, 69, 69, 69, 69, 69, 69, 69, + 83, 84, 1037, 1042, 84, 1037, 1037, 1037, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1037, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1048, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 69, - 69, 1052, 69, 69, 69, 69, 69, 69, 69, 1048, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1048, 1048, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 69, 69, 1041, 69, 69, 69, 69, 1037, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1037, 1037, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1048, - 1048, 69, 1052, 69, 69, 69, 69, 1048, 1048, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1037, 1037, 69, 1041, 69, 69, 69, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 69, 69, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 69, - 69, 69, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 69, 69, 69, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1048, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 69, 69, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1037, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 69, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, - 1052, 1052, 1052, 1052, 1052, 1052, 1052, 0, 1048, 1048, - 1048, 1048, 1048, 1048, 1048 + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, + 1041, 1041, 1041, 1041, 1041, 1041, 0, 1037, 1037, 1037, + 1037, 1037, 1037, 1037 } ; -static yyconst flex_int16_t yy_nxt[1363] = +static yyconst flex_int16_t yy_nxt[1311] = { 0, 6, 7, 8, 9, 7, 10, 11, 6, 12, 6, 13, 14, 15, 6, 16, 17, 18, 19, 20, 21, @@ -790,152 +787,146 @@ static yyconst flex_int16_t yy_nxt[1363] = 37, 27, 27, 27, 38, 6, 6, 27, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 27, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 27, 27, 27, 61, 108, 88, 61, 61, 88, - 62, 85, 102, 103, 86, 110, 122, 99, 113, 109, - 114, 362, 100, 116, 123, 111, 117, 124, 112, 363, + 60, 27, 27, 27, 61, 105, 85, 61, 61, 85, + 62, 83, 99, 100, 84, 107, 119, 96, 110, 106, + 111, 355, 97, 113, 120, 108, 114, 121, 109, 356, - 115, 125, 118, 63, 64, 65, 66, 87, 147, 67, - 846, 126, 131, 68, 69, 67, 70, 215, 148, 216, - 71, 72, 73, 119, 74, 75, 132, 76, 77, 101, - 76, 78, 79, 120, 230, 80, 121, 127, 81, 82, - 76, 128, 83, 178, 76, 129, 135, 67, 143, 195, - 136, 130, 138, 139, 230, 107, 166, 179, 144, 167, - 137, 145, 168, 196, 140, 141, 99, 142, 149, 84, - 150, 232, 134, 76, 151, 152, 230, 155, 153, 154, - 156, 159, 180, 157, 230, 160, 158, 169, 161, 162, - 230, 233, 163, 181, 247, 164, 417, 182, 170, 173, + 112, 122, 115, 63, 64, 65, 66, 63, 144, 67, + 832, 123, 128, 68, 69, 67, 70, 212, 145, 213, + 71, 72, 73, 116, 74, 75, 129, 76, 77, 98, + 76, 78, 175, 117, 346, 79, 118, 124, 80, 81, + 132, 125, 82, 140, 133, 126, 176, 67, 135, 136, + 347, 127, 163, 141, 134, 164, 142, 833, 165, 152, + 137, 138, 153, 139, 146, 154, 147, 177, 155, 227, + 148, 149, 156, 76, 150, 151, 157, 166, 178, 158, + 159, 227, 179, 160, 230, 170, 161, 181, 167, 171, + 168, 182, 162, 172, 169, 183, 173, 185, 186, 189, - 171, 165, 192, 174, 172, 184, 193, 175, 101, 185, - 176, 188, 189, 186, 197, 230, 194, 304, 198, 187, - 190, 201, 148, 206, 238, 202, 191, 207, 212, 203, - 208, 199, 123, 88, 204, 205, 88, 209, 213, 210, - 219, 214, 211, 219, 223, 113, 220, 235, 128, 1048, - 225, 226, 129, 88, 225, 226, 227, 115, 130, 1048, - 225, 226, 230, 230, 259, 262, 234, 239, 260, 263, - 353, 125, 229, 225, 226, 228, 286, 287, 228, 230, - 109, 126, 228, 230, 228, 231, 354, 99, 230, 230, - 230, 230, 100, 847, 230, 271, 230, 230, 272, 230, + 192, 184, 104, 190, 194, 96, 187, 144, 195, 227, + 229, 198, 188, 191, 193, 199, 203, 145, 209, 200, + 204, 196, 227, 205, 201, 202, 231, 131, 210, 834, + 206, 211, 207, 216, 220, 208, 216, 227, 125, 217, + 106, 240, 126, 85, 222, 223, 224, 98, 127, 1037, + 222, 223, 1037, 222, 223, 227, 227, 110, 85, 232, + 235, 85, 835, 227, 122, 226, 222, 223, 225, 112, + 233, 225, 234, 114, 123, 225, 227, 225, 228, 115, + 120, 251, 227, 227, 227, 252, 331, 227, 292, 227, + 227, 227, 227, 227, 293, 254, 332, 227, 227, 255, - 230, 230, 289, 236, 230, 290, 117, 230, 230, 230, - 230, 230, 237, 230, 240, 230, 228, 212, 128, 230, - 230, 392, 241, 143, 393, 292, 278, 213, 130, 101, - 214, 242, 243, 144, 293, 300, 145, 412, 230, 343, - 268, 301, 230, 244, 245, 344, 246, 219, 225, 226, - 248, 147, 338, 249, 250, 251, 252, 305, 848, 252, - 306, 148, 339, 252, 252, 252, 252, 359, 307, 313, - 252, 252, 252, 314, 360, 252, 361, 252, 252, 315, - 252, 252, 252, 230, 394, 252, 324, 253, 252, 252, - 252, 128, 252, 395, 252, 241, 340, 252, 325, 326, + 227, 227, 236, 237, 227, 263, 140, 96, 264, 225, + 278, 279, 97, 296, 238, 138, 141, 239, 145, 142, + 216, 222, 223, 241, 281, 284, 242, 282, 297, 333, + 456, 298, 373, 334, 285, 227, 243, 244, 245, 299, + 305, 245, 374, 335, 306, 245, 245, 245, 245, 98, + 307, 227, 245, 245, 245, 336, 316, 245, 270, 245, + 245, 337, 245, 245, 338, 339, 340, 245, 317, 318, + 245, 245, 457, 319, 245, 348, 349, 352, 361, 245, + 387, 362, 350, 375, 353, 385, 354, 376, 386, 388, + 363, 364, 382, 393, 383, 365, 402, 366, 400, 401, - 341, 130, 345, 346, 347, 355, 356, 380, 368, 382, - 342, 369, 357, 383, 400, 407, 408, 381, 230, 252, - 370, 371, 389, 252, 390, 372, 402, 373, 384, 403, - 409, 391, 99, 404, 401, 405, 219, 232, 230, 219, - 281, 410, 220, 88, 225, 226, 227, 1048, 225, 226, - 1048, 225, 226, 230, 230, 230, 230, 413, 230, 230, - 411, 230, 230, 229, 230, 415, 466, 416, 525, 526, - 230, 273, 479, 283, 101, 498, 296, 480, 502, 418, - 466, 543, 414, 499, 281, 219, 225, 226, 248, 419, - 531, 249, 532, 544, 555, 230, 503, 570, 571, 281, + 395, 384, 377, 396, 227, 245, 273, 397, 216, 398, + 227, 216, 85, 394, 217, 224, 1037, 1037, 225, 225, + 225, 96, 225, 225, 227, 405, 229, 403, 260, 227, + 226, 227, 404, 406, 227, 407, 469, 227, 227, 489, + 493, 470, 516, 517, 522, 534, 523, 490, 287, 408, + 546, 288, 227, 409, 561, 562, 547, 535, 494, 227, + 227, 227, 423, 98, 563, 227, 227, 414, 589, 456, + 631, 653, 671, 565, 227, 672, 654, 695, 227, 227, + 590, 567, 227, 632, 696, 699, 749, 760, 566, 804, + 227, 227, 805, 761, 700, 568, 836, 837, 750, 598, - 556, 230, 230, 424, 230, 572, 230, 230, 467, 230, - 230, 601, 433, 574, 578, 579, 642, 682, 575, 664, - 683, 230, 467, 602, 665, 577, 230, 706, 460, 643, - 230, 230, 576, 230, 707, 230, 760, 771, 230, 710, - 230, 711, 580, 772, 815, 712, 230, 816, 761, 849, - 850, 828, 610, 827, 851, 829, 852, 853, 854, 855, - 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, - 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, - 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, - 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, + 817, 816, 838, 839, 840, 841, 842, 843, 844, 845, + 846, 457, 847, 848, 849, 850, 851, 852, 853, 854, + 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, + 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, + 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, + 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, + 895, 896, 897, 898, 899, 900, 901, 902, 227, 227, + 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, + 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, + 923, 924, 925, 926, 927, 928, 929, 840, 930, 931, - 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, - 906, 907, 908, 909, 910, 911, 912, 913, 230, 230, - 230, 915, 916, 917, 918, 919, 848, 920, 921, 922, - 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, - 933, 934, 935, 936, 937, 938, 939, 940, 914, 941, + 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, - 972, 230, 973, 974, 975, 976, 977, 978, 979, 980, - 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, + 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, + 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, + 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, + 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, + 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, + 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, - 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, - 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, - 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, - 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, - 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, - 1041, 1042, 1043, 1044, 1045, 1046, 1047, 91, 91, 91, - 91, 91, 91, 93, 93, 94, 94, 845, 94, 94, - 94, 97, 97, 97, 221, 221, 221, 221, 221, 221, - 228, 228, 228, 228, 255, 255, 844, 255, 255, 255, - 843, 842, 841, 840, 839, 838, 837, 836, 835, 834, + 1032, 1033, 1034, 1035, 1036, 88, 88, 88, 88, 88, + 88, 90, 90, 91, 91, 831, 91, 91, 91, 94, + 94, 94, 218, 218, 218, 218, 218, 218, 225, 225, + 225, 225, 247, 247, 830, 247, 247, 247, 829, 828, + 827, 826, 825, 824, 823, 822, 821, 820, 819, 818, + 815, 814, 813, 812, 811, 810, 809, 808, 807, 806, + 803, 802, 801, 800, 799, 798, 797, 796, 795, 794, + 793, 792, 791, 790, 789, 788, 787, 786, 785, 784, + 783, 782, 781, 780, 779, 778, 777, 776, 775, 774, + 773, 772, 771, 770, 769, 768, 767, 766, 765, 764, - 833, 832, 831, 830, 826, 825, 824, 823, 822, 821, - 820, 819, 818, 817, 814, 813, 812, 811, 810, 809, - 808, 807, 806, 805, 804, 803, 802, 801, 800, 799, - 798, 797, 796, 795, 794, 793, 792, 791, 790, 789, - 788, 787, 786, 785, 784, 783, 782, 781, 780, 779, - 778, 777, 776, 775, 774, 773, 770, 769, 768, 767, - 766, 765, 764, 763, 762, 759, 758, 757, 756, 755, - 754, 753, 752, 751, 750, 749, 748, 747, 746, 745, - 744, 743, 742, 741, 740, 739, 738, 737, 736, 735, - 734, 733, 732, 731, 730, 729, 728, 727, 726, 725, + 763, 762, 759, 758, 757, 756, 755, 754, 753, 752, + 751, 748, 747, 746, 745, 744, 743, 742, 741, 740, + 739, 738, 737, 736, 735, 734, 733, 732, 731, 730, + 729, 728, 727, 726, 725, 724, 723, 722, 721, 720, + 719, 718, 717, 716, 715, 714, 713, 712, 711, 710, + 709, 708, 707, 706, 705, 704, 703, 702, 701, 698, + 561, 697, 694, 693, 692, 691, 690, 689, 688, 687, + 686, 685, 684, 683, 682, 681, 680, 679, 678, 677, + 676, 675, 674, 673, 670, 669, 668, 667, 666, 665, + 664, 663, 662, 661, 660, 659, 658, 657, 656, 655, - 724, 723, 722, 721, 720, 719, 718, 717, 716, 715, - 714, 713, 578, 709, 570, 708, 705, 704, 703, 702, - 701, 700, 699, 698, 697, 696, 695, 694, 693, 692, - 691, 690, 689, 688, 687, 686, 685, 684, 681, 680, - 679, 678, 677, 676, 675, 674, 673, 672, 671, 670, - 669, 668, 667, 666, 663, 662, 661, 660, 659, 658, - 657, 656, 655, 654, 653, 652, 651, 650, 649, 648, - 647, 646, 645, 644, 641, 640, 639, 638, 637, 636, - 635, 634, 633, 632, 631, 630, 629, 628, 627, 626, - 625, 624, 623, 622, 621, 620, 619, 618, 617, 616, + 652, 651, 650, 649, 648, 647, 646, 645, 644, 643, + 642, 641, 640, 639, 638, 637, 636, 635, 634, 633, + 630, 629, 628, 627, 626, 625, 624, 623, 622, 621, + 620, 619, 618, 617, 616, 615, 614, 613, 612, 611, + 610, 609, 608, 607, 606, 605, 604, 603, 602, 601, + 600, 599, 598, 597, 596, 595, 594, 593, 592, 591, + 588, 587, 586, 585, 584, 583, 582, 581, 580, 579, + 578, 577, 576, 575, 574, 573, 572, 571, 570, 569, + 568, 564, 560, 559, 558, 557, 556, 555, 554, 553, + 552, 551, 550, 549, 548, 545, 544, 543, 542, 541, - 615, 614, 613, 612, 611, 610, 609, 608, 607, 606, - 605, 604, 603, 600, 599, 598, 597, 596, 595, 594, - 593, 592, 591, 590, 589, 588, 587, 586, 585, 584, - 583, 582, 581, 580, 573, 569, 568, 567, 566, 565, - 564, 563, 562, 561, 560, 559, 558, 557, 554, 553, - 552, 551, 550, 549, 548, 547, 546, 545, 542, 541, - 540, 539, 538, 537, 536, 535, 534, 533, 530, 529, - 528, 527, 447, 524, 523, 522, 521, 520, 519, 518, - 517, 516, 515, 514, 513, 512, 511, 510, 509, 508, - 507, 506, 505, 504, 501, 500, 497, 496, 495, 494, + 540, 539, 538, 537, 536, 533, 532, 531, 530, 529, + 528, 527, 526, 525, 524, 521, 520, 519, 518, 437, + 515, 514, 513, 512, 511, 510, 509, 508, 507, 506, + 505, 504, 503, 502, 501, 500, 499, 498, 497, 496, + 495, 492, 491, 488, 487, 486, 485, 484, 483, 482, + 481, 480, 479, 478, 477, 476, 475, 474, 473, 472, + 471, 468, 467, 466, 465, 464, 463, 462, 461, 460, + 459, 458, 455, 454, 453, 452, 451, 450, 449, 448, + 447, 446, 445, 444, 443, 442, 441, 440, 439, 438, + 437, 436, 435, 434, 433, 432, 431, 430, 429, 428, - 493, 492, 491, 490, 489, 488, 487, 486, 485, 484, - 483, 482, 481, 478, 477, 476, 475, 474, 473, 472, - 471, 470, 469, 468, 465, 464, 463, 462, 461, 460, - 459, 458, 457, 456, 455, 454, 453, 452, 451, 450, - 449, 448, 447, 446, 445, 444, 443, 442, 441, 440, - 439, 438, 437, 436, 435, 434, 433, 432, 431, 430, - 429, 428, 427, 426, 425, 424, 423, 422, 421, 257, - 420, 420, 250, 230, 230, 225, 222, 222, 406, 399, - 398, 397, 396, 388, 387, 386, 385, 379, 378, 377, - 376, 375, 374, 367, 366, 365, 364, 358, 352, 351, + 427, 426, 425, 424, 423, 422, 421, 420, 419, 418, + 417, 416, 415, 414, 413, 412, 411, 249, 410, 410, + 243, 227, 227, 222, 219, 219, 399, 392, 391, 390, + 389, 381, 380, 379, 378, 372, 371, 370, 369, 368, + 367, 360, 359, 358, 357, 351, 345, 344, 343, 342, + 341, 330, 329, 328, 327, 326, 325, 324, 323, 322, + 321, 320, 315, 314, 313, 312, 311, 310, 309, 308, + 304, 303, 302, 301, 300, 295, 294, 291, 290, 289, + 288, 287, 286, 283, 280, 277, 276, 275, 274, 273, + 272, 271, 270, 269, 268, 267, 266, 265, 262, 261, - 350, 349, 348, 337, 336, 335, 334, 333, 332, 331, - 330, 329, 328, 327, 323, 322, 321, 320, 319, 318, - 317, 316, 312, 311, 310, 309, 308, 303, 302, 299, - 298, 297, 296, 295, 294, 291, 288, 285, 284, 283, - 282, 281, 280, 279, 278, 277, 276, 275, 274, 273, - 270, 269, 268, 267, 266, 265, 264, 261, 258, 257, - 98, 96, 256, 254, 92, 230, 224, 222, 218, 217, - 200, 183, 177, 146, 134, 133, 107, 106, 105, 104, - 98, 96, 95, 92, 90, 89, 1048, 5, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, + 260, 259, 258, 257, 256, 253, 250, 249, 95, 93, + 248, 246, 89, 227, 221, 219, 215, 214, 197, 180, + 174, 143, 131, 130, 104, 103, 102, 101, 95, 93, + 92, 89, 87, 86, 1037, 5, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048 + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037 } ; -static yyconst flex_int16_t yy_chk[1363] = +static yyconst flex_int16_t yy_chk[1311] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -946,147 +937,141 @@ static yyconst flex_int16_t yy_chk[1363] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 22, 7, 2, 4, 7, 2, 4, 17, 17, 4, 23, 28, 16, 24, 22, - 24, 189, 16, 25, 28, 23, 25, 29, 23, 189, + 24, 186, 16, 25, 28, 23, 25, 29, 23, 186, 24, 29, 25, 2, 3, 3, 3, 4, 38, 3, - 734, 29, 31, 3, 3, 3, 3, 58, 38, 58, + 717, 29, 31, 3, 3, 3, 3, 58, 38, 58, 3, 3, 3, 26, 3, 3, 31, 3, 3, 16, - 3, 3, 3, 26, 72, 3, 26, 30, 3, 3, - 3, 30, 3, 46, 3, 30, 34, 3, 36, 52, - 34, 30, 35, 35, 80, 72, 42, 46, 36, 42, - 34, 36, 42, 52, 35, 35, 70, 35, 39, 3, - 39, 70, 80, 3, 39, 39, 71, 40, 39, 39, - 40, 41, 47, 40, 246, 41, 40, 43, 41, 41, - 83, 71, 41, 47, 83, 41, 246, 47, 43, 44, + 3, 3, 46, 26, 182, 3, 26, 30, 3, 3, + 34, 30, 3, 36, 34, 30, 46, 3, 35, 35, + 182, 30, 42, 36, 34, 42, 36, 720, 42, 40, + 35, 35, 40, 35, 39, 40, 39, 47, 40, 71, + 39, 39, 41, 3, 39, 39, 41, 43, 47, 41, + 41, 72, 47, 41, 71, 44, 41, 49, 43, 44, + 43, 49, 41, 44, 43, 49, 44, 50, 50, 51, - 43, 41, 51, 44, 43, 49, 51, 44, 70, 49, - 44, 50, 50, 49, 53, 77, 51, 148, 53, 49, - 50, 55, 148, 56, 77, 55, 50, 56, 57, 55, - 56, 53, 77, 88, 55, 55, 88, 56, 57, 56, - 61, 57, 56, 61, 63, 74, 61, 74, 63, 67, - 67, 67, 63, 66, 66, 66, 66, 74, 63, 68, - 68, 68, 73, 78, 107, 109, 73, 78, 107, 109, - 185, 78, 68, 69, 69, 69, 132, 132, 69, 84, - 73, 78, 69, 69, 69, 69, 185, 100, 75, 69, - 69, 69, 100, 735, 69, 117, 69, 69, 117, 69, + 52, 49, 72, 51, 53, 70, 50, 144, 53, 79, + 70, 55, 50, 51, 52, 55, 56, 144, 57, 55, + 56, 53, 73, 56, 55, 55, 73, 79, 57, 722, + 56, 57, 56, 61, 63, 56, 61, 82, 63, 61, + 73, 82, 63, 66, 66, 66, 66, 70, 63, 67, + 67, 67, 68, 68, 68, 75, 78, 74, 85, 74, + 78, 85, 723, 77, 78, 68, 69, 69, 69, 74, + 75, 69, 77, 75, 78, 69, 69, 69, 69, 75, + 77, 104, 69, 69, 69, 104, 173, 69, 140, 69, + 69, 80, 69, 69, 140, 106, 173, 69, 81, 106, - 69, 69, 134, 75, 69, 134, 75, 69, 69, 69, - 79, 69, 75, 69, 79, 82, 69, 84, 79, 239, - 81, 208, 79, 82, 208, 136, 239, 84, 79, 100, - 84, 81, 81, 82, 136, 143, 82, 235, 69, 178, - 235, 143, 69, 81, 81, 178, 81, 85, 85, 85, - 85, 147, 176, 85, 86, 86, 86, 149, 736, 86, - 149, 147, 176, 86, 86, 86, 86, 188, 149, 155, - 86, 86, 86, 155, 188, 86, 188, 86, 86, 155, - 86, 86, 86, 87, 209, 86, 164, 87, 86, 86, - 86, 87, 86, 209, 86, 87, 177, 86, 164, 164, + 69, 69, 80, 80, 69, 114, 81, 97, 114, 69, + 129, 129, 97, 145, 80, 80, 81, 80, 145, 81, + 83, 83, 83, 83, 131, 133, 83, 131, 146, 174, + 296, 146, 198, 174, 133, 69, 84, 84, 84, 146, + 152, 84, 198, 174, 152, 84, 84, 84, 84, 97, + 152, 235, 84, 84, 84, 175, 161, 84, 235, 84, + 84, 175, 84, 84, 176, 176, 176, 84, 161, 161, + 84, 84, 296, 161, 84, 183, 183, 185, 191, 84, + 206, 191, 183, 199, 185, 205, 185, 199, 205, 206, + 191, 191, 204, 211, 204, 191, 220, 191, 215, 215, - 177, 87, 179, 179, 179, 186, 186, 201, 194, 202, - 177, 194, 186, 202, 214, 218, 218, 201, 233, 86, - 194, 194, 207, 86, 207, 194, 215, 194, 202, 215, - 223, 207, 232, 215, 214, 215, 219, 232, 234, 219, - 223, 233, 219, 227, 227, 227, 227, 228, 228, 228, - 229, 229, 229, 236, 237, 240, 241, 236, 242, 243, - 234, 244, 245, 229, 247, 244, 304, 245, 365, 365, - 253, 237, 318, 241, 232, 337, 243, 318, 340, 247, - 466, 382, 242, 337, 240, 248, 248, 248, 248, 253, - 371, 248, 371, 382, 393, 411, 340, 409, 409, 253, + 212, 204, 199, 212, 230, 84, 220, 212, 216, 212, + 231, 216, 224, 211, 216, 224, 225, 226, 224, 225, + 226, 229, 225, 226, 236, 232, 229, 230, 232, 233, + 226, 238, 231, 233, 237, 238, 310, 239, 240, 330, + 333, 310, 358, 358, 364, 375, 364, 330, 236, 239, + 386, 237, 406, 240, 402, 402, 386, 375, 333, 404, + 403, 407, 406, 229, 403, 408, 409, 404, 439, 456, + 489, 514, 533, 407, 563, 533, 514, 558, 565, 566, + 439, 409, 567, 489, 558, 566, 628, 639, 408, 686, + 699, 700, 686, 639, 567, 563, 724, 725, 628, 565, - 393, 410, 413, 411, 414, 410, 415, 416, 304, 417, - 418, 449, 413, 414, 419, 419, 498, 542, 415, 523, - 542, 572, 466, 449, 523, 418, 419, 567, 416, 498, - 574, 575, 417, 577, 567, 576, 639, 650, 710, 574, - 711, 576, 572, 650, 697, 577, 712, 697, 639, 737, - 739, 711, 575, 710, 740, 712, 741, 742, 745, 746, - 750, 754, 755, 756, 758, 759, 761, 764, 766, 767, - 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, - 778, 780, 781, 783, 784, 785, 786, 787, 788, 789, - 790, 791, 794, 795, 797, 798, 799, 800, 802, 803, + 700, 699, 727, 728, 729, 730, 733, 734, 738, 742, + 743, 456, 744, 745, 747, 748, 750, 753, 755, 756, + 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, + 767, 769, 770, 772, 773, 774, 775, 776, 777, 778, + 779, 780, 783, 784, 786, 787, 788, 789, 791, 792, + 793, 794, 795, 796, 797, 799, 800, 801, 804, 805, + 807, 808, 809, 810, 811, 812, 813, 814, 816, 817, + 818, 819, 821, 822, 823, 824, 825, 826, 827, 829, + 831, 832, 833, 834, 835, 838, 841, 844, 845, 846, + 847, 848, 851, 852, 854, 855, 856, 817, 858, 859, - 804, 805, 806, 807, 808, 810, 811, 812, 815, 816, - 818, 819, 820, 821, 822, 823, 824, 825, 827, 828, - 829, 830, 831, 833, 834, 835, 827, 836, 837, 838, - 839, 841, 843, 844, 845, 846, 847, 850, 853, 856, - 857, 858, 859, 862, 863, 865, 866, 867, 829, 869, - 870, 871, 872, 874, 875, 876, 877, 879, 880, 881, - 882, 883, 888, 889, 890, 891, 892, 893, 894, 896, - 899, 901, 902, 903, 904, 905, 909, 910, 911, 912, - 913, 914, 915, 917, 918, 924, 925, 926, 927, 928, - 930, 932, 933, 934, 936, 938, 940, 941, 942, 943, + 860, 861, 863, 864, 865, 866, 868, 869, 870, 871, + 872, 877, 878, 879, 880, 881, 882, 883, 885, 888, + 890, 891, 892, 893, 894, 898, 899, 900, 901, 902, + 903, 905, 906, 912, 913, 914, 915, 916, 918, 920, + 921, 922, 925, 927, 929, 930, 931, 932, 933, 934, + 935, 936, 937, 938, 939, 942, 943, 944, 945, 947, + 950, 952, 953, 954, 955, 960, 963, 965, 966, 967, + 968, 969, 970, 973, 974, 978, 980, 988, 989, 993, + 995, 1000, 1001, 1002, 1003, 1004, 1009, 1012, 1013, 1014, + 1015, 1016, 1017, 1018, 1019, 1022, 1023, 1024, 1027, 1028, - 944, 945, 946, 947, 948, 949, 950, 953, 954, 955, - 956, 958, 961, 963, 964, 965, 966, 971, 974, 976, - 977, 978, 979, 980, 981, 984, 985, 989, 991, 999, - 1000, 1004, 1006, 1011, 1012, 1013, 1014, 1015, 1020, 1023, - 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1033, 1034, 1035, - 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1049, 1049, 1049, - 1049, 1049, 1049, 1050, 1050, 1051, 1051, 732, 1051, 1051, - 1051, 1052, 1052, 1052, 1053, 1053, 1053, 1053, 1053, 1053, - 1054, 1054, 1054, 1054, 1055, 1055, 729, 1055, 1055, 1055, - 728, 727, 726, 725, 724, 722, 721, 720, 719, 718, + 1029, 1030, 1031, 1032, 1033, 1038, 1038, 1038, 1038, 1038, + 1038, 1039, 1039, 1040, 1040, 716, 1040, 1040, 1040, 1041, + 1041, 1041, 1042, 1042, 1042, 1042, 1042, 1042, 1043, 1043, + 1043, 1043, 1044, 1044, 715, 1044, 1044, 1044, 714, 713, + 712, 710, 709, 708, 707, 706, 705, 704, 703, 702, + 698, 697, 695, 694, 693, 692, 691, 690, 689, 688, + 685, 684, 683, 682, 681, 680, 679, 677, 675, 674, + 673, 672, 671, 670, 669, 668, 667, 666, 665, 664, + 662, 661, 660, 659, 658, 657, 656, 654, 653, 652, + 651, 650, 649, 648, 647, 646, 645, 644, 643, 642, - 717, 716, 715, 714, 709, 708, 706, 705, 704, 703, - 702, 701, 700, 699, 696, 695, 694, 693, 692, 691, - 690, 688, 686, 685, 684, 683, 682, 681, 680, 679, - 678, 677, 676, 675, 673, 672, 671, 670, 669, 668, - 667, 665, 664, 663, 662, 661, 660, 659, 658, 657, - 656, 655, 654, 653, 652, 651, 649, 648, 647, 646, - 645, 644, 643, 642, 641, 638, 637, 636, 635, 634, - 633, 632, 631, 629, 628, 627, 626, 625, 623, 622, - 620, 619, 618, 615, 614, 613, 612, 611, 609, 608, - 607, 606, 605, 604, 603, 602, 601, 599, 598, 597, + 641, 640, 638, 637, 636, 635, 634, 633, 632, 631, + 630, 627, 626, 625, 624, 623, 622, 621, 620, 619, + 617, 616, 615, 614, 613, 611, 610, 608, 607, 606, + 603, 602, 601, 600, 599, 597, 596, 595, 594, 593, + 592, 591, 590, 589, 587, 586, 585, 584, 582, 581, + 579, 578, 577, 575, 574, 573, 572, 571, 569, 564, + 562, 559, 557, 556, 555, 553, 552, 551, 550, 549, + 548, 547, 546, 545, 544, 543, 542, 541, 540, 539, + 538, 537, 536, 534, 532, 531, 530, 529, 528, 526, + 525, 524, 522, 521, 520, 519, 518, 517, 516, 515, - 596, 594, 593, 591, 590, 589, 587, 586, 585, 584, - 583, 581, 579, 573, 571, 568, 566, 565, 564, 562, - 561, 560, 559, 558, 557, 556, 555, 554, 553, 552, - 551, 550, 549, 548, 547, 546, 545, 543, 541, 540, - 539, 538, 537, 535, 534, 533, 531, 530, 529, 528, - 527, 526, 525, 524, 521, 520, 519, 518, 516, 515, - 513, 512, 511, 510, 509, 508, 507, 506, 504, 503, - 502, 501, 500, 499, 497, 496, 495, 494, 493, 489, - 488, 487, 486, 485, 484, 483, 482, 481, 479, 478, - 477, 476, 475, 474, 473, 472, 471, 470, 469, 468, + 512, 511, 510, 509, 507, 506, 504, 503, 502, 501, + 500, 499, 498, 497, 495, 494, 493, 492, 491, 490, + 488, 487, 486, 485, 484, 480, 479, 478, 477, 476, + 475, 474, 473, 472, 471, 469, 468, 467, 466, 465, + 464, 463, 462, 461, 460, 459, 458, 455, 453, 452, + 451, 450, 449, 447, 446, 445, 444, 443, 442, 440, + 438, 436, 435, 434, 433, 431, 430, 429, 428, 426, + 425, 424, 423, 421, 419, 417, 416, 415, 413, 412, + 411, 405, 400, 399, 398, 397, 396, 395, 394, 393, + 391, 390, 389, 388, 387, 385, 384, 383, 382, 381, - 465, 463, 462, 461, 460, 459, 457, 456, 455, 454, - 453, 452, 450, 448, 446, 445, 444, 443, 441, 440, - 439, 438, 436, 435, 434, 433, 431, 429, 427, 426, - 425, 423, 422, 421, 412, 407, 406, 405, 404, 403, - 402, 401, 400, 398, 397, 396, 395, 394, 392, 391, - 390, 389, 388, 387, 386, 385, 384, 383, 381, 380, - 379, 378, 377, 376, 375, 374, 373, 372, 370, 369, - 368, 367, 366, 364, 363, 362, 361, 360, 359, 358, - 356, 355, 354, 353, 351, 350, 349, 348, 346, 345, - 344, 343, 342, 341, 339, 338, 336, 335, 334, 333, - - 332, 331, 330, 328, 327, 326, 325, 324, 323, 322, - 321, 320, 319, 317, 316, 315, 314, 313, 312, 311, - 310, 309, 307, 305, 303, 302, 301, 300, 299, 298, - 297, 296, 295, 294, 293, 292, 291, 290, 289, 288, + 380, 379, 378, 377, 376, 374, 373, 372, 371, 370, + 369, 368, 367, 366, 365, 363, 362, 361, 360, 359, + 357, 356, 355, 354, 353, 352, 351, 349, 348, 347, + 346, 344, 343, 342, 341, 339, 338, 337, 336, 335, + 334, 332, 331, 329, 328, 327, 326, 325, 324, 323, + 321, 320, 319, 318, 317, 316, 315, 314, 313, 312, + 311, 309, 308, 307, 306, 305, 304, 303, 302, 301, + 299, 297, 295, 294, 293, 292, 291, 290, 289, 288, 287, 286, 285, 284, 283, 282, 281, 280, 279, 278, - 277, 276, 275, 274, 273, 272, 270, 269, 268, 267, - 266, 265, 264, 263, 262, 261, 260, 259, 258, 257, - 256, 255, 251, 238, 230, 226, 221, 220, 217, 213, - 212, 211, 210, 206, 205, 204, 203, 200, 199, 198, - 197, 196, 195, 193, 192, 191, 190, 187, 184, 183, + 277, 276, 275, 274, 273, 272, 271, 270, 269, 268, - 182, 181, 180, 175, 174, 173, 172, 171, 170, 169, - 168, 167, 166, 165, 163, 162, 161, 160, 159, 158, - 157, 156, 154, 153, 152, 151, 150, 146, 145, 142, - 141, 140, 139, 138, 137, 135, 133, 131, 130, 129, - 128, 127, 126, 125, 124, 123, 121, 120, 119, 118, - 116, 115, 114, 113, 112, 111, 110, 108, 106, 101, - 98, 96, 95, 94, 91, 76, 65, 62, 60, 59, - 54, 48, 45, 37, 33, 32, 21, 20, 19, 18, - 15, 14, 13, 11, 10, 9, 5, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, + 267, 266, 265, 264, 262, 261, 260, 259, 258, 257, + 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, + 244, 234, 227, 223, 218, 217, 214, 210, 209, 208, + 207, 203, 202, 201, 200, 197, 196, 195, 194, 193, + 192, 190, 189, 188, 187, 184, 181, 180, 179, 178, + 177, 172, 171, 170, 169, 168, 167, 166, 165, 164, + 163, 162, 160, 159, 158, 157, 156, 155, 154, 153, + 151, 150, 149, 148, 147, 143, 142, 139, 138, 137, + 136, 135, 134, 132, 130, 128, 127, 126, 125, 124, + 123, 122, 121, 120, 118, 117, 116, 115, 113, 112, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, - 1048, 1048 + 111, 110, 109, 108, 107, 105, 103, 98, 95, 93, + 92, 91, 88, 76, 65, 62, 60, 59, 54, 48, + 45, 37, 33, 32, 21, 20, 19, 18, 15, 14, + 13, 11, 10, 9, 5, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, + + 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037 } ; static yy_state_type yy_last_accepting_state; @@ -1105,7 +1090,7 @@ int yy_flex_debug = 0; char *yytext; #line 1 "lev_comp.l" #line 2 "lev_comp.l" -/* NetHack 3.5 lev_comp.l $NHDT-Date$ $NHDT-Branch$:$NHDT-Revision$ */ +/* NetHack 3.5 lev_comp.l $NHDT-Date: 1428240296 2015/04/05 13:24:56 $ $NHDT-Branch: master $:$NHDT-Revision: 1.13 $ */ /* NetHack 3.5 lev_comp.l $Date: 2009/05/06 10:54:31 $ $Revision: 1.9 $ */ /* SCCS Id: @(#)lev_lex.c 3.5 2002/03/27 */ /* Copyright (c) 1989 by Jean-Christophe Collet */ @@ -1204,7 +1189,7 @@ FILE *orig_yyin = NULL; #define ST_RETF(y, x) do { savetoken(yytext); y; return x; } while (0); -#line 1207 "lex.yy.c" +#line 1193 "lex.yy.c" #define INITIAL 0 #define MAPC 1 @@ -1422,9 +1407,9 @@ YY_DECL } { -#line 104 "lev_comp.l" +#line 105 "lev_comp.l" -#line 1427 "lex.yy.c" +#line 1413 "lex.yy.c" while ( 1 ) /* loops until end-of-file is reached */ { @@ -1452,13 +1437,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 >= 1049 ) + if ( yy_current_state >= 1038 ) 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] != 1288 ); + while ( yy_base[yy_current_state] != 1236 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1484,7 +1469,7 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 105 "lev_comp.l" +#line 106 "lev_comp.l" { savetoken(yytext); BEGIN(INITIAL); @@ -1498,7 +1483,7 @@ YY_RULE_SETUP case 2: /* rule 2 can match eol */ YY_RULE_SETUP -#line 114 "lev_comp.l" +#line 115 "lev_comp.l" { int len = yyleng; savetoken(yytext); @@ -1514,873 +1499,878 @@ YY_RULE_SETUP case 3: /* rule 3 can match eol */ YY_RULE_SETUP -#line 125 "lev_comp.l" +#line 126 "lev_comp.l" { savetoken(yytext); newline(); } YY_BREAK case 4: YY_RULE_SETUP -#line 126 "lev_comp.l" +#line 127 "lev_comp.l" ST_RET(MESSAGE_ID); YY_BREAK case 5: YY_RULE_SETUP -#line 127 "lev_comp.l" +#line 128 "lev_comp.l" ST_RET(NOMAP_ID); YY_BREAK case 6: YY_RULE_SETUP -#line 128 "lev_comp.l" +#line 129 "lev_comp.l" ST_RET(MAZE_ID); YY_BREAK case 7: YY_RULE_SETUP -#line 129 "lev_comp.l" +#line 130 "lev_comp.l" ST_RET(LEVEL_ID); YY_BREAK case 8: YY_RULE_SETUP -#line 130 "lev_comp.l" +#line 131 "lev_comp.l" ST_RET(LEV_INIT_ID); YY_BREAK case 9: YY_RULE_SETUP -#line 131 "lev_comp.l" +#line 132 "lev_comp.l" ST_RET(MAZE_GRID_ID); YY_BREAK case 10: YY_RULE_SETUP -#line 132 "lev_comp.l" +#line 133 "lev_comp.l" ST_RET(SOLID_FILL_ID); YY_BREAK case 11: YY_RULE_SETUP -#line 133 "lev_comp.l" +#line 134 "lev_comp.l" ST_RET(MINES_ID); YY_BREAK case 12: YY_RULE_SETUP -#line 134 "lev_comp.l" +#line 135 "lev_comp.l" ST_RET(ROGUELEV_ID); YY_BREAK case 13: YY_RULE_SETUP -#line 135 "lev_comp.l" +#line 136 "lev_comp.l" ST_RET(FLAGS_ID); YY_BREAK case 14: YY_RULE_SETUP -#line 136 "lev_comp.l" +#line 137 "lev_comp.l" ST_RET(GEOMETRY_ID); YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -#line 137 "lev_comp.l" +#line 138 "lev_comp.l" { savetoken(yytext); BEGIN(MAPC); newline(); } YY_BREAK case 16: YY_RULE_SETUP -#line 138 "lev_comp.l" +#line 139 "lev_comp.l" ST_RET(object_ID); YY_BREAK case 17: YY_RULE_SETUP -#line 139 "lev_comp.l" +#line 140 "lev_comp.l" ST_RET(OBJECT_ID); YY_BREAK case 18: YY_RULE_SETUP -#line 140 "lev_comp.l" +#line 141 "lev_comp.l" ST_RET(COBJECT_ID); YY_BREAK case 19: YY_RULE_SETUP -#line 141 "lev_comp.l" +#line 142 "lev_comp.l" ST_RET(MONSTER_ID); YY_BREAK case 20: YY_RULE_SETUP -#line 142 "lev_comp.l" +#line 143 "lev_comp.l" ST_RET(monster_ID); YY_BREAK case 21: YY_RULE_SETUP -#line 143 "lev_comp.l" +#line 144 "lev_comp.l" ST_RET(TRAP_ID); YY_BREAK case 22: YY_RULE_SETUP -#line 144 "lev_comp.l" +#line 145 "lev_comp.l" ST_RET(DOOR_ID); YY_BREAK case 23: YY_RULE_SETUP -#line 145 "lev_comp.l" +#line 146 "lev_comp.l" ST_RET(ROOMDOOR_ID); YY_BREAK case 24: YY_RULE_SETUP -#line 146 "lev_comp.l" +#line 147 "lev_comp.l" ST_RET(DRAWBRIDGE_ID); YY_BREAK case 25: YY_RULE_SETUP -#line 147 "lev_comp.l" +#line 148 "lev_comp.l" ST_RET(MAZEWALK_ID); YY_BREAK case 26: YY_RULE_SETUP -#line 148 "lev_comp.l" +#line 149 "lev_comp.l" ST_RET(WALLIFY_ID); YY_BREAK case 27: YY_RULE_SETUP -#line 149 "lev_comp.l" +#line 150 "lev_comp.l" ST_RET(REGION_ID); YY_BREAK case 28: YY_RULE_SETUP -#line 150 "lev_comp.l" +#line 151 "lev_comp.l" ST_RET(ALTAR_ID); YY_BREAK case 29: YY_RULE_SETUP -#line 151 "lev_comp.l" +#line 152 "lev_comp.l" ST_RET(LADDER_ID); YY_BREAK case 30: YY_RULE_SETUP -#line 152 "lev_comp.l" +#line 153 "lev_comp.l" ST_RET(STAIR_ID); YY_BREAK case 31: YY_RULE_SETUP -#line 153 "lev_comp.l" +#line 154 "lev_comp.l" ST_RET(PORTAL_ID); YY_BREAK case 32: YY_RULE_SETUP -#line 154 "lev_comp.l" +#line 155 "lev_comp.l" ST_RET(TELEPRT_ID); YY_BREAK case 33: YY_RULE_SETUP -#line 155 "lev_comp.l" +#line 156 "lev_comp.l" ST_RET(BRANCH_ID); YY_BREAK case 34: YY_RULE_SETUP -#line 156 "lev_comp.l" +#line 157 "lev_comp.l" ST_RET(FOUNTAIN_ID); YY_BREAK case 35: YY_RULE_SETUP -#line 157 "lev_comp.l" +#line 158 "lev_comp.l" ST_RET(SINK_ID); YY_BREAK case 36: YY_RULE_SETUP -#line 158 "lev_comp.l" +#line 159 "lev_comp.l" ST_RET(POOL_ID); YY_BREAK case 37: YY_RULE_SETUP -#line 159 "lev_comp.l" +#line 160 "lev_comp.l" ST_RET(NON_DIGGABLE_ID); YY_BREAK case 38: YY_RULE_SETUP -#line 160 "lev_comp.l" +#line 161 "lev_comp.l" ST_RET(NON_PASSWALL_ID); YY_BREAK case 39: YY_RULE_SETUP -#line 161 "lev_comp.l" +#line 162 "lev_comp.l" ST_RET(IF_ID); YY_BREAK case 40: YY_RULE_SETUP -#line 162 "lev_comp.l" +#line 163 "lev_comp.l" ST_RET(ELSE_ID); YY_BREAK case 41: YY_RULE_SETUP -#line 163 "lev_comp.l" +#line 164 "lev_comp.l" ST_RET(EXIT_ID); YY_BREAK case 42: YY_RULE_SETUP -#line 164 "lev_comp.l" +#line 165 "lev_comp.l" ST_RET(ROOM_ID); YY_BREAK case 43: YY_RULE_SETUP -#line 165 "lev_comp.l" +#line 166 "lev_comp.l" ST_RET(SUBROOM_ID); YY_BREAK case 44: YY_RULE_SETUP -#line 166 "lev_comp.l" +#line 167 "lev_comp.l" ST_RET(RAND_CORRIDOR_ID); YY_BREAK case 45: YY_RULE_SETUP -#line 167 "lev_comp.l" +#line 168 "lev_comp.l" ST_RET(CORRIDOR_ID); YY_BREAK case 46: YY_RULE_SETUP -#line 168 "lev_comp.l" +#line 169 "lev_comp.l" ST_RET(TERRAIN_ID); YY_BREAK case 47: YY_RULE_SETUP -#line 169 "lev_comp.l" +#line 170 "lev_comp.l" ST_RET(terrain_ID); YY_BREAK case 48: YY_RULE_SETUP -#line 170 "lev_comp.l" +#line 171 "lev_comp.l" ST_RET(REPLACE_TERRAIN_ID); YY_BREAK case 49: YY_RULE_SETUP -#line 171 "lev_comp.l" +#line 172 "lev_comp.l" ST_RET(GOLD_ID); YY_BREAK case 50: YY_RULE_SETUP -#line 172 "lev_comp.l" +#line 173 "lev_comp.l" ST_RET(GRAVE_ID); YY_BREAK case 51: YY_RULE_SETUP -#line 173 "lev_comp.l" +#line 174 "lev_comp.l" ST_RET(ENGRAVING_ID); YY_BREAK case 52: YY_RULE_SETUP -#line 174 "lev_comp.l" +#line 175 "lev_comp.l" ST_RET(MINERALIZE_ID); YY_BREAK case 53: YY_RULE_SETUP -#line 175 "lev_comp.l" +#line 176 "lev_comp.l" ST_RET(NAME_ID); YY_BREAK case 54: YY_RULE_SETUP -#line 176 "lev_comp.l" +#line 177 "lev_comp.l" ST_RET(FOR_ID); YY_BREAK case 55: YY_RULE_SETUP -#line 177 "lev_comp.l" +#line 178 "lev_comp.l" ST_RET(TO_ID); YY_BREAK case 56: YY_RULE_SETUP -#line 178 "lev_comp.l" +#line 179 "lev_comp.l" ST_RET(LOOP_ID); YY_BREAK case 57: YY_RULE_SETUP -#line 179 "lev_comp.l" +#line 180 "lev_comp.l" ST_RET(SWITCH_ID); YY_BREAK case 58: YY_RULE_SETUP -#line 180 "lev_comp.l" +#line 181 "lev_comp.l" ST_RET(CASE_ID); YY_BREAK case 59: YY_RULE_SETUP -#line 181 "lev_comp.l" +#line 182 "lev_comp.l" ST_RET(BREAK_ID); YY_BREAK case 60: YY_RULE_SETUP -#line 182 "lev_comp.l" +#line 183 "lev_comp.l" ST_RET(DEFAULT_ID); YY_BREAK case 61: YY_RULE_SETUP -#line 183 "lev_comp.l" +#line 184 "lev_comp.l" ST_RET(FUNCTION_ID); YY_BREAK case 62: YY_RULE_SETUP -#line 184 "lev_comp.l" +#line 185 "lev_comp.l" ST_RET(SHUFFLE_ID); YY_BREAK case 63: YY_RULE_SETUP -#line 185 "lev_comp.l" +#line 186 "lev_comp.l" ST_RET(MONTYPE_ID); YY_BREAK case 64: YY_RULE_SETUP -#line 186 "lev_comp.l" +#line 187 "lev_comp.l" ST_RET(selection_ID); YY_BREAK case 65: YY_RULE_SETUP -#line 187 "lev_comp.l" +#line 188 "lev_comp.l" ST_RET(rect_ID); YY_BREAK case 66: YY_RULE_SETUP -#line 188 "lev_comp.l" +#line 189 "lev_comp.l" ST_RET(fillrect_ID); YY_BREAK case 67: YY_RULE_SETUP -#line 189 "lev_comp.l" +#line 190 "lev_comp.l" ST_RET(line_ID); YY_BREAK case 68: YY_RULE_SETUP -#line 190 "lev_comp.l" +#line 191 "lev_comp.l" ST_RET(randline_ID); YY_BREAK case 69: YY_RULE_SETUP -#line 191 "lev_comp.l" +#line 192 "lev_comp.l" ST_RET(grow_ID); YY_BREAK case 70: YY_RULE_SETUP -#line 192 "lev_comp.l" +#line 193 "lev_comp.l" ST_RET(flood_ID); YY_BREAK case 71: YY_RULE_SETUP -#line 193 "lev_comp.l" +#line 194 "lev_comp.l" ST_RET(rndcoord_ID); YY_BREAK case 72: YY_RULE_SETUP -#line 194 "lev_comp.l" +#line 195 "lev_comp.l" ST_RET(circle_ID); YY_BREAK case 73: YY_RULE_SETUP -#line 195 "lev_comp.l" +#line 196 "lev_comp.l" ST_RET(ellipse_ID); YY_BREAK case 74: YY_RULE_SETUP -#line 196 "lev_comp.l" +#line 197 "lev_comp.l" ST_RET(filter_ID); YY_BREAK case 75: YY_RULE_SETUP -#line 197 "lev_comp.l" +#line 198 "lev_comp.l" ST_RET(gradient_ID); YY_BREAK case 76: YY_RULE_SETUP -#line 198 "lev_comp.l" +#line 199 "lev_comp.l" ST_RET(complement_ID); YY_BREAK case 77: YY_RULE_SETUP -#line 199 "lev_comp.l" +#line 200 "lev_comp.l" { savetoken(yytext); yylval.i=SEL_GRADIENT_RADIAL; return GRADIENT_TYPE; } YY_BREAK case 78: YY_RULE_SETUP -#line 200 "lev_comp.l" +#line 201 "lev_comp.l" { savetoken(yytext); yylval.i=SEL_GRADIENT_SQUARE; return GRADIENT_TYPE; } YY_BREAK case 79: YY_RULE_SETUP -#line 201 "lev_comp.l" +#line 202 "lev_comp.l" { savetoken(yytext); yylval.i=DRY; return HUMIDITY_TYPE; } YY_BREAK case 80: YY_RULE_SETUP -#line 202 "lev_comp.l" +#line 203 "lev_comp.l" { savetoken(yytext); yylval.i=WET; return HUMIDITY_TYPE; } YY_BREAK case 81: YY_RULE_SETUP -#line 203 "lev_comp.l" +#line 204 "lev_comp.l" { savetoken(yytext); yylval.i=HOT; return HUMIDITY_TYPE; } YY_BREAK case 82: YY_RULE_SETUP -#line 204 "lev_comp.l" +#line 205 "lev_comp.l" { savetoken(yytext); yylval.i=SOLID; return HUMIDITY_TYPE; } YY_BREAK case 83: YY_RULE_SETUP -#line 205 "lev_comp.l" +#line 206 "lev_comp.l" { savetoken(yytext); yylval.i=ANY_LOC; return HUMIDITY_TYPE; } YY_BREAK case 84: YY_RULE_SETUP -#line 206 "lev_comp.l" +#line 207 "lev_comp.l" ST_RET(LEV); YY_BREAK case 85: YY_RULE_SETUP -#line 207 "lev_comp.l" +#line 208 "lev_comp.l" ST_RET(QUANTITY_ID); YY_BREAK case 86: YY_RULE_SETUP -#line 208 "lev_comp.l" +#line 209 "lev_comp.l" ST_RET(BURIED_ID); YY_BREAK case 87: YY_RULE_SETUP -#line 209 "lev_comp.l" +#line 210 "lev_comp.l" ST_RET(ERODED_ID); YY_BREAK case 88: YY_RULE_SETUP -#line 210 "lev_comp.l" +#line 211 "lev_comp.l" ST_RET(ERODEPROOF_ID); YY_BREAK case 89: YY_RULE_SETUP -#line 211 "lev_comp.l" +#line 212 "lev_comp.l" ST_RET(TRAPPED_ID); YY_BREAK case 90: YY_RULE_SETUP -#line 212 "lev_comp.l" +#line 213 "lev_comp.l" ST_RET(RECHARGED_ID); YY_BREAK case 91: YY_RULE_SETUP -#line 213 "lev_comp.l" +#line 214 "lev_comp.l" ST_RET(INVIS_ID); YY_BREAK case 92: YY_RULE_SETUP -#line 214 "lev_comp.l" +#line 215 "lev_comp.l" ST_RET(GREASED_ID); YY_BREAK case 93: YY_RULE_SETUP -#line 215 "lev_comp.l" +#line 216 "lev_comp.l" ST_RET(FEMALE_ID); YY_BREAK case 94: YY_RULE_SETUP -#line 216 "lev_comp.l" +#line 217 "lev_comp.l" ST_RET(CANCELLED_ID); YY_BREAK case 95: YY_RULE_SETUP -#line 217 "lev_comp.l" +#line 218 "lev_comp.l" ST_RET(REVIVED_ID); YY_BREAK case 96: YY_RULE_SETUP -#line 218 "lev_comp.l" +#line 219 "lev_comp.l" ST_RET(AVENGE_ID); YY_BREAK case 97: YY_RULE_SETUP -#line 219 "lev_comp.l" +#line 220 "lev_comp.l" ST_RET(FLEEING_ID); YY_BREAK case 98: YY_RULE_SETUP -#line 220 "lev_comp.l" +#line 221 "lev_comp.l" ST_RET(BLINDED_ID); YY_BREAK case 99: YY_RULE_SETUP -#line 221 "lev_comp.l" +#line 222 "lev_comp.l" ST_RET(PARALYZED_ID); YY_BREAK case 100: YY_RULE_SETUP -#line 222 "lev_comp.l" +#line 223 "lev_comp.l" ST_RET(STUNNED_ID); YY_BREAK case 101: YY_RULE_SETUP -#line 223 "lev_comp.l" +#line 224 "lev_comp.l" ST_RET(CONFUSED_ID); YY_BREAK case 102: YY_RULE_SETUP -#line 224 "lev_comp.l" +#line 225 "lev_comp.l" ST_RET(SEENTRAPS_ID); YY_BREAK case 103: YY_RULE_SETUP -#line 225 "lev_comp.l" +#line 226 "lev_comp.l" ST_RET(ALL_ID); YY_BREAK case 104: YY_RULE_SETUP -#line 226 "lev_comp.l" +#line 227 "lev_comp.l" ST_RETF((yylval.i=1), HORIZ_OR_VERT); YY_BREAK case 105: YY_RULE_SETUP -#line 227 "lev_comp.l" +#line 228 "lev_comp.l" { savetoken(yytext); yylval.i=2; return HORIZ_OR_VERT; } YY_BREAK case 106: YY_RULE_SETUP -#line 228 "lev_comp.l" +#line 229 "lev_comp.l" { savetoken(yytext); yylval.i=D_ISOPEN; return DOOR_STATE; } YY_BREAK case 107: YY_RULE_SETUP -#line 229 "lev_comp.l" +#line 230 "lev_comp.l" { savetoken(yytext); yylval.i=D_CLOSED; return DOOR_STATE; } YY_BREAK case 108: YY_RULE_SETUP -#line 230 "lev_comp.l" +#line 231 "lev_comp.l" { savetoken(yytext); yylval.i=D_LOCKED; return DOOR_STATE; } YY_BREAK case 109: YY_RULE_SETUP -#line 231 "lev_comp.l" +#line 232 "lev_comp.l" { savetoken(yytext); yylval.i=D_NODOOR; return DOOR_STATE; } YY_BREAK case 110: YY_RULE_SETUP -#line 232 "lev_comp.l" +#line 233 "lev_comp.l" { savetoken(yytext); yylval.i=D_BROKEN; return DOOR_STATE; } YY_BREAK case 111: YY_RULE_SETUP -#line 233 "lev_comp.l" +#line 234 "lev_comp.l" { savetoken(yytext); yylval.i=D_SECRET; return DOOR_STATE; } YY_BREAK case 112: YY_RULE_SETUP -#line 234 "lev_comp.l" +#line 235 "lev_comp.l" { savetoken(yytext); yylval.i=W_NORTH; return DIRECTION; } YY_BREAK case 113: YY_RULE_SETUP -#line 235 "lev_comp.l" +#line 236 "lev_comp.l" { savetoken(yytext); yylval.i=W_EAST; return DIRECTION; } YY_BREAK case 114: YY_RULE_SETUP -#line 236 "lev_comp.l" +#line 237 "lev_comp.l" { savetoken(yytext); yylval.i=W_SOUTH; return DIRECTION; } YY_BREAK case 115: YY_RULE_SETUP -#line 237 "lev_comp.l" +#line 238 "lev_comp.l" { savetoken(yytext); yylval.i=W_WEST; return DIRECTION; } YY_BREAK case 116: YY_RULE_SETUP -#line 238 "lev_comp.l" +#line 239 "lev_comp.l" { savetoken(yytext); yylval.i = -1; return RANDOM_TYPE; } YY_BREAK case 117: YY_RULE_SETUP -#line 239 "lev_comp.l" +#line 240 "lev_comp.l" { savetoken(yytext); yylval.i = -1; return RANDOM_TYPE_BRACKET; } YY_BREAK case 118: YY_RULE_SETUP -#line 240 "lev_comp.l" +#line 241 "lev_comp.l" { savetoken(yytext); yylval.i = -2; return NONE; } YY_BREAK case 119: YY_RULE_SETUP -#line 241 "lev_comp.l" +#line 242 "lev_comp.l" ST_RET(A_REGISTER); YY_BREAK case 120: YY_RULE_SETUP -#line 242 "lev_comp.l" +#line 243 "lev_comp.l" { savetoken(yytext); yylval.i=1; return LEFT_OR_RIGHT; } YY_BREAK case 121: YY_RULE_SETUP -#line 243 "lev_comp.l" +#line 244 "lev_comp.l" { savetoken(yytext); yylval.i=2; return LEFT_OR_RIGHT; } YY_BREAK case 122: YY_RULE_SETUP -#line 244 "lev_comp.l" +#line 245 "lev_comp.l" { savetoken(yytext); yylval.i=3; return CENTER; } YY_BREAK case 123: YY_RULE_SETUP -#line 245 "lev_comp.l" +#line 246 "lev_comp.l" { savetoken(yytext); yylval.i=4; return LEFT_OR_RIGHT; } YY_BREAK case 124: YY_RULE_SETUP -#line 246 "lev_comp.l" +#line 247 "lev_comp.l" { savetoken(yytext); yylval.i=5; return LEFT_OR_RIGHT; } YY_BREAK case 125: YY_RULE_SETUP -#line 247 "lev_comp.l" +#line 248 "lev_comp.l" { savetoken(yytext); yylval.i=1; return TOP_OR_BOT; } YY_BREAK case 126: YY_RULE_SETUP -#line 248 "lev_comp.l" +#line 249 "lev_comp.l" { savetoken(yytext); yylval.i=5; return TOP_OR_BOT; } YY_BREAK case 127: YY_RULE_SETUP -#line 249 "lev_comp.l" +#line 250 "lev_comp.l" { savetoken(yytext); yylval.i=1; return LIGHT_STATE; } YY_BREAK case 128: YY_RULE_SETUP -#line 250 "lev_comp.l" +#line 251 "lev_comp.l" { savetoken(yytext); yylval.i=0; return LIGHT_STATE; } YY_BREAK case 129: YY_RULE_SETUP -#line 251 "lev_comp.l" +#line 252 "lev_comp.l" { savetoken(yytext); yylval.i=1; return FILLING; } YY_BREAK case 130: YY_RULE_SETUP -#line 252 "lev_comp.l" +#line 253 "lev_comp.l" { savetoken(yytext); yylval.i=0; return FILLING; } YY_BREAK case 131: YY_RULE_SETUP -#line 253 "lev_comp.l" +#line 254 "lev_comp.l" { savetoken(yytext); yylval.i=0; return IRREGULAR; } YY_BREAK case 132: YY_RULE_SETUP -#line 254 "lev_comp.l" +#line 255 "lev_comp.l" { savetoken(yytext); yylval.i=1; return IRREGULAR; } YY_BREAK case 133: YY_RULE_SETUP -#line 255 "lev_comp.l" +#line 256 "lev_comp.l" { savetoken(yytext); yylval.i=1; return JOINED; } YY_BREAK case 134: YY_RULE_SETUP -#line 256 "lev_comp.l" +#line 257 "lev_comp.l" { savetoken(yytext); yylval.i=0; return JOINED; } YY_BREAK case 135: YY_RULE_SETUP -#line 257 "lev_comp.l" +#line 258 "lev_comp.l" { savetoken(yytext); yylval.i=1; return LIMITED; } YY_BREAK case 136: YY_RULE_SETUP -#line 258 "lev_comp.l" +#line 259 "lev_comp.l" { savetoken(yytext); yylval.i=0; return LIMITED; } YY_BREAK case 137: YY_RULE_SETUP -#line 259 "lev_comp.l" +#line 260 "lev_comp.l" { savetoken(yytext); yylval.i= AM_NONE; return ALIGNMENT; } YY_BREAK case 138: YY_RULE_SETUP -#line 260 "lev_comp.l" +#line 261 "lev_comp.l" { savetoken(yytext); yylval.i= AM_LAWFUL; return ALIGNMENT; } YY_BREAK case 139: YY_RULE_SETUP -#line 261 "lev_comp.l" +#line 262 "lev_comp.l" { savetoken(yytext); yylval.i= AM_NEUTRAL; return ALIGNMENT; } YY_BREAK case 140: YY_RULE_SETUP -#line 262 "lev_comp.l" +#line 263 "lev_comp.l" { savetoken(yytext); yylval.i= AM_CHAOTIC; return ALIGNMENT; } YY_BREAK case 141: YY_RULE_SETUP -#line 263 "lev_comp.l" +#line 264 "lev_comp.l" { savetoken(yytext); yylval.i= AM_SPLEV_CO; return ALIGNMENT; } YY_BREAK case 142: YY_RULE_SETUP -#line 264 "lev_comp.l" +#line 265 "lev_comp.l" { savetoken(yytext); yylval.i= AM_SPLEV_NONCO; return ALIGNMENT; } YY_BREAK case 143: YY_RULE_SETUP -#line 265 "lev_comp.l" +#line 266 "lev_comp.l" { savetoken(yytext); yylval.i=1; return MON_ATTITUDE; } YY_BREAK case 144: YY_RULE_SETUP -#line 266 "lev_comp.l" +#line 267 "lev_comp.l" { savetoken(yytext); yylval.i=0; return MON_ATTITUDE; } YY_BREAK case 145: YY_RULE_SETUP -#line 267 "lev_comp.l" +#line 268 "lev_comp.l" { savetoken(yytext); yylval.i=1; return MON_ALERTNESS; } YY_BREAK case 146: YY_RULE_SETUP -#line 268 "lev_comp.l" +#line 269 "lev_comp.l" { savetoken(yytext); yylval.i=0; return MON_ALERTNESS; } YY_BREAK case 147: YY_RULE_SETUP -#line 269 "lev_comp.l" +#line 270 "lev_comp.l" { savetoken(yytext); yylval.i= M_AP_FURNITURE; return MON_APPEARANCE; } YY_BREAK case 148: YY_RULE_SETUP -#line 270 "lev_comp.l" +#line 271 "lev_comp.l" { savetoken(yytext); yylval.i= M_AP_MONSTER; return MON_APPEARANCE; } YY_BREAK case 149: YY_RULE_SETUP -#line 271 "lev_comp.l" +#line 272 "lev_comp.l" { savetoken(yytext); yylval.i= M_AP_OBJECT; return MON_APPEARANCE; } YY_BREAK case 150: YY_RULE_SETUP -#line 272 "lev_comp.l" +#line 273 "lev_comp.l" { savetoken(yytext); yylval.i=2; return ALTAR_TYPE; } YY_BREAK case 151: YY_RULE_SETUP -#line 273 "lev_comp.l" +#line 274 "lev_comp.l" { savetoken(yytext); yylval.i=1; return ALTAR_TYPE; } YY_BREAK case 152: YY_RULE_SETUP -#line 274 "lev_comp.l" +#line 275 "lev_comp.l" { savetoken(yytext); yylval.i=0; return ALTAR_TYPE; } YY_BREAK case 153: YY_RULE_SETUP -#line 275 "lev_comp.l" +#line 276 "lev_comp.l" { savetoken(yytext); yylval.i=1; return UP_OR_DOWN; } YY_BREAK case 154: YY_RULE_SETUP -#line 276 "lev_comp.l" +#line 277 "lev_comp.l" { savetoken(yytext); yylval.i=0; return UP_OR_DOWN; } YY_BREAK case 155: YY_RULE_SETUP -#line 277 "lev_comp.l" +#line 278 "lev_comp.l" { savetoken(yytext); yylval.i=0; return BOOLEAN; } YY_BREAK case 156: YY_RULE_SETUP -#line 278 "lev_comp.l" +#line 279 "lev_comp.l" { savetoken(yytext); yylval.i=1; return BOOLEAN; } YY_BREAK case 157: YY_RULE_SETUP -#line 279 "lev_comp.l" +#line 280 "lev_comp.l" { savetoken(yytext); yylval.i=DUST; return ENGRAVING_TYPE; } YY_BREAK case 158: YY_RULE_SETUP -#line 280 "lev_comp.l" +#line 281 "lev_comp.l" { savetoken(yytext); yylval.i=ENGRAVE; return ENGRAVING_TYPE; } YY_BREAK case 159: YY_RULE_SETUP -#line 281 "lev_comp.l" +#line 282 "lev_comp.l" { savetoken(yytext); yylval.i=BURN; return ENGRAVING_TYPE; } YY_BREAK case 160: YY_RULE_SETUP -#line 282 "lev_comp.l" +#line 283 "lev_comp.l" { savetoken(yytext); yylval.i=MARK; return ENGRAVING_TYPE; } YY_BREAK case 161: YY_RULE_SETUP -#line 283 "lev_comp.l" +#line 284 "lev_comp.l" { savetoken(yytext); yylval.i=ENGR_BLOOD; return ENGRAVING_TYPE; } YY_BREAK case 162: YY_RULE_SETUP -#line 284 "lev_comp.l" +#line 285 "lev_comp.l" { savetoken(yytext); yylval.i=1; return CURSE_TYPE; } YY_BREAK case 163: YY_RULE_SETUP -#line 285 "lev_comp.l" +#line 286 "lev_comp.l" { savetoken(yytext); yylval.i=2; return CURSE_TYPE; } YY_BREAK case 164: YY_RULE_SETUP -#line 286 "lev_comp.l" +#line 287 "lev_comp.l" { savetoken(yytext); yylval.i=3; return CURSE_TYPE; } YY_BREAK case 165: YY_RULE_SETUP -#line 287 "lev_comp.l" +#line 288 "lev_comp.l" { savetoken(yytext); yylval.i=NOTELEPORT; return FLAG_TYPE; } YY_BREAK case 166: YY_RULE_SETUP -#line 288 "lev_comp.l" +#line 289 "lev_comp.l" { savetoken(yytext); yylval.i=HARDFLOOR; return FLAG_TYPE; } YY_BREAK case 167: YY_RULE_SETUP -#line 289 "lev_comp.l" +#line 290 "lev_comp.l" { savetoken(yytext); yylval.i=NOMMAP; return FLAG_TYPE; } YY_BREAK case 168: YY_RULE_SETUP -#line 290 "lev_comp.l" +#line 291 "lev_comp.l" { savetoken(yytext); yylval.i=ARBOREAL; return FLAG_TYPE; } /* KMH */ YY_BREAK case 169: YY_RULE_SETUP -#line 291 "lev_comp.l" +#line 292 "lev_comp.l" { savetoken(yytext); yylval.i=SHORTSIGHTED; return FLAG_TYPE; } YY_BREAK case 170: YY_RULE_SETUP -#line 292 "lev_comp.l" +#line 293 "lev_comp.l" { savetoken(yytext); yylval.i=MAZELEVEL; return FLAG_TYPE; } YY_BREAK case 171: YY_RULE_SETUP -#line 293 "lev_comp.l" +#line 294 "lev_comp.l" { savetoken(yytext); yylval.i=PREMAPPED; return FLAG_TYPE; } YY_BREAK case 172: YY_RULE_SETUP -#line 294 "lev_comp.l" +#line 295 "lev_comp.l" { savetoken(yytext); yylval.i=SHROUD; return FLAG_TYPE; } YY_BREAK case 173: YY_RULE_SETUP -#line 295 "lev_comp.l" +#line 296 "lev_comp.l" { savetoken(yytext); yylval.i=GRAVEYARD; return FLAG_TYPE; } YY_BREAK case 174: YY_RULE_SETUP -#line 296 "lev_comp.l" +#line 297 "lev_comp.l" { savetoken(yytext); yylval.i=ICEDPOOLS; return FLAG_TYPE; } YY_BREAK case 175: YY_RULE_SETUP -#line 297 "lev_comp.l" +#line 298 "lev_comp.l" { savetoken(yytext); yylval.i=SOLIDIFY; return FLAG_TYPE; } YY_BREAK case 176: YY_RULE_SETUP -#line 298 "lev_comp.l" +#line 299 "lev_comp.l" +{ savetoken(yytext); yylval.i=CORRMAZE; return FLAG_TYPE; } + YY_BREAK +case 177: +YY_RULE_SETUP +#line 300 "lev_comp.l" { char *p = strchr(yytext, 'd'); savetoken(yytext); if (p) { @@ -2392,124 +2382,124 @@ YY_RULE_SETUP return DICE; } YY_BREAK -case 177: +case 178: YY_RULE_SETUP -#line 308 "lev_comp.l" +#line 310 "lev_comp.l" { savetoken(yytext); yylval.i = atoi(yytext + 1); if (yylval.i < 0 || yylval.i > 100) lc_error("Unexpected percentile '%li%%'", yylval.i); return PERCENT; } YY_BREAK -case 178: -YY_RULE_SETUP -#line 312 "lev_comp.l" -{ savetoken(yytext); yylval.i=atoi(yytext); return MINUS_INTEGER; } - YY_BREAK case 179: YY_RULE_SETUP -#line 313 "lev_comp.l" -{ savetoken(yytext); yylval.i=atoi(yytext); return PLUS_INTEGER; } +#line 314 "lev_comp.l" +{ savetoken(yytext); yylval.i=atoi(yytext); return MINUS_INTEGER; } YY_BREAK case 180: YY_RULE_SETUP -#line 314 "lev_comp.l" +#line 315 "lev_comp.l" +{ savetoken(yytext); yylval.i=atoi(yytext); return PLUS_INTEGER; } + YY_BREAK +case 181: +YY_RULE_SETUP +#line 316 "lev_comp.l" { savetoken(yytext); yylval.i = atoi(yytext); if (yylval.i < 0 || yylval.i > 100) lc_error("Unexpected percentile '%li%%'", yylval.i); return SPERCENT; } YY_BREAK -case 181: +case 182: YY_RULE_SETUP -#line 318 "lev_comp.l" +#line 320 "lev_comp.l" { savetoken(yytext); yylval.i=atoi(yytext); return INTEGER; } YY_BREAK -case 182: -/* rule 182 can match eol */ +case 183: +/* rule 183 can match eol */ YY_RULE_SETUP -#line 319 "lev_comp.l" +#line 321 "lev_comp.l" { savetoken(yytext); yytext[yyleng-1] = 0; /* Discard the trailing \" */ yylval.map = (char *) alloc(strlen(yytext+1)+1); Strcpy(yylval.map, yytext+1); /* Discard the first \" */ return STRING; } YY_BREAK -case 183: -YY_RULE_SETUP -#line 324 "lev_comp.l" -{ savetoken(yytext); return handle_varstring_check(); } - YY_BREAK case 184: YY_RULE_SETUP -#line 325 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JE; return COMPARE_TYPE; } +#line 326 "lev_comp.l" +{ savetoken(yytext); return handle_varstring_check(); } YY_BREAK case 185: YY_RULE_SETUP -#line 326 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JNE; return COMPARE_TYPE; } +#line 327 "lev_comp.l" +{ savetoken(yytext); yylval.i = SPO_JE; return COMPARE_TYPE; } YY_BREAK case 186: YY_RULE_SETUP -#line 327 "lev_comp.l" +#line 328 "lev_comp.l" { savetoken(yytext); yylval.i = SPO_JNE; return COMPARE_TYPE; } YY_BREAK case 187: YY_RULE_SETUP -#line 328 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JLE; return COMPARE_TYPE; } +#line 329 "lev_comp.l" +{ savetoken(yytext); yylval.i = SPO_JNE; return COMPARE_TYPE; } YY_BREAK case 188: YY_RULE_SETUP -#line 329 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JGE; return COMPARE_TYPE; } +#line 330 "lev_comp.l" +{ savetoken(yytext); yylval.i = SPO_JLE; return COMPARE_TYPE; } YY_BREAK case 189: YY_RULE_SETUP -#line 330 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JL; return COMPARE_TYPE; } +#line 331 "lev_comp.l" +{ savetoken(yytext); yylval.i = SPO_JGE; return COMPARE_TYPE; } YY_BREAK case 190: YY_RULE_SETUP -#line 331 "lev_comp.l" -{ savetoken(yytext); yylval.i = SPO_JG; return COMPARE_TYPE; } +#line 332 "lev_comp.l" +{ savetoken(yytext); yylval.i = SPO_JL; return COMPARE_TYPE; } YY_BREAK case 191: -/* rule 191 can match eol */ -YY_RULE_SETUP -#line 332 "lev_comp.l" -{ newline(); } - YY_BREAK -case 192: YY_RULE_SETUP #line 333 "lev_comp.l" -{ advancepos(yytext); } +{ savetoken(yytext); yylval.i = SPO_JG; return COMPARE_TYPE; } + YY_BREAK +case 192: +/* rule 192 can match eol */ +YY_RULE_SETUP +#line 334 "lev_comp.l" +{ newline(); } YY_BREAK case 193: YY_RULE_SETUP -#line 334 "lev_comp.l" -{ savetoken(yytext); yylval.i = yytext[2]; return CHAR; } +#line 335 "lev_comp.l" +{ advancepos(yytext); } YY_BREAK case 194: YY_RULE_SETUP -#line 335 "lev_comp.l" -{ savetoken(yytext); yylval.i = yytext[1]; return CHAR; } +#line 336 "lev_comp.l" +{ savetoken(yytext); yylval.i = yytext[2]; return CHAR; } YY_BREAK case 195: YY_RULE_SETUP -#line 336 "lev_comp.l" -ST_RET(UNKNOWN_TYPE); +#line 337 "lev_comp.l" +{ savetoken(yytext); yylval.i = yytext[1]; return CHAR; } YY_BREAK case 196: YY_RULE_SETUP -#line 337 "lev_comp.l" -{ savetoken(yytext); return yytext[0]; } +#line 338 "lev_comp.l" +ST_RET(UNKNOWN_TYPE); YY_BREAK case 197: YY_RULE_SETUP -#line 338 "lev_comp.l" +#line 339 "lev_comp.l" +{ savetoken(yytext); return yytext[0]; } + YY_BREAK +case 198: +YY_RULE_SETUP +#line 340 "lev_comp.l" ECHO; YY_BREAK -#line 2512 "lex.yy.c" +#line 2503 "lex.yy.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(MAPC): yyterminate(); @@ -2804,7 +2794,7 @@ static int yy_get_next_buffer (void) 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 >= 1049 ) + if ( yy_current_state >= 1038 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2832,11 +2822,11 @@ static int yy_get_next_buffer (void) 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 >= 1049 ) + if ( yy_current_state >= 1038 ) 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 == 1048); + yy_is_jam = (yy_current_state == 1037); return yy_is_jam ? 0 : yy_current_state; } @@ -3508,7 +3498,7 @@ void yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 337 "lev_comp.l" +#line 339 "lev_comp.l" #ifdef AMIGA diff --git a/sys/share/lev_yacc.c b/sys/share/lev_yacc.c index 376c48759..d2280994c 100644 --- a/sys/share/lev_yacc.c +++ b/sys/share/lev_yacc.c @@ -64,7 +64,7 @@ /* Copy the first part of user declarations. */ #line 1 "lev_comp.y" /* yacc.c:339 */ -/* NetHack 3.5 lev_comp.y $NHDT-Date$ $NHDT-Branch$:$NHDT-Revision$ */ +/* NetHack 3.5 lev_comp.y $NHDT-Date: 1428655167 2015/04/10 08:39:27 $ $NHDT-Branch: master $:$NHDT-Revision: 1.11 $ */ /* NetHack 3.5 lev_comp.y $Date: 2009/05/06 10:54:31 $ $Revision: 1.8 $ */ /* SCCS Id: @(#)lev_yacc.c 3.5 2007/08/01 */ /* Copyright (c) 1989 by Jean-Christophe Collet */ @@ -88,6 +88,7 @@ #pragma alloca /* keep leading space! */ #endif +#define SPEC_LEV /* for USE_OLDARGS (sp_lev.h) */ #include "hack.h" #include "sp_lev.h" @@ -208,7 +209,7 @@ extern const char *fname; extern char curr_token[512]; -#line 212 "y.tab.c" /* yacc.c:339 */ +#line 213 "y.tab.c" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -600,7 +601,7 @@ extern int yydebug; typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 148 "lev_comp.y" /* yacc.c:355 */ +#line 149 "lev_comp.y" /* yacc.c:355 */ long i; char* map; @@ -637,7 +638,7 @@ union YYSTYPE char *varstr; } meth; -#line 641 "y.tab.c" /* yacc.c:355 */ +#line 642 "y.tab.c" /* yacc.c:355 */ }; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 @@ -652,7 +653,7 @@ int yyparse (void); /* Copy the second part of user declarations. */ -#line 656 "y.tab.c" /* yacc.c:358 */ +#line 657 "y.tab.c" /* yacc.c:358 */ #ifdef short # undef short @@ -967,47 +968,47 @@ static const yytype_uint8 yytranslate[] = /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 275, 275, 276, 279, 280, 283, 305, 310, 326, - 330, 336, 345, 354, 358, 384, 387, 394, 398, 405, - 408, 415, 416, 420, 423, 429, 433, 440, 443, 449, - 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, - 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, - 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 501, 502, 503, 504, 505, 506, - 507, 508, 509, 512, 513, 514, 515, 516, 517, 518, - 519, 520, 523, 524, 525, 528, 529, 532, 544, 550, - 556, 562, 568, 574, 580, 586, 592, 599, 606, 613, - 620, 627, 634, 643, 648, 655, 660, 667, 672, 679, - 683, 689, 694, 701, 705, 711, 715, 722, 744, 721, - 758, 803, 810, 813, 819, 825, 829, 838, 842, 837, - 899, 900, 904, 903, 916, 915, 930, 940, 941, 944, - 977, 976, 1002, 1001, 1031, 1030, 1061, 1060, 1086, 1095, - 1094, 1121, 1127, 1131, 1135, 1141, 1148, 1157, 1165, 1176, - 1175, 1191, 1190, 1207, 1210, 1216, 1226, 1232, 1241, 1247, - 1252, 1258, 1263, 1269, 1278, 1284, 1285, 1288, 1289, 1292, - 1296, 1302, 1303, 1306, 1312, 1318, 1326, 1327, 1330, 1331, - 1334, 1339, 1338, 1352, 1359, 1365, 1373, 1378, 1383, 1388, - 1393, 1398, 1403, 1408, 1413, 1418, 1423, 1428, 1433, 1438, - 1443, 1448, 1455, 1462, 1466, 1479, 1486, 1485, 1501, 1509, - 1515, 1523, 1528, 1533, 1538, 1543, 1548, 1553, 1558, 1563, - 1568, 1579, 1584, 1589, 1594, 1599, 1606, 1612, 1639, 1644, - 1651, 1655, 1661, 1667, 1673, 1683, 1693, 1708, 1718, 1721, - 1727, 1733, 1739, 1745, 1750, 1757, 1763, 1769, 1775, 1782, - 1781, 1805, 1808, 1814, 1820, 1824, 1829, 1836, 1842, 1849, - 1853, 1859, 1867, 1870, 1880, 1884, 1887, 1893, 1897, 1904, - 1908, 1912, 1918, 1919, 1922, 1923, 1926, 1927, 1928, 1934, - 1935, 1936, 1942, 1943, 1946, 1955, 1960, 1967, 1977, 1983, - 1987, 1991, 1998, 2007, 2013, 2017, 2023, 2027, 2035, 2039, - 2046, 2055, 2066, 2070, 2077, 2086, 2095, 2106, 2110, 2117, - 2126, 2135, 2144, 2153, 2159, 2163, 2170, 2179, 2189, 2198, - 2207, 2214, 2215, 2221, 2222, 2223, 2224, 2232, 2240, 2241, - 2242, 2243, 2244, 2245, 2248, 2254, 2262, 2291, 2292, 2295, - 2296, 2299, 2303, 2310, 2317, 2328, 2331, 2339, 2343, 2347, - 2351, 2355, 2360, 2364, 2368, 2372, 2376, 2380, 2384, 2388, - 2392, 2396, 2400, 2404, 2408, 2415, 2421, 2425, 2431, 2437, - 2438, 2439, 2442, 2446, 2450, 2454, 2460, 2461, 2464, 2465, - 2468, 2469, 2472, 2473, 2476, 2480, 2498 + 0, 276, 276, 277, 280, 281, 284, 306, 311, 332, + 336, 342, 352, 363, 369, 398, 401, 408, 412, 419, + 422, 429, 430, 434, 437, 443, 447, 454, 457, 463, + 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, + 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, + 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, + 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, + 509, 510, 511, 512, 515, 516, 517, 518, 519, 520, + 521, 522, 523, 526, 527, 528, 529, 530, 531, 532, + 533, 534, 537, 538, 539, 542, 543, 546, 558, 564, + 570, 576, 582, 588, 594, 600, 606, 614, 622, 630, + 638, 646, 654, 664, 669, 676, 681, 688, 693, 700, + 704, 710, 715, 722, 726, 732, 736, 743, 765, 742, + 779, 827, 834, 837, 843, 850, 854, 863, 867, 862, + 929, 930, 934, 933, 946, 945, 960, 970, 971, 974, + 1013, 1012, 1046, 1045, 1075, 1074, 1105, 1104, 1130, 1139, + 1138, 1165, 1171, 1176, 1181, 1188, 1195, 1204, 1212, 1224, + 1223, 1242, 1241, 1260, 1263, 1269, 1279, 1285, 1294, 1300, + 1305, 1311, 1316, 1322, 1333, 1339, 1340, 1343, 1344, 1347, + 1351, 1357, 1358, 1361, 1368, 1376, 1384, 1385, 1388, 1389, + 1392, 1397, 1396, 1410, 1417, 1423, 1431, 1436, 1442, 1448, + 1454, 1460, 1465, 1470, 1475, 1480, 1485, 1490, 1495, 1500, + 1505, 1510, 1518, 1525, 1529, 1542, 1549, 1548, 1564, 1572, + 1578, 1586, 1592, 1597, 1602, 1607, 1612, 1617, 1622, 1627, + 1632, 1643, 1648, 1653, 1658, 1663, 1670, 1676, 1705, 1710, + 1718, 1724, 1730, 1737, 1744, 1754, 1764, 1779, 1790, 1793, + 1799, 1805, 1811, 1817, 1822, 1829, 1836, 1842, 1848, 1855, + 1854, 1879, 1882, 1888, 1895, 1899, 1904, 1911, 1917, 1924, + 1928, 1935, 1943, 1946, 1956, 1960, 1963, 1969, 1973, 1980, + 1984, 1988, 1994, 1995, 1998, 1999, 2002, 2003, 2004, 2010, + 2011, 2012, 2018, 2019, 2022, 2031, 2036, 2043, 2053, 2059, + 2063, 2067, 2074, 2083, 2089, 2093, 2099, 2103, 2111, 2115, + 2122, 2131, 2142, 2146, 2153, 2162, 2171, 2182, 2186, 2193, + 2202, 2211, 2220, 2229, 2235, 2239, 2246, 2255, 2265, 2274, + 2283, 2290, 2291, 2297, 2301, 2305, 2309, 2317, 2326, 2330, + 2334, 2338, 2342, 2346, 2349, 2356, 2365, 2393, 2394, 2397, + 2398, 2401, 2405, 2412, 2419, 2430, 2433, 2441, 2445, 2449, + 2453, 2457, 2462, 2466, 2470, 2475, 2480, 2485, 2489, 2494, + 2499, 2503, 2507, 2512, 2516, 2523, 2529, 2533, 2539, 2546, + 2547, 2548, 2551, 2555, 2559, 2563, 2569, 2570, 2573, 2574, + 2577, 2578, 2581, 2582, 2585, 2589, 2607 }; #endif @@ -2442,7 +2443,7 @@ yyreduce: switch (yyn) { case 6: -#line 284 "lev_comp.y" /* yacc.c:1646 */ +#line 285 "lev_comp.y" /* yacc.c:1646 */ { if (fatal_error > 0) { (void) fprintf(stderr, @@ -2462,88 +2463,98 @@ yyreduce: vardef_free_all(variable_definitions); variable_definitions = NULL; } -#line 2466 "y.tab.c" /* yacc.c:1646 */ +#line 2467 "y.tab.c" /* yacc.c:1646 */ break; case 7: -#line 306 "lev_comp.y" /* yacc.c:1646 */ +#line 307 "lev_comp.y" /* yacc.c:1646 */ { start_level_def(&splev, (yyvsp[0].map)); (yyval.map) = (yyvsp[0].map); } -#line 2475 "y.tab.c" /* yacc.c:1646 */ +#line 2476 "y.tab.c" /* yacc.c:1646 */ break; case 8: -#line 311 "lev_comp.y" /* yacc.c:1646 */ +#line 312 "lev_comp.y" /* yacc.c:1646 */ { start_level_def(&splev, (yyvsp[-2].map)); if ((yyvsp[0].i) == -1) { - add_opvars(splev, "iiiiiiiio", LVLINIT_MAZEGRID,HWALL,0,0, 0,0,0,0, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + VA_PASS9(LVLINIT_MAZEGRID,HWALL,0,0, + 0,0,0,0, SPO_INITLEVEL)); } else { long bg = what_map_char((char) (yyvsp[0].i)); - add_opvars(splev, "iiiiiiiio", LVLINIT_SOLIDFILL, bg, 0,0, 0,0,0,0, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + VA_PASS9(LVLINIT_SOLIDFILL, bg, 0,0, + 0,0,0,0, SPO_INITLEVEL)); } - add_opvars(splev, "io", MAZELEVEL, SPO_LEVEL_FLAGS); + add_opvars(splev, "io", + VA_PASS2(MAZELEVEL, SPO_LEVEL_FLAGS)); max_x_map = COLNO-1; max_y_map = ROWNO; (yyval.map) = (yyvsp[-2].map); } -#line 2493 "y.tab.c" /* yacc.c:1646 */ +#line 2499 "y.tab.c" /* yacc.c:1646 */ break; case 9: -#line 327 "lev_comp.y" /* yacc.c:1646 */ +#line 333 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = -1; } -#line 2501 "y.tab.c" /* yacc.c:1646 */ +#line 2507 "y.tab.c" /* yacc.c:1646 */ break; case 10: -#line 331 "lev_comp.y" /* yacc.c:1646 */ +#line 337 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = what_map_char((char) (yyvsp[0].i)); } -#line 2509 "y.tab.c" /* yacc.c:1646 */ +#line 2515 "y.tab.c" /* yacc.c:1646 */ break; case 11: -#line 337 "lev_comp.y" /* yacc.c:1646 */ +#line 343 "lev_comp.y" /* yacc.c:1646 */ { long filling = (yyvsp[0].terr).ter; if (filling == INVALID_TYPE || filling >= MAX_TYPE) lc_error("INIT_MAP: Invalid fill char type."); - add_opvars(splev, "iiiiiiiio", LVLINIT_SOLIDFILL,filling,0,(long)(yyvsp[0].terr).lit, 0,0,0,0, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + LVLINIT_SOLIDFILL,filling,0,(long)(yyvsp[0].terr).lit, 0,0,0,0, SPO_INITLEVEL); max_x_map = COLNO-1; max_y_map = ROWNO; } -#line 2522 "y.tab.c" /* yacc.c:1646 */ +#line 2529 "y.tab.c" /* yacc.c:1646 */ break; case 12: -#line 346 "lev_comp.y" /* yacc.c:1646 */ +#line 353 "lev_comp.y" /* yacc.c:1646 */ { long filling = what_map_char((char) (yyvsp[0].i)); if (filling == INVALID_TYPE || filling >= MAX_TYPE) lc_error("INIT_MAP: Invalid fill char type."); - add_opvars(splev, "iiiiiiiio", LVLINIT_MAZEGRID,filling,0,0, 0,0,0,0, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + VA_PASS9(LVLINIT_MAZEGRID,filling,0,0, + 0,0,0,0, SPO_INITLEVEL)); max_x_map = COLNO-1; max_y_map = ROWNO; } -#line 2535 "y.tab.c" /* yacc.c:1646 */ +#line 2544 "y.tab.c" /* yacc.c:1646 */ break; case 13: -#line 355 "lev_comp.y" /* yacc.c:1646 */ +#line 364 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iiiiiiiio", LVLINIT_ROGUE,0,0,0,0,0,0,0, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + VA_PASS9(LVLINIT_ROGUE,0,0,0, + 0,0,0,0, SPO_INITLEVEL)); } -#line 2543 "y.tab.c" /* yacc.c:1646 */ +#line 2554 "y.tab.c" /* yacc.c:1646 */ break; case 14: -#line 359 "lev_comp.y" /* yacc.c:1646 */ +#line 370 "lev_comp.y" /* yacc.c:1646 */ { long fg = what_map_char((char) (yyvsp[-11].i)); long bg = what_map_char((char) (yyvsp[-9].i)); @@ -2562,411 +2573,421 @@ yyreduce: if (filling == INVALID_TYPE) lc_error("INIT_MAP: Invalid fill char type."); - add_opvars(splev, "iiiiiiiio", LVLINIT_MINES,filling,walled,lit, joined,smoothed,bg,fg, SPO_INITLEVEL); + add_opvars(splev, "iiiiiiiio", + VA_PASS9(LVLINIT_MINES,filling,walled,lit, + joined,smoothed,bg,fg, + SPO_INITLEVEL)); max_x_map = COLNO-1; max_y_map = ROWNO; } -#line 2570 "y.tab.c" /* yacc.c:1646 */ +#line 2584 "y.tab.c" /* yacc.c:1646 */ break; case 15: -#line 384 "lev_comp.y" /* yacc.c:1646 */ +#line 398 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 0; } -#line 2578 "y.tab.c" /* yacc.c:1646 */ +#line 2592 "y.tab.c" /* yacc.c:1646 */ break; case 16: -#line 388 "lev_comp.y" /* yacc.c:1646 */ +#line 402 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 2586 "y.tab.c" /* yacc.c:1646 */ +#line 2600 "y.tab.c" /* yacc.c:1646 */ break; case 17: -#line 394 "lev_comp.y" /* yacc.c:1646 */ +#line 408 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_COPY); + add_opvars(splev, "o", VA_PASS1(SPO_COPY)); (yyval.i) = 0; } -#line 2595 "y.tab.c" /* yacc.c:1646 */ +#line 2609 "y.tab.c" /* yacc.c:1646 */ break; case 18: -#line 399 "lev_comp.y" /* yacc.c:1646 */ +#line 413 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1; } -#line 2603 "y.tab.c" /* yacc.c:1646 */ +#line 2617 "y.tab.c" /* yacc.c:1646 */ break; case 19: -#line 405 "lev_comp.y" /* yacc.c:1646 */ +#line 419 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = -1; } -#line 2611 "y.tab.c" /* yacc.c:1646 */ +#line 2625 "y.tab.c" /* yacc.c:1646 */ break; case 20: -#line 409 "lev_comp.y" /* yacc.c:1646 */ +#line 423 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = what_map_char((char) (yyvsp[0].i)); } -#line 2619 "y.tab.c" /* yacc.c:1646 */ +#line 2633 "y.tab.c" /* yacc.c:1646 */ break; case 23: -#line 420 "lev_comp.y" /* yacc.c:1646 */ +#line 434 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", 0, SPO_LEVEL_FLAGS); + add_opvars(splev, "io", VA_PASS2(0, SPO_LEVEL_FLAGS)); } -#line 2627 "y.tab.c" /* yacc.c:1646 */ +#line 2641 "y.tab.c" /* yacc.c:1646 */ break; case 24: -#line 424 "lev_comp.y" /* yacc.c:1646 */ +#line 438 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (yyvsp[0].i), SPO_LEVEL_FLAGS); + add_opvars(splev, "io", VA_PASS2((yyvsp[0].i), SPO_LEVEL_FLAGS)); } -#line 2635 "y.tab.c" /* yacc.c:1646 */ +#line 2649 "y.tab.c" /* yacc.c:1646 */ break; case 25: -#line 430 "lev_comp.y" /* yacc.c:1646 */ +#line 444 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = ((yyvsp[-2].i) | (yyvsp[0].i)); } -#line 2643 "y.tab.c" /* yacc.c:1646 */ +#line 2657 "y.tab.c" /* yacc.c:1646 */ break; case 26: -#line 434 "lev_comp.y" /* yacc.c:1646 */ +#line 448 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 2651 "y.tab.c" /* yacc.c:1646 */ +#line 2665 "y.tab.c" /* yacc.c:1646 */ break; case 27: -#line 440 "lev_comp.y" /* yacc.c:1646 */ +#line 454 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 0; } -#line 2659 "y.tab.c" /* yacc.c:1646 */ +#line 2673 "y.tab.c" /* yacc.c:1646 */ break; case 28: -#line 444 "lev_comp.y" /* yacc.c:1646 */ +#line 458 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1 + (yyvsp[0].i); } -#line 2667 "y.tab.c" /* yacc.c:1646 */ +#line 2681 "y.tab.c" /* yacc.c:1646 */ break; case 29: -#line 450 "lev_comp.y" /* yacc.c:1646 */ +#line 464 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[-1].i); } -#line 2675 "y.tab.c" /* yacc.c:1646 */ +#line 2689 "y.tab.c" /* yacc.c:1646 */ break; case 97: -#line 533 "lev_comp.y" /* yacc.c:1646 */ +#line 547 "lev_comp.y" /* yacc.c:1646 */ { struct lc_vardefs *vd; if ((vd = vardef_defined(variable_definitions, (yyvsp[0].map), 1))) { if (!(vd->var_type & SPOVAR_ARRAY)) lc_error("Trying to shuffle non-array variable '%s'", (yyvsp[0].map)); } else lc_error("Trying to shuffle undefined variable '%s'", (yyvsp[0].map)); - add_opvars(splev, "so", (yyvsp[0].map), SPO_SHUFFLE_ARRAY); + add_opvars(splev, "so", VA_PASS2((yyvsp[0].map), SPO_SHUFFLE_ARRAY)); Free((yyvsp[0].map)); } -#line 2689 "y.tab.c" /* yacc.c:1646 */ +#line 2703 "y.tab.c" /* yacc.c:1646 */ break; case 98: -#line 545 "lev_comp.y" /* yacc.c:1646 */ +#line 559 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-2].map), SPOVAR_INT); - add_opvars(splev, "iso", 0, (yyvsp[-2].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-2].map), SPO_VAR_INIT)); Free((yyvsp[-2].map)); } -#line 2699 "y.tab.c" /* yacc.c:1646 */ +#line 2713 "y.tab.c" /* yacc.c:1646 */ break; case 99: -#line 551 "lev_comp.y" /* yacc.c:1646 */ +#line 565 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_SEL); - add_opvars(splev, "iso", 0, (yyvsp[-4].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-4].map), SPO_VAR_INIT)); Free((yyvsp[-4].map)); } -#line 2709 "y.tab.c" /* yacc.c:1646 */ +#line 2723 "y.tab.c" /* yacc.c:1646 */ break; case 100: -#line 557 "lev_comp.y" /* yacc.c:1646 */ +#line 571 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-2].map), SPOVAR_STRING); - add_opvars(splev, "iso", 0, (yyvsp[-2].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-2].map), SPO_VAR_INIT)); Free((yyvsp[-2].map)); } -#line 2719 "y.tab.c" /* yacc.c:1646 */ +#line 2733 "y.tab.c" /* yacc.c:1646 */ break; case 101: -#line 563 "lev_comp.y" /* yacc.c:1646 */ +#line 577 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_MAPCHAR); - add_opvars(splev, "iso", 0, (yyvsp[-4].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-4].map), SPO_VAR_INIT)); Free((yyvsp[-4].map)); } -#line 2729 "y.tab.c" /* yacc.c:1646 */ +#line 2743 "y.tab.c" /* yacc.c:1646 */ break; case 102: -#line 569 "lev_comp.y" /* yacc.c:1646 */ +#line 583 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_MONST); - add_opvars(splev, "iso", 0, (yyvsp[-4].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-4].map), SPO_VAR_INIT)); Free((yyvsp[-4].map)); } -#line 2739 "y.tab.c" /* yacc.c:1646 */ +#line 2753 "y.tab.c" /* yacc.c:1646 */ break; case 103: -#line 575 "lev_comp.y" /* yacc.c:1646 */ +#line 589 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_OBJ); - add_opvars(splev, "iso", 0, (yyvsp[-4].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-4].map), SPO_VAR_INIT)); Free((yyvsp[-4].map)); } -#line 2749 "y.tab.c" /* yacc.c:1646 */ +#line 2763 "y.tab.c" /* yacc.c:1646 */ break; case 104: -#line 581 "lev_comp.y" /* yacc.c:1646 */ +#line 595 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-2].map), SPOVAR_COORD); - add_opvars(splev, "iso", 0, (yyvsp[-2].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-2].map), SPO_VAR_INIT)); Free((yyvsp[-2].map)); } -#line 2759 "y.tab.c" /* yacc.c:1646 */ +#line 2773 "y.tab.c" /* yacc.c:1646 */ break; case 105: -#line 587 "lev_comp.y" /* yacc.c:1646 */ +#line 601 "lev_comp.y" /* yacc.c:1646 */ { variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-2].map), SPOVAR_REGION); - add_opvars(splev, "iso", 0, (yyvsp[-2].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-2].map), SPO_VAR_INIT)); Free((yyvsp[-2].map)); } -#line 2769 "y.tab.c" /* yacc.c:1646 */ +#line 2783 "y.tab.c" /* yacc.c:1646 */ break; case 106: -#line 593 "lev_comp.y" /* yacc.c:1646 */ - { - long n_items = (yyvsp[-1].i); - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_INT|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-4].map), SPO_VAR_INIT); - Free((yyvsp[-4].map)); - } -#line 2780 "y.tab.c" /* yacc.c:1646 */ - break; - - case 107: -#line 600 "lev_comp.y" /* yacc.c:1646 */ - { - long n_items = (yyvsp[-1].i); - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_COORD|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-4].map), SPO_VAR_INIT); - Free((yyvsp[-4].map)); - } -#line 2791 "y.tab.c" /* yacc.c:1646 */ - break; - - case 108: #line 607 "lev_comp.y" /* yacc.c:1646 */ { long n_items = (yyvsp[-1].i); - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_REGION|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-4].map), SPO_VAR_INIT); + variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_INT|SPOVAR_ARRAY); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-4].map), SPO_VAR_INIT)); Free((yyvsp[-4].map)); } -#line 2802 "y.tab.c" /* yacc.c:1646 */ +#line 2795 "y.tab.c" /* yacc.c:1646 */ + break; + + case 107: +#line 615 "lev_comp.y" /* yacc.c:1646 */ + { + long n_items = (yyvsp[-1].i); + variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_COORD|SPOVAR_ARRAY); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-4].map), SPO_VAR_INIT)); + Free((yyvsp[-4].map)); + } +#line 2807 "y.tab.c" /* yacc.c:1646 */ + break; + + case 108: +#line 623 "lev_comp.y" /* yacc.c:1646 */ + { + long n_items = (yyvsp[-1].i); + variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_REGION|SPOVAR_ARRAY); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-4].map), SPO_VAR_INIT)); + Free((yyvsp[-4].map)); + } +#line 2819 "y.tab.c" /* yacc.c:1646 */ break; case 109: -#line 614 "lev_comp.y" /* yacc.c:1646 */ +#line 631 "lev_comp.y" /* yacc.c:1646 */ { long n_items = (yyvsp[-1].i); variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-6].map), SPOVAR_MAPCHAR|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-6].map), SPO_VAR_INIT); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-6].map), SPO_VAR_INIT)); Free((yyvsp[-6].map)); } -#line 2813 "y.tab.c" /* yacc.c:1646 */ +#line 2831 "y.tab.c" /* yacc.c:1646 */ break; case 110: -#line 621 "lev_comp.y" /* yacc.c:1646 */ +#line 639 "lev_comp.y" /* yacc.c:1646 */ { long n_items = (yyvsp[-1].i); variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-6].map), SPOVAR_MONST|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-6].map), SPO_VAR_INIT); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-6].map), SPO_VAR_INIT)); Free((yyvsp[-6].map)); } -#line 2824 "y.tab.c" /* yacc.c:1646 */ +#line 2843 "y.tab.c" /* yacc.c:1646 */ break; case 111: -#line 628 "lev_comp.y" /* yacc.c:1646 */ +#line 647 "lev_comp.y" /* yacc.c:1646 */ { long n_items = (yyvsp[-1].i); variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-6].map), SPOVAR_OBJ|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-6].map), SPO_VAR_INIT); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-6].map), SPO_VAR_INIT)); Free((yyvsp[-6].map)); } -#line 2835 "y.tab.c" /* yacc.c:1646 */ - break; - - case 112: -#line 635 "lev_comp.y" /* yacc.c:1646 */ - { - long n_items = (yyvsp[-1].i); - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_STRING|SPOVAR_ARRAY); - add_opvars(splev, "iso", n_items, (yyvsp[-4].map), SPO_VAR_INIT); - Free((yyvsp[-4].map)); - } -#line 2846 "y.tab.c" /* yacc.c:1646 */ - break; - - case 113: -#line 644 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "O", (yyvsp[0].i)); - (yyval.i) = 1; - } #line 2855 "y.tab.c" /* yacc.c:1646 */ break; - case 114: -#line 649 "lev_comp.y" /* yacc.c:1646 */ + case 112: +#line 655 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "O", (yyvsp[0].i)); + long n_items = (yyvsp[-1].i); + variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_STRING|SPOVAR_ARRAY); + add_opvars(splev, "iso", + VA_PASS3(n_items, (yyvsp[-4].map), SPO_VAR_INIT)); + Free((yyvsp[-4].map)); + } +#line 2867 "y.tab.c" /* yacc.c:1646 */ + break; + + case 113: +#line 665 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "O", VA_PASS1((yyvsp[0].i))); + (yyval.i) = 1; + } +#line 2876 "y.tab.c" /* yacc.c:1646 */ + break; + + case 114: +#line 670 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "O", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2864 "y.tab.c" /* yacc.c:1646 */ +#line 2885 "y.tab.c" /* yacc.c:1646 */ break; case 115: -#line 656 "lev_comp.y" /* yacc.c:1646 */ +#line 677 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "M", (yyvsp[0].i)); + add_opvars(splev, "M", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1; } -#line 2873 "y.tab.c" /* yacc.c:1646 */ +#line 2894 "y.tab.c" /* yacc.c:1646 */ break; case 116: -#line 661 "lev_comp.y" /* yacc.c:1646 */ +#line 682 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "M", (yyvsp[0].i)); + add_opvars(splev, "M", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2882 "y.tab.c" /* yacc.c:1646 */ +#line 2903 "y.tab.c" /* yacc.c:1646 */ break; case 117: -#line 668 "lev_comp.y" /* yacc.c:1646 */ +#line 689 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "m", (yyvsp[0].i)); + add_opvars(splev, "m", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1; } -#line 2891 "y.tab.c" /* yacc.c:1646 */ +#line 2912 "y.tab.c" /* yacc.c:1646 */ break; case 118: -#line 673 "lev_comp.y" /* yacc.c:1646 */ +#line 694 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "m", (yyvsp[0].i)); + add_opvars(splev, "m", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2900 "y.tab.c" /* yacc.c:1646 */ +#line 2921 "y.tab.c" /* yacc.c:1646 */ break; case 119: -#line 680 "lev_comp.y" /* yacc.c:1646 */ +#line 701 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1; } -#line 2908 "y.tab.c" /* yacc.c:1646 */ +#line 2929 "y.tab.c" /* yacc.c:1646 */ break; case 120: -#line 684 "lev_comp.y" /* yacc.c:1646 */ +#line 705 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2916 "y.tab.c" /* yacc.c:1646 */ +#line 2937 "y.tab.c" /* yacc.c:1646 */ break; case 121: -#line 690 "lev_comp.y" /* yacc.c:1646 */ +#line 711 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "c", (yyvsp[0].i)); + add_opvars(splev, "c", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1; } -#line 2925 "y.tab.c" /* yacc.c:1646 */ +#line 2946 "y.tab.c" /* yacc.c:1646 */ break; case 122: -#line 695 "lev_comp.y" /* yacc.c:1646 */ +#line 716 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "c", (yyvsp[0].i)); + add_opvars(splev, "c", VA_PASS1((yyvsp[0].i))); (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2934 "y.tab.c" /* yacc.c:1646 */ +#line 2955 "y.tab.c" /* yacc.c:1646 */ break; case 123: -#line 702 "lev_comp.y" /* yacc.c:1646 */ +#line 723 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1; } -#line 2942 "y.tab.c" /* yacc.c:1646 */ +#line 2963 "y.tab.c" /* yacc.c:1646 */ break; case 124: -#line 706 "lev_comp.y" /* yacc.c:1646 */ +#line 727 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2950 "y.tab.c" /* yacc.c:1646 */ +#line 2971 "y.tab.c" /* yacc.c:1646 */ break; case 125: -#line 712 "lev_comp.y" /* yacc.c:1646 */ +#line 733 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1; } -#line 2958 "y.tab.c" /* yacc.c:1646 */ +#line 2979 "y.tab.c" /* yacc.c:1646 */ break; case 126: -#line 716 "lev_comp.y" /* yacc.c:1646 */ +#line 737 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1 + (yyvsp[-2].i); } -#line 2966 "y.tab.c" /* yacc.c:1646 */ +#line 2987 "y.tab.c" /* yacc.c:1646 */ break; case 127: -#line 722 "lev_comp.y" /* yacc.c:1646 */ +#line 743 "lev_comp.y" /* yacc.c:1646 */ { struct lc_funcdefs *funcdef; @@ -2988,32 +3009,32 @@ yyreduce: function_tmp_var_defs = variable_definitions; variable_definitions = NULL; } -#line 2992 "y.tab.c" /* yacc.c:1646 */ +#line 3013 "y.tab.c" /* yacc.c:1646 */ break; case 128: -#line 744 "lev_comp.y" /* yacc.c:1646 */ +#line 765 "lev_comp.y" /* yacc.c:1646 */ { /* nothing */ } -#line 3000 "y.tab.c" /* yacc.c:1646 */ +#line 3021 "y.tab.c" /* yacc.c:1646 */ break; case 129: -#line 748 "lev_comp.y" /* yacc.c:1646 */ +#line 769 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", 0, SPO_RETURN); + add_opvars(splev, "io", VA_PASS2(0, SPO_RETURN)); splev = function_splev_backup; in_function_definition--; curr_function = NULL; vardef_free_all(variable_definitions); variable_definitions = function_tmp_var_defs; } -#line 3013 "y.tab.c" /* yacc.c:1646 */ +#line 3034 "y.tab.c" /* yacc.c:1646 */ break; case 130: -#line 759 "lev_comp.y" /* yacc.c:1646 */ +#line 780 "lev_comp.y" /* yacc.c:1646 */ { struct lc_funcdefs *tmpfunc; tmpfunc = funcdef_defined(function_definitions, (yyvsp[-3].map), 1); @@ -3040,7 +3061,9 @@ yyreduce: { /* init function parameter variables */ struct lc_funcdefs_parm *tfp = tmpfunc->params; while (tfp) { - add_opvars(splev, "iso", 0, tfp->name, SPO_VAR_INIT); + add_opvars(splev, "iso", + VA_PASS3(0, tfp->name, + SPO_VAR_INIT)); tfp = tfp->next; } } @@ -3049,78 +3072,80 @@ yyreduce: set_opvar_int(jmp, splev->n_opcodes - jmp->vardata.l); } l = tmpfunc->addr - splev->n_opcodes - 2; - add_opvars(splev, "iio", nparams, l, SPO_CALL); + add_opvars(splev, "iio", + VA_PASS3(nparams, l, SPO_CALL)); tmpfunc->n_called++; } else { lc_error("Function '%s' not defined.", (yyvsp[-3].map)); } Free((yyvsp[-3].map)); } -#line 3060 "y.tab.c" /* yacc.c:1646 */ - break; - - case 131: -#line 804 "lev_comp.y" /* yacc.c:1646 */ - { - add_opcode(splev, SPO_EXIT, NULL); - } -#line 3068 "y.tab.c" /* yacc.c:1646 */ - break; - - case 132: -#line 810 "lev_comp.y" /* yacc.c:1646 */ - { - (yyval.i) = 100; - } -#line 3076 "y.tab.c" /* yacc.c:1646 */ - break; - - case 133: -#line 814 "lev_comp.y" /* yacc.c:1646 */ - { - (yyval.i) = (yyvsp[0].i); - } #line 3084 "y.tab.c" /* yacc.c:1646 */ break; + case 131: +#line 828 "lev_comp.y" /* yacc.c:1646 */ + { + add_opcode(splev, SPO_EXIT, NULL); + } +#line 3092 "y.tab.c" /* yacc.c:1646 */ + break; + + case 132: +#line 834 "lev_comp.y" /* yacc.c:1646 */ + { + (yyval.i) = 100; + } +#line 3100 "y.tab.c" /* yacc.c:1646 */ + break; + + case 133: +#line 838 "lev_comp.y" /* yacc.c:1646 */ + { + (yyval.i) = (yyvsp[0].i); + } +#line 3108 "y.tab.c" /* yacc.c:1646 */ + break; + case 134: -#line 820 "lev_comp.y" /* yacc.c:1646 */ +#line 844 "lev_comp.y" /* yacc.c:1646 */ { /* val > rn2(100) */ - add_opvars(splev, "iio", (long)(yyvsp[0].i), 100, SPO_RN2); + add_opvars(splev, "iio", + VA_PASS3((long)(yyvsp[0].i), 100, SPO_RN2)); (yyval.i) = SPO_JG; } -#line 3094 "y.tab.c" /* yacc.c:1646 */ +#line 3119 "y.tab.c" /* yacc.c:1646 */ break; case 135: -#line 826 "lev_comp.y" /* yacc.c:1646 */ +#line 851 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[-2].i); } -#line 3102 "y.tab.c" /* yacc.c:1646 */ +#line 3127 "y.tab.c" /* yacc.c:1646 */ break; case 136: -#line 830 "lev_comp.y" /* yacc.c:1646 */ +#line 855 "lev_comp.y" /* yacc.c:1646 */ { /* boolean, explicit foo != 0 */ - add_opvars(splev, "i", 0); + add_opvars(splev, "i", VA_PASS1(0)); (yyval.i) = SPO_JNE; } -#line 3112 "y.tab.c" /* yacc.c:1646 */ +#line 3137 "y.tab.c" /* yacc.c:1646 */ break; case 137: -#line 838 "lev_comp.y" /* yacc.c:1646 */ +#line 863 "lev_comp.y" /* yacc.c:1646 */ { is_inconstant_number = 0; } -#line 3120 "y.tab.c" /* yacc.c:1646 */ +#line 3145 "y.tab.c" /* yacc.c:1646 */ break; case 138: -#line 842 "lev_comp.y" /* yacc.c:1646 */ +#line 867 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *chkjmp; if (in_switch_statement > 0) @@ -3132,7 +3157,7 @@ yyreduce: switch_default_case = NULL; if (!is_inconstant_number) - add_opvars(splev, "o", SPO_RN2); + add_opvars(splev, "o", VA_PASS1(SPO_RN2)); is_inconstant_number = 0; chkjmp = New(struct opvar); @@ -3142,11 +3167,11 @@ yyreduce: add_opcode(splev, SPO_JMP, NULL); break_stmt_start(); } -#line 3146 "y.tab.c" /* yacc.c:1646 */ +#line 3171 "y.tab.c" /* yacc.c:1646 */ break; case 139: -#line 864 "lev_comp.y" /* yacc.c:1646 */ +#line 889 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *endjump = New(struct opvar); int i; @@ -3156,17 +3181,22 @@ yyreduce: add_opcode(splev, SPO_PUSH, endjump); add_opcode(splev, SPO_JMP, NULL); - set_opvar_int(switch_check_jump, splev->n_opcodes - switch_check_jump->vardata.l); + set_opvar_int(switch_check_jump, + splev->n_opcodes - switch_check_jump->vardata.l); for (i = 0; i < n_switch_case_list; i++) { - add_opvars(splev, "oio", SPO_COPY, switch_case_value[i], SPO_CMP); - set_opvar_int(switch_case_list[i], switch_case_list[i]->vardata.l - splev->n_opcodes-1); + add_opvars(splev, "oio", + VA_PASS3(SPO_COPY, + switch_case_value[i], SPO_CMP)); + set_opvar_int(switch_case_list[i], + switch_case_list[i]->vardata.l - splev->n_opcodes-1); add_opcode(splev, SPO_PUSH, switch_case_list[i]); add_opcode(splev, SPO_JE, NULL); } if (switch_default_case) { - set_opvar_int(switch_default_case, switch_default_case->vardata.l - splev->n_opcodes-1); + set_opvar_int(switch_default_case, + switch_default_case->vardata.l - splev->n_opcodes-1); add_opcode(splev, SPO_PUSH, switch_default_case); add_opcode(splev, SPO_JMP, NULL); } @@ -3180,11 +3210,11 @@ yyreduce: } -#line 3184 "y.tab.c" /* yacc.c:1646 */ +#line 3214 "y.tab.c" /* yacc.c:1646 */ break; case 142: -#line 904 "lev_comp.y" /* yacc.c:1646 */ +#line 934 "lev_comp.y" /* yacc.c:1646 */ { if (n_switch_case_list < MAX_SWITCH_CASES) { struct opvar *tmppush = New(struct opvar); @@ -3193,18 +3223,18 @@ yyreduce: switch_case_list[n_switch_case_list++] = tmppush; } else lc_error("Too many cases in a switch."); } -#line 3197 "y.tab.c" /* yacc.c:1646 */ +#line 3227 "y.tab.c" /* yacc.c:1646 */ break; case 143: -#line 913 "lev_comp.y" /* yacc.c:1646 */ +#line 943 "lev_comp.y" /* yacc.c:1646 */ { } -#line 3204 "y.tab.c" /* yacc.c:1646 */ +#line 3234 "y.tab.c" /* yacc.c:1646 */ break; case 144: -#line 916 "lev_comp.y" /* yacc.c:1646 */ +#line 946 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *tmppush = New(struct opvar); @@ -3214,18 +3244,18 @@ yyreduce: set_opvar_int(tmppush, splev->n_opcodes); switch_default_case = tmppush; } -#line 3218 "y.tab.c" /* yacc.c:1646 */ +#line 3248 "y.tab.c" /* yacc.c:1646 */ break; case 145: -#line 926 "lev_comp.y" /* yacc.c:1646 */ +#line 956 "lev_comp.y" /* yacc.c:1646 */ { } -#line 3225 "y.tab.c" /* yacc.c:1646 */ +#line 3255 "y.tab.c" /* yacc.c:1646 */ break; case 146: -#line 931 "lev_comp.y" /* yacc.c:1646 */ +#line 961 "lev_comp.y" /* yacc.c:1646 */ { if (!allow_break_statements) lc_error("Cannot use BREAK outside a statement block."); @@ -3233,11 +3263,11 @@ yyreduce: break_stmt_new(splev, splev->n_opcodes); } } -#line 3237 "y.tab.c" /* yacc.c:1646 */ +#line 3267 "y.tab.c" /* yacc.c:1646 */ break; case 149: -#line 945 "lev_comp.y" /* yacc.c:1646 */ +#line 975 "lev_comp.y" /* yacc.c:1646 */ { char buf[256], buf2[256]; @@ -3249,17 +3279,23 @@ yyreduce: /* first, define a variable for the for-loop end value */ snprintf(buf, 255, "%s end", (yyvsp[-4].map)); /* the value of which is already in stack (the 2nd math_expr) */ - add_opvars(splev, "iso", 0, buf, SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, buf, SPO_VAR_INIT)); - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-4].map), SPOVAR_INT); + variable_definitions = add_vardef_type(variable_definitions, + (yyvsp[-4].map), SPOVAR_INT); /* define the for-loop variable. value is in stack (1st math_expr) */ - add_opvars(splev, "iso", 0, (yyvsp[-4].map), SPO_VAR_INIT); + add_opvars(splev, "iso", VA_PASS3(0, (yyvsp[-4].map), SPO_VAR_INIT)); /* calculate value for the loop "step" variable */ snprintf(buf2, 255, "%s step", (yyvsp[-4].map)); - add_opvars(splev, "vvo", buf, (yyvsp[-4].map), SPO_MATH_SUB); /* end - start */ - add_opvars(splev, "o", SPO_MATH_SIGN); /* sign of that */ - add_opvars(splev, "iso", 0, buf2, SPO_VAR_INIT); /* save the sign into the step var */ + /* end - start */ + add_opvars(splev, "vvo", + VA_PASS3(buf, (yyvsp[-4].map), SPO_MATH_SUB)); + /* sign of that */ + add_opvars(splev, "o", VA_PASS1(SPO_MATH_SIGN)); + /* save the sign into the step var */ + add_opvars(splev, "iso", + VA_PASS3(0, buf2, SPO_VAR_INIT)); forloop_list[n_forloops].varname = strdup((yyvsp[-4].map)); forloop_list[n_forloops].jmp_point = splev->n_opcodes; @@ -3267,42 +3303,50 @@ yyreduce: n_forloops++; Free((yyvsp[-4].map)); } -#line 3271 "y.tab.c" /* yacc.c:1646 */ +#line 3307 "y.tab.c" /* yacc.c:1646 */ break; case 150: -#line 977 "lev_comp.y" /* yacc.c:1646 */ +#line 1013 "lev_comp.y" /* yacc.c:1646 */ { /* nothing */ break_stmt_start(); } -#line 3280 "y.tab.c" /* yacc.c:1646 */ +#line 3316 "y.tab.c" /* yacc.c:1646 */ break; case 151: -#line 982 "lev_comp.y" /* yacc.c:1646 */ +#line 1018 "lev_comp.y" /* yacc.c:1646 */ { char buf[256], buf2[256]; n_forloops--; snprintf(buf, 255, "%s step", forloop_list[n_forloops].varname); snprintf(buf2, 255, "%s end", forloop_list[n_forloops].varname); /* compare for-loop var to end value */ - add_opvars(splev, "vvo", forloop_list[n_forloops].varname, buf2, SPO_CMP); + add_opvars(splev, "vvo", + VA_PASS3(forloop_list[n_forloops].varname, + buf2, SPO_CMP)); /* var + step */ - add_opvars(splev, "vvo", buf, - forloop_list[n_forloops].varname, SPO_MATH_ADD); + add_opvars(splev, "vvo", + VA_PASS3(buf, forloop_list[n_forloops].varname, + SPO_MATH_ADD)); /* for-loop var = (for-loop var + step) */ - add_opvars(splev, "iso", 0, forloop_list[n_forloops].varname, SPO_VAR_INIT); + add_opvars(splev, "iso", + VA_PASS3(0, forloop_list[n_forloops].varname, + SPO_VAR_INIT)); /* jump back if compared values were not equal */ - add_opvars(splev, "io", forloop_list[n_forloops].jmp_point - splev->n_opcodes - 1, SPO_JNE); + add_opvars(splev, "io", + VA_PASS2( + forloop_list[n_forloops].jmp_point - splev->n_opcodes - 1, + SPO_JNE)); Free(forloop_list[n_forloops].varname); break_stmt_end(splev); } -#line 3302 "y.tab.c" /* yacc.c:1646 */ +#line 3346 "y.tab.c" /* yacc.c:1646 */ break; case 152: -#line 1002 "lev_comp.y" /* yacc.c:1646 */ +#line 1046 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *tmppush = New(struct opvar); @@ -3313,18 +3357,18 @@ yyreduce: set_opvar_int(tmppush, splev->n_opcodes); if_list[n_if_list++] = tmppush; - add_opvars(splev, "o", SPO_DEC); + add_opvars(splev, "o", VA_PASS1(SPO_DEC)); break_stmt_start(); } -#line 3320 "y.tab.c" /* yacc.c:1646 */ +#line 3364 "y.tab.c" /* yacc.c:1646 */ break; case 153: -#line 1016 "lev_comp.y" /* yacc.c:1646 */ +#line 1060 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *tmppush; - add_opvars(splev, "oio", SPO_COPY, 0, SPO_CMP); + add_opvars(splev, "oio", VA_PASS3(SPO_COPY, 0, SPO_CMP)); tmppush = (struct opvar *) if_list[--n_if_list]; set_opvar_int(tmppush, tmppush->vardata.l - splev->n_opcodes-1); @@ -3333,11 +3377,11 @@ yyreduce: add_opcode(splev, SPO_POP, NULL); /* get rid of the count value in stack */ break_stmt_end(splev); } -#line 3337 "y.tab.c" /* yacc.c:1646 */ +#line 3381 "y.tab.c" /* yacc.c:1646 */ break; case 154: -#line 1031 "lev_comp.y" /* yacc.c:1646 */ +#line 1075 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *tmppush2 = New(struct opvar); @@ -3357,11 +3401,11 @@ yyreduce: add_opcode(splev, reverse_jmp_opcode( (yyvsp[-1].i) ), NULL); } -#line 3361 "y.tab.c" /* yacc.c:1646 */ +#line 3405 "y.tab.c" /* yacc.c:1646 */ break; case 155: -#line 1051 "lev_comp.y" /* yacc.c:1646 */ +#line 1095 "lev_comp.y" /* yacc.c:1646 */ { if (n_if_list > 0) { struct opvar *tmppush; @@ -3369,11 +3413,11 @@ yyreduce: set_opvar_int(tmppush, splev->n_opcodes - tmppush->vardata.l); } else lc_error("IF: Huh?! No start address?"); } -#line 3373 "y.tab.c" /* yacc.c:1646 */ +#line 3417 "y.tab.c" /* yacc.c:1646 */ break; case 156: -#line 1061 "lev_comp.y" /* yacc.c:1646 */ +#line 1105 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *tmppush2 = New(struct opvar); @@ -3393,19 +3437,19 @@ yyreduce: add_opcode(splev, reverse_jmp_opcode( (yyvsp[0].i) ), NULL); } -#line 3397 "y.tab.c" /* yacc.c:1646 */ +#line 3441 "y.tab.c" /* yacc.c:1646 */ break; case 157: -#line 1081 "lev_comp.y" /* yacc.c:1646 */ +#line 1125 "lev_comp.y" /* yacc.c:1646 */ { /* do nothing */ } -#line 3405 "y.tab.c" /* yacc.c:1646 */ +#line 3449 "y.tab.c" /* yacc.c:1646 */ break; case 158: -#line 1087 "lev_comp.y" /* yacc.c:1646 */ +#line 1131 "lev_comp.y" /* yacc.c:1646 */ { if (n_if_list > 0) { struct opvar *tmppush; @@ -3413,11 +3457,11 @@ yyreduce: set_opvar_int(tmppush, splev->n_opcodes - tmppush->vardata.l); } else lc_error("IF: Huh?! No start address?"); } -#line 3417 "y.tab.c" /* yacc.c:1646 */ +#line 3461 "y.tab.c" /* yacc.c:1646 */ break; case 159: -#line 1095 "lev_comp.y" /* yacc.c:1646 */ +#line 1139 "lev_comp.y" /* yacc.c:1646 */ { if (n_if_list > 0) { struct opvar *tmppush = New(struct opvar); @@ -3434,11 +3478,11 @@ yyreduce: if_list[n_if_list++] = tmppush; } else lc_error("IF: Huh?! No else-part address?"); } -#line 3438 "y.tab.c" /* yacc.c:1646 */ +#line 3482 "y.tab.c" /* yacc.c:1646 */ break; case 160: -#line 1112 "lev_comp.y" /* yacc.c:1646 */ +#line 1156 "lev_comp.y" /* yacc.c:1646 */ { if (n_if_list > 0) { struct opvar *tmppush; @@ -3446,146 +3490,155 @@ yyreduce: set_opvar_int(tmppush, splev->n_opcodes - tmppush->vardata.l); } else lc_error("IF: Huh?! No end address?"); } -#line 3450 "y.tab.c" /* yacc.c:1646 */ +#line 3494 "y.tab.c" /* yacc.c:1646 */ break; case 161: -#line 1122 "lev_comp.y" /* yacc.c:1646 */ +#line 1166 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_MESSAGE); + add_opvars(splev, "o", VA_PASS1(SPO_MESSAGE)); } -#line 3458 "y.tab.c" /* yacc.c:1646 */ +#line 3502 "y.tab.c" /* yacc.c:1646 */ break; case 162: -#line 1128 "lev_comp.y" /* yacc.c:1646 */ +#line 1172 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iiiiiio", -1, 0, -1, -1, -1, -1, SPO_CORRIDOR); + add_opvars(splev, "iiiiiio", + VA_PASS7(-1, 0, -1, -1, -1, -1, SPO_CORRIDOR)); } -#line 3466 "y.tab.c" /* yacc.c:1646 */ +#line 3511 "y.tab.c" /* yacc.c:1646 */ break; case 163: -#line 1132 "lev_comp.y" /* yacc.c:1646 */ +#line 1177 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iiiiiio", -1, (yyvsp[0].i), -1, -1, -1, -1, SPO_CORRIDOR); + add_opvars(splev, "iiiiiio", + VA_PASS7(-1, (yyvsp[0].i), -1, -1, -1, -1, SPO_CORRIDOR)); } -#line 3474 "y.tab.c" /* yacc.c:1646 */ +#line 3520 "y.tab.c" /* yacc.c:1646 */ break; case 164: -#line 1136 "lev_comp.y" /* yacc.c:1646 */ +#line 1182 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iiiiiio", -1, -1, -1, -1, -1, -1, SPO_CORRIDOR); + add_opvars(splev, "iiiiiio", + VA_PASS7(-1, -1, -1, -1, -1, -1, SPO_CORRIDOR)); } -#line 3482 "y.tab.c" /* yacc.c:1646 */ +#line 3529 "y.tab.c" /* yacc.c:1646 */ break; case 165: -#line 1142 "lev_comp.y" /* yacc.c:1646 */ +#line 1189 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiiiiio", - (yyvsp[-2].corpos).room, (yyvsp[-2].corpos).door, (yyvsp[-2].corpos).wall, - (yyvsp[0].corpos).room, (yyvsp[0].corpos).door, (yyvsp[0].corpos).wall, - SPO_CORRIDOR); + VA_PASS7((yyvsp[-2].corpos).room, (yyvsp[-2].corpos).door, (yyvsp[-2].corpos).wall, + (yyvsp[0].corpos).room, (yyvsp[0].corpos).door, (yyvsp[0].corpos).wall, + SPO_CORRIDOR)); } -#line 3493 "y.tab.c" /* yacc.c:1646 */ +#line 3540 "y.tab.c" /* yacc.c:1646 */ break; case 166: -#line 1149 "lev_comp.y" /* yacc.c:1646 */ +#line 1196 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiiiiio", - (yyvsp[-2].corpos).room, (yyvsp[-2].corpos).door, (yyvsp[-2].corpos).wall, - -1, -1, (long)(yyvsp[0].i), - SPO_CORRIDOR); + VA_PASS7((yyvsp[-2].corpos).room, (yyvsp[-2].corpos).door, (yyvsp[-2].corpos).wall, + -1, -1, (long)(yyvsp[0].i), + SPO_CORRIDOR)); } -#line 3504 "y.tab.c" /* yacc.c:1646 */ +#line 3551 "y.tab.c" /* yacc.c:1646 */ break; case 167: -#line 1158 "lev_comp.y" /* yacc.c:1646 */ +#line 1205 "lev_comp.y" /* yacc.c:1646 */ { (yyval.corpos).room = (yyvsp[-5].i); (yyval.corpos).wall = (yyvsp[-3].i); (yyval.corpos).door = (yyvsp[-1].i); } -#line 3514 "y.tab.c" /* yacc.c:1646 */ +#line 3561 "y.tab.c" /* yacc.c:1646 */ break; case 168: -#line 1166 "lev_comp.y" /* yacc.c:1646 */ +#line 1213 "lev_comp.y" /* yacc.c:1646 */ { if (((yyvsp[-2].i) < 100) && ((yyvsp[-3].i) == OROOM)) lc_error("Only typed rooms can have a chance."); else { - add_opvars(splev, "iii", (long)(yyvsp[-3].i), (long)(yyvsp[-2].i), (long)(yyvsp[0].i)); + add_opvars(splev, "iii", + VA_PASS3((long)(yyvsp[-3].i), (long)(yyvsp[-2].i), (long)(yyvsp[0].i))); } } -#line 3526 "y.tab.c" /* yacc.c:1646 */ +#line 3574 "y.tab.c" /* yacc.c:1646 */ break; case 169: -#line 1176 "lev_comp.y" /* yacc.c:1646 */ +#line 1224 "lev_comp.y" /* yacc.c:1646 */ { - long flags = (yyvsp[0].i); - if (flags == -1) flags = (1 << 0); - add_opvars(splev, "iiiiiiio", flags, ERR, ERR, - (yyvsp[-3].crd).x, (yyvsp[-3].crd).y, (yyvsp[-1].sze).width, (yyvsp[-1].sze).height, SPO_SUBROOM); + long rflags = (yyvsp[0].i); + + if (rflags == -1) rflags = (1 << 0); + add_opvars(splev, "iiiiiiio", + VA_PASS8(rflags, ERR, ERR, + (yyvsp[-3].crd).x, (yyvsp[-3].crd).y, (yyvsp[-1].sze).width, (yyvsp[-1].sze).height, + SPO_SUBROOM)); break_stmt_start(); } -#line 3538 "y.tab.c" /* yacc.c:1646 */ +#line 3589 "y.tab.c" /* yacc.c:1646 */ break; case 170: -#line 1184 "lev_comp.y" /* yacc.c:1646 */ +#line 1235 "lev_comp.y" /* yacc.c:1646 */ { break_stmt_end(splev); add_opcode(splev, SPO_ENDROOM, NULL); } -#line 3547 "y.tab.c" /* yacc.c:1646 */ +#line 3598 "y.tab.c" /* yacc.c:1646 */ break; case 171: -#line 1191 "lev_comp.y" /* yacc.c:1646 */ +#line 1242 "lev_comp.y" /* yacc.c:1646 */ { - long flags = (yyvsp[-2].i); - if (flags == -1) flags = (1 << 0); - add_opvars(splev, "iiiiiiio", flags, - (yyvsp[-3].crd).x, (yyvsp[-3].crd).y, (yyvsp[-5].crd).x, (yyvsp[-5].crd).y, - (yyvsp[-1].sze).width, (yyvsp[-1].sze).height, SPO_ROOM); + long rflags = (yyvsp[-2].i); + + if (rflags == -1) rflags = (1 << 0); + add_opvars(splev, "iiiiiiio", + VA_PASS8(rflags, + (yyvsp[-3].crd).x, (yyvsp[-3].crd).y, (yyvsp[-5].crd).x, (yyvsp[-5].crd).y, + (yyvsp[-1].sze).width, (yyvsp[-1].sze).height, SPO_ROOM)); break_stmt_start(); } -#line 3560 "y.tab.c" /* yacc.c:1646 */ +#line 3613 "y.tab.c" /* yacc.c:1646 */ break; case 172: -#line 1200 "lev_comp.y" /* yacc.c:1646 */ +#line 1253 "lev_comp.y" /* yacc.c:1646 */ { break_stmt_end(splev); add_opcode(splev, SPO_ENDROOM, NULL); } -#line 3569 "y.tab.c" /* yacc.c:1646 */ +#line 3622 "y.tab.c" /* yacc.c:1646 */ break; case 173: -#line 1207 "lev_comp.y" /* yacc.c:1646 */ +#line 1260 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 1; } -#line 3577 "y.tab.c" /* yacc.c:1646 */ +#line 3630 "y.tab.c" /* yacc.c:1646 */ break; case 174: -#line 1211 "lev_comp.y" /* yacc.c:1646 */ +#line 1264 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 3585 "y.tab.c" /* yacc.c:1646 */ +#line 3638 "y.tab.c" /* yacc.c:1646 */ break; case 175: -#line 1217 "lev_comp.y" /* yacc.c:1646 */ +#line 1270 "lev_comp.y" /* yacc.c:1646 */ { if ( (yyvsp[-3].i) < 1 || (yyvsp[-3].i) > 5 || (yyvsp[-1].i) < 1 || (yyvsp[-1].i) > 5 ) { @@ -3595,19 +3648,19 @@ yyreduce: (yyval.crd).y = (yyvsp[-1].i); } } -#line 3599 "y.tab.c" /* yacc.c:1646 */ +#line 3652 "y.tab.c" /* yacc.c:1646 */ break; case 176: -#line 1227 "lev_comp.y" /* yacc.c:1646 */ +#line 1280 "lev_comp.y" /* yacc.c:1646 */ { (yyval.crd).x = (yyval.crd).y = ERR; } -#line 3607 "y.tab.c" /* yacc.c:1646 */ +#line 3660 "y.tab.c" /* yacc.c:1646 */ break; case 177: -#line 1233 "lev_comp.y" /* yacc.c:1646 */ +#line 1286 "lev_comp.y" /* yacc.c:1646 */ { if ( (yyvsp[-3].i) < 0 || (yyvsp[-1].i) < 0) { lc_error("Invalid subroom position (%li,%li)!", (yyvsp[-3].i), (yyvsp[-1].i)); @@ -3616,340 +3669,350 @@ yyreduce: (yyval.crd).y = (yyvsp[-1].i); } } -#line 3620 "y.tab.c" /* yacc.c:1646 */ +#line 3673 "y.tab.c" /* yacc.c:1646 */ break; case 178: -#line 1242 "lev_comp.y" /* yacc.c:1646 */ +#line 1295 "lev_comp.y" /* yacc.c:1646 */ { (yyval.crd).x = (yyval.crd).y = ERR; } -#line 3628 "y.tab.c" /* yacc.c:1646 */ +#line 3681 "y.tab.c" /* yacc.c:1646 */ break; case 179: -#line 1248 "lev_comp.y" /* yacc.c:1646 */ +#line 1301 "lev_comp.y" /* yacc.c:1646 */ { (yyval.crd).x = (yyvsp[-3].i); (yyval.crd).y = (yyvsp[-1].i); } -#line 3637 "y.tab.c" /* yacc.c:1646 */ +#line 3690 "y.tab.c" /* yacc.c:1646 */ break; case 180: -#line 1253 "lev_comp.y" /* yacc.c:1646 */ +#line 1306 "lev_comp.y" /* yacc.c:1646 */ { (yyval.crd).x = (yyval.crd).y = ERR; } -#line 3645 "y.tab.c" /* yacc.c:1646 */ +#line 3698 "y.tab.c" /* yacc.c:1646 */ break; case 181: -#line 1259 "lev_comp.y" /* yacc.c:1646 */ +#line 1312 "lev_comp.y" /* yacc.c:1646 */ { (yyval.sze).width = (yyvsp[-3].i); (yyval.sze).height = (yyvsp[-1].i); } -#line 3654 "y.tab.c" /* yacc.c:1646 */ +#line 3707 "y.tab.c" /* yacc.c:1646 */ break; case 182: -#line 1264 "lev_comp.y" /* yacc.c:1646 */ +#line 1317 "lev_comp.y" /* yacc.c:1646 */ { (yyval.sze).height = (yyval.sze).width = ERR; } -#line 3662 "y.tab.c" /* yacc.c:1646 */ +#line 3715 "y.tab.c" /* yacc.c:1646 */ break; case 183: -#line 1270 "lev_comp.y" /* yacc.c:1646 */ +#line 1323 "lev_comp.y" /* yacc.c:1646 */ { /* ERR means random here */ if ((yyvsp[-2].i) == ERR && (yyvsp[0].i) != ERR) { lc_error("If the door wall is random, so must be its pos!"); } else { - add_opvars(splev, "iiiio", (long)(yyvsp[0].i), (long)(yyvsp[-4].i), (long)(yyvsp[-6].i), (long)(yyvsp[-2].i), SPO_ROOM_DOOR); + add_opvars(splev, "iiiio", + VA_PASS5((long)(yyvsp[0].i), (long)(yyvsp[-4].i), (long)(yyvsp[-6].i), + (long)(yyvsp[-2].i), SPO_ROOM_DOOR)); } } -#line 3675 "y.tab.c" /* yacc.c:1646 */ +#line 3730 "y.tab.c" /* yacc.c:1646 */ break; case 184: -#line 1279 "lev_comp.y" /* yacc.c:1646 */ +#line 1334 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (long)(yyvsp[-2].i), SPO_DOOR); + add_opvars(splev, "io", VA_PASS2((long)(yyvsp[-2].i), SPO_DOOR)); } -#line 3683 "y.tab.c" /* yacc.c:1646 */ +#line 3738 "y.tab.c" /* yacc.c:1646 */ break; case 189: -#line 1293 "lev_comp.y" /* yacc.c:1646 */ +#line 1348 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 3691 "y.tab.c" /* yacc.c:1646 */ +#line 3746 "y.tab.c" /* yacc.c:1646 */ break; case 190: -#line 1297 "lev_comp.y" /* yacc.c:1646 */ +#line 1352 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = ((yyvsp[-2].i) | (yyvsp[0].i)); } -#line 3699 "y.tab.c" /* yacc.c:1646 */ +#line 3754 "y.tab.c" /* yacc.c:1646 */ break; case 193: -#line 1307 "lev_comp.y" /* yacc.c:1646 */ +#line 1362 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ciisiio", 0, 0, 1, (char *)0, 0, 0, SPO_MAP); + add_opvars(splev, "ciisiio", + VA_PASS7(0, 0, 1, (char *)0, 0, 0, SPO_MAP)); max_x_map = COLNO-1; max_y_map = ROWNO; } -#line 3709 "y.tab.c" /* yacc.c:1646 */ - break; - - case 194: -#line 1313 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "cii", SP_COORD_PACK(((yyvsp[-4].i)),((yyvsp[-2].i))), 1, (long)(yyvsp[-1].i)); - scan_map((yyvsp[0].map), splev); - Free((yyvsp[0].map)); - } -#line 3719 "y.tab.c" /* yacc.c:1646 */ - break; - - case 195: -#line 1319 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "ii", 2, (long)(yyvsp[-1].i)); - scan_map((yyvsp[0].map), splev); - Free((yyvsp[0].map)); - } -#line 3729 "y.tab.c" /* yacc.c:1646 */ - break; - - case 200: -#line 1335 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "io", 0, SPO_MONSTER); - } -#line 3737 "y.tab.c" /* yacc.c:1646 */ - break; - - case 201: -#line 1339 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "io", 1, SPO_MONSTER); - in_container_obj++; - break_stmt_start(); - } -#line 3747 "y.tab.c" /* yacc.c:1646 */ - break; - - case 202: -#line 1345 "lev_comp.y" /* yacc.c:1646 */ - { - break_stmt_end(splev); - in_container_obj--; - add_opvars(splev, "o", SPO_END_MONINVENT); - } -#line 3757 "y.tab.c" /* yacc.c:1646 */ - break; - - case 203: -#line 1353 "lev_comp.y" /* yacc.c:1646 */ - { - /* nothing */ - } #line 3765 "y.tab.c" /* yacc.c:1646 */ break; + case 194: +#line 1369 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "cii", + VA_PASS3(SP_COORD_PACK(((yyvsp[-4].i)),((yyvsp[-2].i))), + 1, (long)(yyvsp[-1].i))); + scan_map((yyvsp[0].map), splev); + Free((yyvsp[0].map)); + } +#line 3777 "y.tab.c" /* yacc.c:1646 */ + break; + + case 195: +#line 1377 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "ii", VA_PASS2(2, (long)(yyvsp[-1].i))); + scan_map((yyvsp[0].map), splev); + Free((yyvsp[0].map)); + } +#line 3787 "y.tab.c" /* yacc.c:1646 */ + break; + + case 200: +#line 1393 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "io", VA_PASS2(0, SPO_MONSTER)); + } +#line 3795 "y.tab.c" /* yacc.c:1646 */ + break; + + case 201: +#line 1397 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "io", VA_PASS2(1, SPO_MONSTER)); + in_container_obj++; + break_stmt_start(); + } +#line 3805 "y.tab.c" /* yacc.c:1646 */ + break; + + case 202: +#line 1403 "lev_comp.y" /* yacc.c:1646 */ + { + break_stmt_end(splev); + in_container_obj--; + add_opvars(splev, "o", VA_PASS1(SPO_END_MONINVENT)); + } +#line 3815 "y.tab.c" /* yacc.c:1646 */ + break; + + case 203: +#line 1411 "lev_comp.y" /* yacc.c:1646 */ + { + /* nothing */ + } +#line 3823 "y.tab.c" /* yacc.c:1646 */ + break; + case 204: -#line 1359 "lev_comp.y" /* yacc.c:1646 */ +#line 1417 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *stopit = New(struct opvar); set_opvar_int(stopit, SP_M_V_END); add_opcode(splev, SPO_PUSH, stopit); (yyval.i) = 0x0000; } -#line 3776 "y.tab.c" /* yacc.c:1646 */ +#line 3834 "y.tab.c" /* yacc.c:1646 */ break; case 205: -#line 1366 "lev_comp.y" /* yacc.c:1646 */ +#line 1424 "lev_comp.y" /* yacc.c:1646 */ { if (( (yyvsp[-2].i) & (yyvsp[0].i) )) lc_error("MONSTER extra info defined twice."); (yyval.i) = ( (yyvsp[-2].i) | (yyvsp[0].i) ); } -#line 3786 "y.tab.c" /* yacc.c:1646 */ +#line 3844 "y.tab.c" /* yacc.c:1646 */ break; case 206: -#line 1374 "lev_comp.y" /* yacc.c:1646 */ +#line 1432 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_M_V_NAME); + add_opvars(splev, "i", VA_PASS1(SP_M_V_NAME)); (yyval.i) = 0x0001; } -#line 3795 "y.tab.c" /* yacc.c:1646 */ +#line 3853 "y.tab.c" /* yacc.c:1646 */ break; case 207: -#line 1379 "lev_comp.y" /* yacc.c:1646 */ +#line 1437 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_M_V_PEACEFUL); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[0].i), SP_M_V_PEACEFUL)); (yyval.i) = 0x0002; } -#line 3804 "y.tab.c" /* yacc.c:1646 */ +#line 3863 "y.tab.c" /* yacc.c:1646 */ break; case 208: -#line 1384 "lev_comp.y" /* yacc.c:1646 */ +#line 1443 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_M_V_ASLEEP); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[0].i), SP_M_V_ASLEEP)); (yyval.i) = 0x0004; } -#line 3813 "y.tab.c" /* yacc.c:1646 */ +#line 3873 "y.tab.c" /* yacc.c:1646 */ break; case 209: -#line 1389 "lev_comp.y" /* yacc.c:1646 */ +#line 1449 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_M_V_ALIGN); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[0].i), SP_M_V_ALIGN)); (yyval.i) = 0x0008; } -#line 3822 "y.tab.c" /* yacc.c:1646 */ +#line 3883 "y.tab.c" /* yacc.c:1646 */ break; case 210: -#line 1394 "lev_comp.y" /* yacc.c:1646 */ +#line 1455 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", (long)(yyvsp[-1].i), SP_M_V_APPEAR); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[-1].i), SP_M_V_APPEAR)); (yyval.i) = 0x0010; } -#line 3831 "y.tab.c" /* yacc.c:1646 */ +#line 3893 "y.tab.c" /* yacc.c:1646 */ break; case 211: -#line 1399 "lev_comp.y" /* yacc.c:1646 */ +#line 1461 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_FEMALE); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_FEMALE)); (yyval.i) = 0x0020; } -#line 3840 "y.tab.c" /* yacc.c:1646 */ +#line 3902 "y.tab.c" /* yacc.c:1646 */ break; case 212: -#line 1404 "lev_comp.y" /* yacc.c:1646 */ +#line 1466 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_INVIS); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_INVIS)); (yyval.i) = 0x0040; } -#line 3849 "y.tab.c" /* yacc.c:1646 */ +#line 3911 "y.tab.c" /* yacc.c:1646 */ break; case 213: -#line 1409 "lev_comp.y" /* yacc.c:1646 */ +#line 1471 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_CANCELLED); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_CANCELLED)); (yyval.i) = 0x0080; } -#line 3858 "y.tab.c" /* yacc.c:1646 */ +#line 3920 "y.tab.c" /* yacc.c:1646 */ break; case 214: -#line 1414 "lev_comp.y" /* yacc.c:1646 */ +#line 1476 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_REVIVED); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_REVIVED)); (yyval.i) = 0x0100; } -#line 3867 "y.tab.c" /* yacc.c:1646 */ +#line 3929 "y.tab.c" /* yacc.c:1646 */ break; case 215: -#line 1419 "lev_comp.y" /* yacc.c:1646 */ +#line 1481 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_AVENGE); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_AVENGE)); (yyval.i) = 0x0200; } -#line 3876 "y.tab.c" /* yacc.c:1646 */ +#line 3938 "y.tab.c" /* yacc.c:1646 */ break; case 216: -#line 1424 "lev_comp.y" /* yacc.c:1646 */ +#line 1486 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_M_V_FLEEING); + add_opvars(splev, "i", VA_PASS1(SP_M_V_FLEEING)); (yyval.i) = 0x0400; } -#line 3885 "y.tab.c" /* yacc.c:1646 */ +#line 3947 "y.tab.c" /* yacc.c:1646 */ break; case 217: -#line 1429 "lev_comp.y" /* yacc.c:1646 */ +#line 1491 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_M_V_BLINDED); + add_opvars(splev, "i", VA_PASS1(SP_M_V_BLINDED)); (yyval.i) = 0x0800; } -#line 3894 "y.tab.c" /* yacc.c:1646 */ +#line 3956 "y.tab.c" /* yacc.c:1646 */ break; case 218: -#line 1434 "lev_comp.y" /* yacc.c:1646 */ +#line 1496 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_M_V_PARALYZED); + add_opvars(splev, "i", VA_PASS1(SP_M_V_PARALYZED)); (yyval.i) = 0x1000; } -#line 3903 "y.tab.c" /* yacc.c:1646 */ +#line 3965 "y.tab.c" /* yacc.c:1646 */ break; case 219: -#line 1439 "lev_comp.y" /* yacc.c:1646 */ +#line 1501 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_STUNNED); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_STUNNED)); (yyval.i) = 0x2000; } -#line 3912 "y.tab.c" /* yacc.c:1646 */ +#line 3974 "y.tab.c" /* yacc.c:1646 */ break; case 220: -#line 1444 "lev_comp.y" /* yacc.c:1646 */ +#line 1506 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_M_V_CONFUSED); + add_opvars(splev, "ii", VA_PASS2(1, SP_M_V_CONFUSED)); (yyval.i) = 0x4000; } -#line 3921 "y.tab.c" /* yacc.c:1646 */ +#line 3983 "y.tab.c" /* yacc.c:1646 */ break; case 221: -#line 1449 "lev_comp.y" /* yacc.c:1646 */ +#line 1511 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_M_V_SEENTRAPS); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[0].i), SP_M_V_SEENTRAPS)); (yyval.i) = 0x8000; } -#line 3930 "y.tab.c" /* yacc.c:1646 */ +#line 3993 "y.tab.c" /* yacc.c:1646 */ break; case 222: -#line 1456 "lev_comp.y" /* yacc.c:1646 */ +#line 1519 "lev_comp.y" /* yacc.c:1646 */ { int token = get_trap_type((yyvsp[0].map)); if (token == ERR || token == 0) lc_error("Unknown trap type '%s'!", (yyvsp[0].map)); (yyval.i) = (1L << (token - 1)); } -#line 3941 "y.tab.c" /* yacc.c:1646 */ +#line 4004 "y.tab.c" /* yacc.c:1646 */ break; case 223: -#line 1463 "lev_comp.y" /* yacc.c:1646 */ +#line 1526 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (long) ~0; } -#line 3949 "y.tab.c" /* yacc.c:1646 */ +#line 4012 "y.tab.c" /* yacc.c:1646 */ break; case 224: -#line 1467 "lev_comp.y" /* yacc.c:1646 */ +#line 1530 "lev_comp.y" /* yacc.c:1646 */ { int token = get_trap_type((yyvsp[-2].map)); if (token == ERR || token == 0) @@ -3960,231 +4023,233 @@ yyreduce: (yyval.i) = ((1L << (token - 1)) | (yyvsp[0].i)); } -#line 3964 "y.tab.c" /* yacc.c:1646 */ +#line 4027 "y.tab.c" /* yacc.c:1646 */ break; case 225: -#line 1480 "lev_comp.y" /* yacc.c:1646 */ +#line 1543 "lev_comp.y" /* yacc.c:1646 */ { long cnt = 0; if (in_container_obj) cnt |= SP_OBJ_CONTENT; - add_opvars(splev, "io", cnt, SPO_OBJECT); + add_opvars(splev, "io", VA_PASS2(cnt, SPO_OBJECT)); } -#line 3974 "y.tab.c" /* yacc.c:1646 */ +#line 4037 "y.tab.c" /* yacc.c:1646 */ break; case 226: -#line 1486 "lev_comp.y" /* yacc.c:1646 */ +#line 1549 "lev_comp.y" /* yacc.c:1646 */ { long cnt = SP_OBJ_CONTAINER; if (in_container_obj) cnt |= SP_OBJ_CONTENT; - add_opvars(splev, "io", cnt, SPO_OBJECT); + add_opvars(splev, "io", VA_PASS2(cnt, SPO_OBJECT)); in_container_obj++; break_stmt_start(); } -#line 3986 "y.tab.c" /* yacc.c:1646 */ +#line 4049 "y.tab.c" /* yacc.c:1646 */ break; case 227: -#line 1494 "lev_comp.y" /* yacc.c:1646 */ +#line 1557 "lev_comp.y" /* yacc.c:1646 */ { break_stmt_end(splev); in_container_obj--; add_opcode(splev, SPO_POP_CONTAINER, NULL); } -#line 3996 "y.tab.c" /* yacc.c:1646 */ +#line 4059 "y.tab.c" /* yacc.c:1646 */ break; case 228: -#line 1502 "lev_comp.y" /* yacc.c:1646 */ +#line 1565 "lev_comp.y" /* yacc.c:1646 */ { if (( (yyvsp[0].i) & 0x4000) && in_container_obj) lc_error("Object cannot have a coord when contained."); else if (!( (yyvsp[0].i) & 0x4000) && !in_container_obj) lc_error("Object needs a coord when not contained."); } -#line 4005 "y.tab.c" /* yacc.c:1646 */ +#line 4068 "y.tab.c" /* yacc.c:1646 */ break; case 229: -#line 1509 "lev_comp.y" /* yacc.c:1646 */ +#line 1572 "lev_comp.y" /* yacc.c:1646 */ { struct opvar *stopit = New(struct opvar); set_opvar_int(stopit, SP_O_V_END); add_opcode(splev, SPO_PUSH, stopit); (yyval.i) = 0x00; } -#line 4016 "y.tab.c" /* yacc.c:1646 */ +#line 4079 "y.tab.c" /* yacc.c:1646 */ break; case 230: -#line 1516 "lev_comp.y" /* yacc.c:1646 */ +#line 1579 "lev_comp.y" /* yacc.c:1646 */ { if (( (yyvsp[-2].i) & (yyvsp[0].i) )) lc_error("OBJECT extra info '%s' defined twice.", curr_token); (yyval.i) = ( (yyvsp[-2].i) | (yyvsp[0].i) ); } -#line 4026 "y.tab.c" /* yacc.c:1646 */ - break; - - case 231: -#line 1524 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_O_V_CURSE); - (yyval.i) = 0x0001; - } -#line 4035 "y.tab.c" /* yacc.c:1646 */ - break; - - case 232: -#line 1529 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", SP_O_V_CORPSENM); - (yyval.i) = 0x0002; - } -#line 4044 "y.tab.c" /* yacc.c:1646 */ - break; - - case 233: -#line 1534 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", SP_O_V_SPE); - (yyval.i) = 0x0004; - } -#line 4053 "y.tab.c" /* yacc.c:1646 */ - break; - - case 234: -#line 1539 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", SP_O_V_NAME); - (yyval.i) = 0x0008; - } -#line 4062 "y.tab.c" /* yacc.c:1646 */ - break; - - case 235: -#line 1544 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", SP_O_V_QUAN); - (yyval.i) = 0x0010; - } -#line 4071 "y.tab.c" /* yacc.c:1646 */ - break; - - case 236: -#line 1549 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "ii", 1, SP_O_V_BURIED); - (yyval.i) = 0x0020; - } -#line 4080 "y.tab.c" /* yacc.c:1646 */ - break; - - case 237: -#line 1554 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "ii", (long)(yyvsp[0].i), SP_O_V_LIT); - (yyval.i) = 0x0040; - } #line 4089 "y.tab.c" /* yacc.c:1646 */ break; - case 238: -#line 1559 "lev_comp.y" /* yacc.c:1646 */ + case 231: +#line 1587 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_O_V_ERODED); + add_opvars(splev, "ii", + VA_PASS2((long)(yyvsp[0].i), SP_O_V_CURSE)); + (yyval.i) = 0x0001; + } +#line 4099 "y.tab.c" /* yacc.c:1646 */ + break; + + case 232: +#line 1593 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1(SP_O_V_CORPSENM)); + (yyval.i) = 0x0002; + } +#line 4108 "y.tab.c" /* yacc.c:1646 */ + break; + + case 233: +#line 1598 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1(SP_O_V_SPE)); + (yyval.i) = 0x0004; + } +#line 4117 "y.tab.c" /* yacc.c:1646 */ + break; + + case 234: +#line 1603 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1(SP_O_V_NAME)); + (yyval.i) = 0x0008; + } +#line 4126 "y.tab.c" /* yacc.c:1646 */ + break; + + case 235: +#line 1608 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1(SP_O_V_QUAN)); + (yyval.i) = 0x0010; + } +#line 4135 "y.tab.c" /* yacc.c:1646 */ + break; + + case 236: +#line 1613 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_BURIED)); + (yyval.i) = 0x0020; + } +#line 4144 "y.tab.c" /* yacc.c:1646 */ + break; + + case 237: +#line 1618 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "ii", VA_PASS2((long)(yyvsp[0].i), SP_O_V_LIT)); + (yyval.i) = 0x0040; + } +#line 4153 "y.tab.c" /* yacc.c:1646 */ + break; + + case 238: +#line 1623 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1(SP_O_V_ERODED)); (yyval.i) = 0x0080; } -#line 4098 "y.tab.c" /* yacc.c:1646 */ +#line 4162 "y.tab.c" /* yacc.c:1646 */ break; case 239: -#line 1564 "lev_comp.y" /* yacc.c:1646 */ +#line 1628 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", -1, SP_O_V_ERODED); + add_opvars(splev, "ii", VA_PASS2(-1, SP_O_V_ERODED)); (yyval.i) = 0x0080; } -#line 4107 "y.tab.c" /* yacc.c:1646 */ +#line 4171 "y.tab.c" /* yacc.c:1646 */ break; case 240: -#line 1569 "lev_comp.y" /* yacc.c:1646 */ +#line 1633 "lev_comp.y" /* yacc.c:1646 */ { if ((yyvsp[0].i) == D_LOCKED) { - add_opvars(splev, "ii", 1, SP_O_V_LOCKED); + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_LOCKED)); (yyval.i) = 0x0100; } else if ((yyvsp[0].i) == D_BROKEN) { - add_opvars(splev, "ii", 1, SP_O_V_BROKEN); + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_BROKEN)); (yyval.i) = 0x0200; } else - lc_error("OBJECT state can only be locked or broken."); + lc_error("DOOR state can only be locked or broken."); } -#line 4122 "y.tab.c" /* yacc.c:1646 */ +#line 4186 "y.tab.c" /* yacc.c:1646 */ break; case 241: -#line 1580 "lev_comp.y" /* yacc.c:1646 */ +#line 1644 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_O_V_TRAPPED); + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_TRAPPED)); (yyval.i) = 0x0400; } -#line 4131 "y.tab.c" /* yacc.c:1646 */ +#line 4195 "y.tab.c" /* yacc.c:1646 */ break; case 242: -#line 1585 "lev_comp.y" /* yacc.c:1646 */ +#line 1649 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_O_V_RECHARGED); + add_opvars(splev, "i", VA_PASS1(SP_O_V_RECHARGED)); (yyval.i) = 0x0800; } -#line 4140 "y.tab.c" /* yacc.c:1646 */ +#line 4204 "y.tab.c" /* yacc.c:1646 */ break; case 243: -#line 1590 "lev_comp.y" /* yacc.c:1646 */ +#line 1654 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_O_V_INVIS); + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_INVIS)); (yyval.i) = 0x1000; } -#line 4149 "y.tab.c" /* yacc.c:1646 */ +#line 4213 "y.tab.c" /* yacc.c:1646 */ break; case 244: -#line 1595 "lev_comp.y" /* yacc.c:1646 */ +#line 1659 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "ii", 1, SP_O_V_GREASED); + add_opvars(splev, "ii", VA_PASS2(1, SP_O_V_GREASED)); (yyval.i) = 0x2000; } -#line 4158 "y.tab.c" /* yacc.c:1646 */ +#line 4222 "y.tab.c" /* yacc.c:1646 */ break; case 245: -#line 1600 "lev_comp.y" /* yacc.c:1646 */ +#line 1664 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", SP_O_V_COORD); + add_opvars(splev, "i", VA_PASS1(SP_O_V_COORD)); (yyval.i) = 0x4000; } -#line 4167 "y.tab.c" /* yacc.c:1646 */ +#line 4231 "y.tab.c" /* yacc.c:1646 */ break; case 246: -#line 1607 "lev_comp.y" /* yacc.c:1646 */ +#line 1671 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (long)(yyvsp[-2].i), SPO_TRAP); + add_opvars(splev, "io", VA_PASS2((long)(yyvsp[-2].i), SPO_TRAP)); } -#line 4175 "y.tab.c" /* yacc.c:1646 */ +#line 4239 "y.tab.c" /* yacc.c:1646 */ break; case 247: -#line 1613 "lev_comp.y" /* yacc.c:1646 */ +#line 1677 "lev_comp.y" /* yacc.c:1646 */ { - long d, state = 0; + long dir, state = 0; + /* convert dir from a DIRECTION to a DB_DIR */ - d = (yyvsp[-2].i); - switch(d) { - case W_NORTH: d = DB_NORTH; break; - case W_SOUTH: d = DB_SOUTH; break; - case W_EAST: d = DB_EAST; break; - case W_WEST: d = DB_WEST; break; + dir = (yyvsp[-2].i); + switch (dir) { + case W_NORTH: dir = DB_NORTH; break; + case W_SOUTH: dir = DB_SOUTH; break; + case W_EAST: dir = DB_EAST; break; + case W_WEST: dir = DB_WEST; break; default: lc_error("Invalid drawbridge direction."); break; @@ -4198,222 +4263,231 @@ yyreduce: state = -1; else lc_error("A drawbridge can only be open, closed or random!"); - add_opvars(splev, "iio", state, d, SPO_DRAWBRIDGE); + add_opvars(splev, "iio", + VA_PASS3(state, dir, SPO_DRAWBRIDGE)); } -#line 4204 "y.tab.c" /* yacc.c:1646 */ +#line 4270 "y.tab.c" /* yacc.c:1646 */ break; case 248: -#line 1640 "lev_comp.y" /* yacc.c:1646 */ +#line 1706 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiio", - (long)(yyvsp[0].i), 1, 0, SPO_MAZEWALK); + VA_PASS4((long)(yyvsp[0].i), 1, 0, SPO_MAZEWALK)); } -#line 4213 "y.tab.c" /* yacc.c:1646 */ +#line 4279 "y.tab.c" /* yacc.c:1646 */ break; case 249: -#line 1645 "lev_comp.y" /* yacc.c:1646 */ +#line 1711 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiio", - (long)(yyvsp[-3].i), (long)(yyvsp[-1].i), (long)(yyvsp[0].i), SPO_MAZEWALK); + VA_PASS4((long)(yyvsp[-3].i), (long)(yyvsp[-1].i), + (long)(yyvsp[0].i), SPO_MAZEWALK)); } -#line 4222 "y.tab.c" /* yacc.c:1646 */ +#line 4289 "y.tab.c" /* yacc.c:1646 */ break; case 250: -#line 1652 "lev_comp.y" /* yacc.c:1646 */ +#line 1719 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "rio", SP_REGION_PACK(-1,-1,-1,-1), 0, SPO_WALLIFY); + add_opvars(splev, "rio", + VA_PASS3(SP_REGION_PACK(-1,-1,-1,-1), + 0, SPO_WALLIFY)); } -#line 4230 "y.tab.c" /* yacc.c:1646 */ +#line 4299 "y.tab.c" /* yacc.c:1646 */ break; case 251: -#line 1656 "lev_comp.y" /* yacc.c:1646 */ +#line 1725 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", 1, SPO_WALLIFY); + add_opvars(splev, "io", VA_PASS2(1, SPO_WALLIFY)); } -#line 4238 "y.tab.c" /* yacc.c:1646 */ +#line 4307 "y.tab.c" /* yacc.c:1646 */ break; case 252: -#line 1662 "lev_comp.y" /* yacc.c:1646 */ +#line 1731 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (long)(yyvsp[0].i), SPO_LADDER); + add_opvars(splev, "io", + VA_PASS2((long)(yyvsp[0].i), SPO_LADDER)); } -#line 4246 "y.tab.c" /* yacc.c:1646 */ +#line 4316 "y.tab.c" /* yacc.c:1646 */ break; case 253: -#line 1668 "lev_comp.y" /* yacc.c:1646 */ +#line 1738 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (long)(yyvsp[0].i), SPO_STAIR); + add_opvars(splev, "io", + VA_PASS2((long)(yyvsp[0].i), SPO_STAIR)); } -#line 4254 "y.tab.c" /* yacc.c:1646 */ +#line 4325 "y.tab.c" /* yacc.c:1646 */ break; case 254: -#line 1674 "lev_comp.y" /* yacc.c:1646 */ +#line 1745 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiiii iiiii iiso", - (yyvsp[-4].lregn).x1, (yyvsp[-4].lregn).y1, (yyvsp[-4].lregn).x2, (yyvsp[-4].lregn).y2, (yyvsp[-4].lregn).area, - (yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, - (long)(((yyvsp[0].i)) ? LR_UPSTAIR : LR_DOWNSTAIR), - 0, (char *)0, SPO_LEVREGION); + VA_PASS14((yyvsp[-4].lregn).x1, (yyvsp[-4].lregn).y1, (yyvsp[-4].lregn).x2, (yyvsp[-4].lregn).y2, (yyvsp[-4].lregn).area, + (yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, + (long)(((yyvsp[0].i)) ? LR_UPSTAIR : LR_DOWNSTAIR), + 0, (char *)0, SPO_LEVREGION)); } -#line 4266 "y.tab.c" /* yacc.c:1646 */ +#line 4337 "y.tab.c" /* yacc.c:1646 */ break; case 255: -#line 1684 "lev_comp.y" /* yacc.c:1646 */ +#line 1755 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiiii iiiii iiso", - (yyvsp[-4].lregn).x1, (yyvsp[-4].lregn).y1, (yyvsp[-4].lregn).x2, (yyvsp[-4].lregn).y2, (yyvsp[-4].lregn).area, - (yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, - LR_PORTAL, 0, (yyvsp[0].map), SPO_LEVREGION); + VA_PASS14((yyvsp[-4].lregn).x1, (yyvsp[-4].lregn).y1, (yyvsp[-4].lregn).x2, (yyvsp[-4].lregn).y2, (yyvsp[-4].lregn).area, + (yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, + LR_PORTAL, 0, (yyvsp[0].map), SPO_LEVREGION)); Free((yyvsp[0].map)); } -#line 4278 "y.tab.c" /* yacc.c:1646 */ +#line 4349 "y.tab.c" /* yacc.c:1646 */ break; case 256: -#line 1694 "lev_comp.y" /* yacc.c:1646 */ +#line 1765 "lev_comp.y" /* yacc.c:1646 */ { - long rtype = 0; + long rtyp = 0; switch((yyvsp[0].i)) { - case -1: rtype = LR_TELE; break; - case 0: rtype = LR_DOWNTELE; break; - case 1: rtype = LR_UPTELE; break; + case -1: rtyp = LR_TELE; break; + case 0: rtyp = LR_DOWNTELE; break; + case 1: rtyp = LR_UPTELE; break; } add_opvars(splev, "iiiii iiiii iiso", - (yyvsp[-3].lregn).x1, (yyvsp[-3].lregn).y1, (yyvsp[-3].lregn).x2, (yyvsp[-3].lregn).y2, (yyvsp[-3].lregn).area, - (yyvsp[-1].lregn).x1, (yyvsp[-1].lregn).y1, (yyvsp[-1].lregn).x2, (yyvsp[-1].lregn).y2, (yyvsp[-1].lregn).area, - rtype, 0, (char *)0, SPO_LEVREGION); + VA_PASS14((yyvsp[-3].lregn).x1, (yyvsp[-3].lregn).y1, (yyvsp[-3].lregn).x2, (yyvsp[-3].lregn).y2, (yyvsp[-3].lregn).area, + (yyvsp[-1].lregn).x1, (yyvsp[-1].lregn).y1, (yyvsp[-1].lregn).x2, (yyvsp[-1].lregn).y2, (yyvsp[-1].lregn).area, + rtyp, 0, (char *)0, SPO_LEVREGION)); } -#line 4295 "y.tab.c" /* yacc.c:1646 */ +#line 4366 "y.tab.c" /* yacc.c:1646 */ break; case 257: -#line 1709 "lev_comp.y" /* yacc.c:1646 */ +#line 1780 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "iiiii iiiii iiso", - (yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, - (yyvsp[0].lregn).x1, (yyvsp[0].lregn).y1, (yyvsp[0].lregn).x2, (yyvsp[0].lregn).y2, (yyvsp[0].lregn).area, - (long)LR_BRANCH, 0, (char *)0, SPO_LEVREGION); + VA_PASS14((yyvsp[-2].lregn).x1, (yyvsp[-2].lregn).y1, (yyvsp[-2].lregn).x2, (yyvsp[-2].lregn).y2, (yyvsp[-2].lregn).area, + (yyvsp[0].lregn).x1, (yyvsp[0].lregn).y1, (yyvsp[0].lregn).x2, (yyvsp[0].lregn).y2, (yyvsp[0].lregn).area, + (long)LR_BRANCH, 0, + (char *)0, SPO_LEVREGION)); } -#line 4306 "y.tab.c" /* yacc.c:1646 */ +#line 4378 "y.tab.c" /* yacc.c:1646 */ break; case 258: -#line 1718 "lev_comp.y" /* yacc.c:1646 */ +#line 1790 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = -1; } -#line 4314 "y.tab.c" /* yacc.c:1646 */ +#line 4386 "y.tab.c" /* yacc.c:1646 */ break; case 259: -#line 1722 "lev_comp.y" /* yacc.c:1646 */ +#line 1794 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 4322 "y.tab.c" /* yacc.c:1646 */ +#line 4394 "y.tab.c" /* yacc.c:1646 */ break; case 260: -#line 1728 "lev_comp.y" /* yacc.c:1646 */ +#line 1800 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_FOUNTAIN); + add_opvars(splev, "o", VA_PASS1(SPO_FOUNTAIN)); } -#line 4330 "y.tab.c" /* yacc.c:1646 */ +#line 4402 "y.tab.c" /* yacc.c:1646 */ break; case 261: -#line 1734 "lev_comp.y" /* yacc.c:1646 */ +#line 1806 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SINK); + add_opvars(splev, "o", VA_PASS1(SPO_SINK)); } -#line 4338 "y.tab.c" /* yacc.c:1646 */ +#line 4410 "y.tab.c" /* yacc.c:1646 */ break; case 262: -#line 1740 "lev_comp.y" /* yacc.c:1646 */ +#line 1812 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_POOL); + add_opvars(splev, "o", VA_PASS1(SPO_POOL)); } -#line 4346 "y.tab.c" /* yacc.c:1646 */ +#line 4418 "y.tab.c" /* yacc.c:1646 */ break; case 263: -#line 1746 "lev_comp.y" /* yacc.c:1646 */ +#line 1818 "lev_comp.y" /* yacc.c:1646 */ { (yyval.terr).lit = -2; (yyval.terr).ter = what_map_char((char) (yyvsp[0].i)); } -#line 4355 "y.tab.c" /* yacc.c:1646 */ +#line 4427 "y.tab.c" /* yacc.c:1646 */ break; case 264: -#line 1751 "lev_comp.y" /* yacc.c:1646 */ +#line 1823 "lev_comp.y" /* yacc.c:1646 */ { (yyval.terr).lit = (yyvsp[-1].i); (yyval.terr).ter = what_map_char((char) (yyvsp[-3].i)); } -#line 4364 "y.tab.c" /* yacc.c:1646 */ +#line 4436 "y.tab.c" /* yacc.c:1646 */ break; case 265: -#line 1758 "lev_comp.y" /* yacc.c:1646 */ +#line 1830 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (yyvsp[0].i), SPO_REPLACETERRAIN); + add_opvars(splev, "io", + VA_PASS2((yyvsp[0].i), SPO_REPLACETERRAIN)); } -#line 4372 "y.tab.c" /* yacc.c:1646 */ +#line 4445 "y.tab.c" /* yacc.c:1646 */ break; case 266: -#line 1764 "lev_comp.y" /* yacc.c:1646 */ +#line 1837 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_TERRAIN); + add_opvars(splev, "o", VA_PASS1(SPO_TERRAIN)); } -#line 4380 "y.tab.c" /* yacc.c:1646 */ +#line 4453 "y.tab.c" /* yacc.c:1646 */ break; case 267: -#line 1770 "lev_comp.y" /* yacc.c:1646 */ +#line 1843 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_NON_DIGGABLE); + add_opvars(splev, "o", VA_PASS1(SPO_NON_DIGGABLE)); } -#line 4388 "y.tab.c" /* yacc.c:1646 */ +#line 4461 "y.tab.c" /* yacc.c:1646 */ break; case 268: -#line 1776 "lev_comp.y" /* yacc.c:1646 */ +#line 1849 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_NON_PASSWALL); + add_opvars(splev, "o", VA_PASS1(SPO_NON_PASSWALL)); } -#line 4396 "y.tab.c" /* yacc.c:1646 */ +#line 4469 "y.tab.c" /* yacc.c:1646 */ break; case 269: -#line 1782 "lev_comp.y" /* yacc.c:1646 */ +#line 1855 "lev_comp.y" /* yacc.c:1646 */ { long irr; long rt = (yyvsp[-1].i); - long flags = (yyvsp[0].i); - if (flags == -1) flags = (1 << 0); - if (!(( flags ) & 1)) rt += MAXRTYPE+1; - irr = ((( flags ) & 2) != 0); + long rflags = (yyvsp[0].i); + + if (rflags == -1) rflags = (1 << 0); + if (!(rflags & 1)) rt += MAXRTYPE+1; + irr = ((rflags & 2) != 0); add_opvars(splev, "iiio", - (long)(yyvsp[-3].i), rt, flags, SPO_REGION); - (yyval.i) = (irr || (flags & 1) || rt != OROOM); + VA_PASS4((long)(yyvsp[-3].i), rt, rflags, SPO_REGION)); + (yyval.i) = (irr || (rflags & 1) || rt != OROOM); break_stmt_start(); } -#line 4413 "y.tab.c" /* yacc.c:1646 */ +#line 4487 "y.tab.c" /* yacc.c:1646 */ break; case 270: -#line 1795 "lev_comp.y" /* yacc.c:1646 */ +#line 1869 "lev_comp.y" /* yacc.c:1646 */ { break_stmt_end(splev); if ( (yyvsp[-1].i) ) { @@ -4421,94 +4495,96 @@ yyreduce: } else if ( (yyvsp[0].i) ) lc_error("Cannot use lev statements in non-permanent REGION"); } -#line 4425 "y.tab.c" /* yacc.c:1646 */ +#line 4499 "y.tab.c" /* yacc.c:1646 */ break; case 271: -#line 1805 "lev_comp.y" /* yacc.c:1646 */ +#line 1879 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = 0; } -#line 4433 "y.tab.c" /* yacc.c:1646 */ +#line 4507 "y.tab.c" /* yacc.c:1646 */ break; case 272: -#line 1809 "lev_comp.y" /* yacc.c:1646 */ +#line 1883 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 4441 "y.tab.c" /* yacc.c:1646 */ +#line 4515 "y.tab.c" /* yacc.c:1646 */ break; case 273: -#line 1815 "lev_comp.y" /* yacc.c:1646 */ +#line 1889 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iio", (long)(yyvsp[0].i), (long)(yyvsp[-2].i), SPO_ALTAR); + add_opvars(splev, "iio", + VA_PASS3((long)(yyvsp[0].i), (long)(yyvsp[-2].i), SPO_ALTAR)); } -#line 4449 "y.tab.c" /* yacc.c:1646 */ +#line 4524 "y.tab.c" /* yacc.c:1646 */ break; case 274: -#line 1821 "lev_comp.y" /* yacc.c:1646 */ +#line 1896 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", 2, SPO_GRAVE); + add_opvars(splev, "io", VA_PASS2(2, SPO_GRAVE)); } -#line 4457 "y.tab.c" /* yacc.c:1646 */ +#line 4532 "y.tab.c" /* yacc.c:1646 */ break; case 275: -#line 1825 "lev_comp.y" /* yacc.c:1646 */ +#line 1900 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "sio", - (char *)0, 1, SPO_GRAVE); + VA_PASS3((char *)0, 1, SPO_GRAVE)); } -#line 4466 "y.tab.c" /* yacc.c:1646 */ +#line 4541 "y.tab.c" /* yacc.c:1646 */ break; case 276: -#line 1830 "lev_comp.y" /* yacc.c:1646 */ +#line 1905 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "sio", - (char *)0, 0, SPO_GRAVE); + VA_PASS3((char *)0, 0, SPO_GRAVE)); } -#line 4475 "y.tab.c" /* yacc.c:1646 */ +#line 4550 "y.tab.c" /* yacc.c:1646 */ break; case 277: -#line 1837 "lev_comp.y" /* yacc.c:1646 */ +#line 1912 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_GOLD); + add_opvars(splev, "o", VA_PASS1(SPO_GOLD)); } -#line 4483 "y.tab.c" /* yacc.c:1646 */ +#line 4558 "y.tab.c" /* yacc.c:1646 */ break; case 278: -#line 1843 "lev_comp.y" /* yacc.c:1646 */ +#line 1918 "lev_comp.y" /* yacc.c:1646 */ { add_opvars(splev, "io", - (long)(yyvsp[-2].i), SPO_ENGRAVING); + VA_PASS2((long)(yyvsp[-2].i), SPO_ENGRAVING)); } -#line 4492 "y.tab.c" /* yacc.c:1646 */ +#line 4567 "y.tab.c" /* yacc.c:1646 */ break; case 279: -#line 1850 "lev_comp.y" /* yacc.c:1646 */ +#line 1925 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_MINERALIZE); + add_opvars(splev, "o", VA_PASS1(SPO_MINERALIZE)); } -#line 4500 "y.tab.c" /* yacc.c:1646 */ +#line 4575 "y.tab.c" /* yacc.c:1646 */ break; case 280: -#line 1854 "lev_comp.y" /* yacc.c:1646 */ +#line 1929 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iiiio", -1L, -1L, -1L, -1L, SPO_MINERALIZE); + add_opvars(splev, "iiiio", + VA_PASS5(-1L, -1L, -1L, -1L, SPO_MINERALIZE)); } -#line 4508 "y.tab.c" /* yacc.c:1646 */ +#line 4584 "y.tab.c" /* yacc.c:1646 */ break; case 281: -#line 1860 "lev_comp.y" /* yacc.c:1646 */ +#line 1936 "lev_comp.y" /* yacc.c:1646 */ { int token = get_trap_type((yyvsp[0].map)); if (token == ERR) @@ -4516,11 +4592,11 @@ yyreduce: (yyval.i) = token; Free((yyvsp[0].map)); } -#line 4520 "y.tab.c" /* yacc.c:1646 */ +#line 4596 "y.tab.c" /* yacc.c:1646 */ break; case 283: -#line 1871 "lev_comp.y" /* yacc.c:1646 */ +#line 1947 "lev_comp.y" /* yacc.c:1646 */ { int token = get_room_type((yyvsp[0].map)); if (token == ERR) { @@ -4530,288 +4606,288 @@ yyreduce: (yyval.i) = token; Free((yyvsp[0].map)); } -#line 4534 "y.tab.c" /* yacc.c:1646 */ +#line 4610 "y.tab.c" /* yacc.c:1646 */ break; case 285: -#line 1884 "lev_comp.y" /* yacc.c:1646 */ +#line 1960 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = -1; } -#line 4542 "y.tab.c" /* yacc.c:1646 */ +#line 4618 "y.tab.c" /* yacc.c:1646 */ break; case 286: -#line 1888 "lev_comp.y" /* yacc.c:1646 */ +#line 1964 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 4550 "y.tab.c" /* yacc.c:1646 */ +#line 4626 "y.tab.c" /* yacc.c:1646 */ break; case 287: -#line 1894 "lev_comp.y" /* yacc.c:1646 */ +#line 1970 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 4558 "y.tab.c" /* yacc.c:1646 */ +#line 4634 "y.tab.c" /* yacc.c:1646 */ break; case 288: -#line 1898 "lev_comp.y" /* yacc.c:1646 */ +#line 1974 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[-2].i) | (yyvsp[0].i); } -#line 4566 "y.tab.c" /* yacc.c:1646 */ +#line 4642 "y.tab.c" /* yacc.c:1646 */ break; case 289: -#line 1905 "lev_comp.y" /* yacc.c:1646 */ +#line 1981 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = ((yyvsp[0].i) << 0); } -#line 4574 "y.tab.c" /* yacc.c:1646 */ +#line 4650 "y.tab.c" /* yacc.c:1646 */ break; case 290: -#line 1909 "lev_comp.y" /* yacc.c:1646 */ +#line 1985 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = ((yyvsp[0].i) << 1); } -#line 4582 "y.tab.c" /* yacc.c:1646 */ +#line 4658 "y.tab.c" /* yacc.c:1646 */ break; case 291: -#line 1913 "lev_comp.y" /* yacc.c:1646 */ +#line 1989 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = ((yyvsp[0].i) << 2); } -#line 4590 "y.tab.c" /* yacc.c:1646 */ +#line 4666 "y.tab.c" /* yacc.c:1646 */ break; case 298: -#line 1929 "lev_comp.y" /* yacc.c:1646 */ +#line 2005 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = - MAX_REGISTERS - 1; } -#line 4598 "y.tab.c" /* yacc.c:1646 */ +#line 4674 "y.tab.c" /* yacc.c:1646 */ break; case 301: -#line 1937 "lev_comp.y" /* yacc.c:1646 */ +#line 2013 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = - MAX_REGISTERS - 1; } -#line 4606 "y.tab.c" /* yacc.c:1646 */ +#line 4682 "y.tab.c" /* yacc.c:1646 */ break; case 304: -#line 1947 "lev_comp.y" /* yacc.c:1646 */ +#line 2023 "lev_comp.y" /* yacc.c:1646 */ { if ( (yyvsp[-1].i) >= 3 ) lc_error("Register Index overflow!"); else (yyval.i) = - (yyvsp[-1].i) - 1; } -#line 4617 "y.tab.c" /* yacc.c:1646 */ +#line 4693 "y.tab.c" /* yacc.c:1646 */ break; case 305: -#line 1956 "lev_comp.y" /* yacc.c:1646 */ +#line 2032 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "s", (yyvsp[0].map)); + add_opvars(splev, "s", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4626 "y.tab.c" /* yacc.c:1646 */ +#line 4702 "y.tab.c" /* yacc.c:1646 */ break; case 306: -#line 1961 "lev_comp.y" /* yacc.c:1646 */ +#line 2037 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_STRING); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4637 "y.tab.c" /* yacc.c:1646 */ +#line 4713 "y.tab.c" /* yacc.c:1646 */ break; case 307: -#line 1968 "lev_comp.y" /* yacc.c:1646 */ +#line 2044 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_STRING|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4648 "y.tab.c" /* yacc.c:1646 */ +#line 4724 "y.tab.c" /* yacc.c:1646 */ break; case 308: -#line 1978 "lev_comp.y" /* yacc.c:1646 */ +#line 2054 "lev_comp.y" /* yacc.c:1646 */ { /* nothing */ } -#line 4656 "y.tab.c" /* yacc.c:1646 */ +#line 4732 "y.tab.c" /* yacc.c:1646 */ break; case 309: -#line 1984 "lev_comp.y" /* yacc.c:1646 */ +#line 2060 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "c", (yyvsp[0].i)); + add_opvars(splev, "c", VA_PASS1((yyvsp[0].i))); } -#line 4664 "y.tab.c" /* yacc.c:1646 */ +#line 4740 "y.tab.c" /* yacc.c:1646 */ break; case 310: -#line 1988 "lev_comp.y" /* yacc.c:1646 */ +#line 2064 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_RNDCOORD); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_RNDCOORD)); } -#line 4672 "y.tab.c" /* yacc.c:1646 */ +#line 4748 "y.tab.c" /* yacc.c:1646 */ break; case 311: -#line 1992 "lev_comp.y" /* yacc.c:1646 */ +#line 2068 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_COORD); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4683 "y.tab.c" /* yacc.c:1646 */ +#line 4759 "y.tab.c" /* yacc.c:1646 */ break; case 312: -#line 1999 "lev_comp.y" /* yacc.c:1646 */ +#line 2075 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_COORD|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4694 "y.tab.c" /* yacc.c:1646 */ +#line 4770 "y.tab.c" /* yacc.c:1646 */ break; case 313: -#line 2008 "lev_comp.y" /* yacc.c:1646 */ +#line 2084 "lev_comp.y" /* yacc.c:1646 */ { if ((yyvsp[-3].i) < 0 || (yyvsp[-1].i) < 0 || (yyvsp[-3].i) >= COLNO || (yyvsp[-1].i) >= ROWNO) lc_error("Coordinates (%li,%li) out of map range!", (yyvsp[-3].i), (yyvsp[-1].i)); (yyval.i) = SP_COORD_PACK((yyvsp[-3].i), (yyvsp[-1].i)); } -#line 4704 "y.tab.c" /* yacc.c:1646 */ +#line 4780 "y.tab.c" /* yacc.c:1646 */ break; case 314: -#line 2014 "lev_comp.y" /* yacc.c:1646 */ +#line 2090 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = SP_COORD_PACK_RANDOM(0); } -#line 4712 "y.tab.c" /* yacc.c:1646 */ +#line 4788 "y.tab.c" /* yacc.c:1646 */ break; case 315: -#line 2018 "lev_comp.y" /* yacc.c:1646 */ +#line 2094 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = SP_COORD_PACK_RANDOM( (yyvsp[-1].i) ); } -#line 4720 "y.tab.c" /* yacc.c:1646 */ +#line 4796 "y.tab.c" /* yacc.c:1646 */ break; case 316: -#line 2024 "lev_comp.y" /* yacc.c:1646 */ +#line 2100 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (yyvsp[0].i); } -#line 4728 "y.tab.c" /* yacc.c:1646 */ +#line 4804 "y.tab.c" /* yacc.c:1646 */ break; case 317: -#line 2028 "lev_comp.y" /* yacc.c:1646 */ +#line 2104 "lev_comp.y" /* yacc.c:1646 */ { if (((yyvsp[-2].i) & (yyvsp[0].i))) lc_warning("Humidity flag used twice."); (yyval.i) = ((yyvsp[-2].i) | (yyvsp[0].i)); } -#line 4738 "y.tab.c" /* yacc.c:1646 */ +#line 4814 "y.tab.c" /* yacc.c:1646 */ break; case 318: -#line 2036 "lev_comp.y" /* yacc.c:1646 */ +#line 2112 "lev_comp.y" /* yacc.c:1646 */ { /* nothing */ } -#line 4746 "y.tab.c" /* yacc.c:1646 */ +#line 4822 "y.tab.c" /* yacc.c:1646 */ break; case 319: -#line 2040 "lev_comp.y" /* yacc.c:1646 */ +#line 2116 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_REGION); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4757 "y.tab.c" /* yacc.c:1646 */ +#line 4833 "y.tab.c" /* yacc.c:1646 */ break; case 320: -#line 2047 "lev_comp.y" /* yacc.c:1646 */ +#line 2123 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_REGION|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4768 "y.tab.c" /* yacc.c:1646 */ +#line 4844 "y.tab.c" /* yacc.c:1646 */ break; case 321: -#line 2056 "lev_comp.y" /* yacc.c:1646 */ +#line 2132 "lev_comp.y" /* yacc.c:1646 */ { long r = SP_REGION_PACK((yyvsp[-7].i), (yyvsp[-5].i), (yyvsp[-3].i), (yyvsp[-1].i)); if ( (yyvsp[-7].i) > (yyvsp[-3].i) || (yyvsp[-5].i) > (yyvsp[-1].i) ) lc_error("Region start > end: (%li,%li,%li,%li)!", (yyvsp[-7].i), (yyvsp[-5].i), (yyvsp[-3].i), (yyvsp[-1].i)); - add_opvars(splev, "r", r); + add_opvars(splev, "r", VA_PASS1(r)); (yyval.i) = r; } -#line 4781 "y.tab.c" /* yacc.c:1646 */ +#line 4857 "y.tab.c" /* yacc.c:1646 */ break; case 322: -#line 2067 "lev_comp.y" /* yacc.c:1646 */ +#line 2143 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "m", (yyvsp[0].i)); + add_opvars(splev, "m", VA_PASS1((yyvsp[0].i))); } -#line 4789 "y.tab.c" /* yacc.c:1646 */ +#line 4865 "y.tab.c" /* yacc.c:1646 */ break; case 323: -#line 2071 "lev_comp.y" /* yacc.c:1646 */ +#line 2147 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_MAPCHAR); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4800 "y.tab.c" /* yacc.c:1646 */ +#line 4876 "y.tab.c" /* yacc.c:1646 */ break; case 324: -#line 2078 "lev_comp.y" /* yacc.c:1646 */ +#line 2154 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_MAPCHAR|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4811 "y.tab.c" /* yacc.c:1646 */ +#line 4887 "y.tab.c" /* yacc.c:1646 */ break; case 325: -#line 2087 "lev_comp.y" /* yacc.c:1646 */ +#line 2163 "lev_comp.y" /* yacc.c:1646 */ { if (what_map_char((char) (yyvsp[0].i)) != INVALID_TYPE) (yyval.i) = SP_MAPCHAR_PACK(what_map_char((char) (yyvsp[0].i)), -2); @@ -4820,11 +4896,11 @@ yyreduce: (yyval.i) = SP_MAPCHAR_PACK(STONE, -2); } } -#line 4824 "y.tab.c" /* yacc.c:1646 */ +#line 4900 "y.tab.c" /* yacc.c:1646 */ break; case 326: -#line 2096 "lev_comp.y" /* yacc.c:1646 */ +#line 2172 "lev_comp.y" /* yacc.c:1646 */ { if (what_map_char((char) (yyvsp[-3].i)) != INVALID_TYPE) (yyval.i) = SP_MAPCHAR_PACK(what_map_char((char) (yyvsp[-3].i)), (yyvsp[-1].i)); @@ -4833,41 +4909,41 @@ yyreduce: (yyval.i) = SP_MAPCHAR_PACK(STONE, (yyvsp[-1].i)); } } -#line 4837 "y.tab.c" /* yacc.c:1646 */ +#line 4913 "y.tab.c" /* yacc.c:1646 */ break; case 327: -#line 2107 "lev_comp.y" /* yacc.c:1646 */ +#line 2183 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "M", (yyvsp[0].i)); + add_opvars(splev, "M", VA_PASS1((yyvsp[0].i))); } -#line 4845 "y.tab.c" /* yacc.c:1646 */ +#line 4921 "y.tab.c" /* yacc.c:1646 */ break; case 328: -#line 2111 "lev_comp.y" /* yacc.c:1646 */ +#line 2187 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_MONST); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4856 "y.tab.c" /* yacc.c:1646 */ +#line 4932 "y.tab.c" /* yacc.c:1646 */ break; case 329: -#line 2118 "lev_comp.y" /* yacc.c:1646 */ +#line 2194 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_MONST|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4867 "y.tab.c" /* yacc.c:1646 */ +#line 4943 "y.tab.c" /* yacc.c:1646 */ break; case 330: -#line 2127 "lev_comp.y" /* yacc.c:1646 */ +#line 2203 "lev_comp.y" /* yacc.c:1646 */ { long m = get_monster_id((yyvsp[0].map), (char)0); if (m == ERR) { @@ -4876,11 +4952,11 @@ yyreduce: } else (yyval.i) = SP_MONST_PACK(m, def_monsyms[(int)mons[m].mlet].sym); } -#line 4880 "y.tab.c" /* yacc.c:1646 */ +#line 4956 "y.tab.c" /* yacc.c:1646 */ break; case 331: -#line 2136 "lev_comp.y" /* yacc.c:1646 */ +#line 2212 "lev_comp.y" /* yacc.c:1646 */ { if (check_monster_char((char) (yyvsp[0].i))) (yyval.i) = SP_MONST_PACK(-1, (yyvsp[0].i)); @@ -4889,11 +4965,11 @@ yyreduce: (yyval.i) = -1; } } -#line 4893 "y.tab.c" /* yacc.c:1646 */ +#line 4969 "y.tab.c" /* yacc.c:1646 */ break; case 332: -#line 2145 "lev_comp.y" /* yacc.c:1646 */ +#line 2221 "lev_comp.y" /* yacc.c:1646 */ { long m = get_monster_id((yyvsp[-1].map), (char) (yyvsp[-3].i)); if (m == ERR) { @@ -4902,49 +4978,49 @@ yyreduce: } else (yyval.i) = SP_MONST_PACK(m, (yyvsp[-3].i)); } -#line 4906 "y.tab.c" /* yacc.c:1646 */ +#line 4982 "y.tab.c" /* yacc.c:1646 */ break; case 333: -#line 2154 "lev_comp.y" /* yacc.c:1646 */ +#line 2230 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = -1; } -#line 4914 "y.tab.c" /* yacc.c:1646 */ +#line 4990 "y.tab.c" /* yacc.c:1646 */ break; case 334: -#line 2160 "lev_comp.y" /* yacc.c:1646 */ +#line 2236 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "O", (yyvsp[0].i)); + add_opvars(splev, "O", VA_PASS1((yyvsp[0].i))); } -#line 4922 "y.tab.c" /* yacc.c:1646 */ +#line 4998 "y.tab.c" /* yacc.c:1646 */ break; case 335: -#line 2164 "lev_comp.y" /* yacc.c:1646 */ +#line 2240 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_OBJ); vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); Free((yyvsp[0].map)); } -#line 4933 "y.tab.c" /* yacc.c:1646 */ +#line 5009 "y.tab.c" /* yacc.c:1646 */ break; case 336: -#line 2171 "lev_comp.y" /* yacc.c:1646 */ +#line 2247 "lev_comp.y" /* yacc.c:1646 */ { check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_OBJ|SPOVAR_ARRAY); vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); Free((yyvsp[-3].map)); } -#line 4944 "y.tab.c" /* yacc.c:1646 */ +#line 5020 "y.tab.c" /* yacc.c:1646 */ break; case 337: -#line 2180 "lev_comp.y" /* yacc.c:1646 */ +#line 2256 "lev_comp.y" /* yacc.c:1646 */ { long m = get_object_id((yyvsp[0].map), (char)0); if (m == ERR) { @@ -4954,11 +5030,11 @@ yyreduce: (yyval.i) = SP_OBJ_PACK(m, 1); /* obj class != 0 to force generation of a specific item */ } -#line 4958 "y.tab.c" /* yacc.c:1646 */ +#line 5034 "y.tab.c" /* yacc.c:1646 */ break; case 338: -#line 2190 "lev_comp.y" /* yacc.c:1646 */ +#line 2266 "lev_comp.y" /* yacc.c:1646 */ { if (check_object_char((char) (yyvsp[0].i))) (yyval.i) = SP_OBJ_PACK(-1, (yyvsp[0].i)); @@ -4967,11 +5043,11 @@ yyreduce: (yyval.i) = -1; } } -#line 4971 "y.tab.c" /* yacc.c:1646 */ +#line 5047 "y.tab.c" /* yacc.c:1646 */ break; case 339: -#line 2199 "lev_comp.y" /* yacc.c:1646 */ +#line 2275 "lev_comp.y" /* yacc.c:1646 */ { long m = get_object_id((yyvsp[-1].map), (char) (yyvsp[-3].i)); if (m == ERR) { @@ -4980,188 +5056,207 @@ yyreduce: } else (yyval.i) = SP_OBJ_PACK(m, (yyvsp[-3].i)); } -#line 4984 "y.tab.c" /* yacc.c:1646 */ - break; - - case 340: -#line 2208 "lev_comp.y" /* yacc.c:1646 */ - { - (yyval.i) = -1; - } -#line 4992 "y.tab.c" /* yacc.c:1646 */ - break; - - case 341: -#line 2214 "lev_comp.y" /* yacc.c:1646 */ - { } -#line 4998 "y.tab.c" /* yacc.c:1646 */ - break; - - case 342: -#line 2216 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "o", SPO_MATH_ADD); - } -#line 5006 "y.tab.c" /* yacc.c:1646 */ - break; - - case 343: -#line 2221 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "i", (yyvsp[0].i) ); } -#line 5012 "y.tab.c" /* yacc.c:1646 */ - break; - - case 344: -#line 2222 "lev_comp.y" /* yacc.c:1646 */ - { is_inconstant_number = 1; } -#line 5018 "y.tab.c" /* yacc.c:1646 */ - break; - - case 345: -#line 2223 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "i", (yyvsp[-1].i) ); } -#line 5024 "y.tab.c" /* yacc.c:1646 */ - break; - - case 346: -#line 2225 "lev_comp.y" /* yacc.c:1646 */ - { - check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_INT); - vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); - Free((yyvsp[0].map)); - is_inconstant_number = 1; - } -#line 5036 "y.tab.c" /* yacc.c:1646 */ - break; - - case 347: -#line 2233 "lev_comp.y" /* yacc.c:1646 */ - { - check_vardef_type(variable_definitions, (yyvsp[-3].map), SPOVAR_INT|SPOVAR_ARRAY); - vardef_used(variable_definitions, (yyvsp[-3].map)); - add_opvars(splev, "v", (yyvsp[-3].map)); - Free((yyvsp[-3].map)); - is_inconstant_number = 1; - } -#line 5048 "y.tab.c" /* yacc.c:1646 */ - break; - - case 348: -#line 2240 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "o", SPO_MATH_ADD); } -#line 5054 "y.tab.c" /* yacc.c:1646 */ - break; - - case 349: -#line 2241 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "o", SPO_MATH_SUB); } #line 5060 "y.tab.c" /* yacc.c:1646 */ break; + case 340: +#line 2284 "lev_comp.y" /* yacc.c:1646 */ + { + (yyval.i) = -1; + } +#line 5068 "y.tab.c" /* yacc.c:1646 */ + break; + + case 341: +#line 2290 "lev_comp.y" /* yacc.c:1646 */ + { } +#line 5074 "y.tab.c" /* yacc.c:1646 */ + break; + + case 342: +#line 2292 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_ADD)); + } +#line 5082 "y.tab.c" /* yacc.c:1646 */ + break; + + case 343: +#line 2298 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1((yyvsp[0].i))); + } +#line 5090 "y.tab.c" /* yacc.c:1646 */ + break; + + case 344: +#line 2302 "lev_comp.y" /* yacc.c:1646 */ + { + is_inconstant_number = 1; + } +#line 5098 "y.tab.c" /* yacc.c:1646 */ + break; + + case 345: +#line 2306 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1((yyvsp[-1].i))); + } +#line 5106 "y.tab.c" /* yacc.c:1646 */ + break; + + case 346: +#line 2310 "lev_comp.y" /* yacc.c:1646 */ + { + check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_INT); + vardef_used(variable_definitions, (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); + Free((yyvsp[0].map)); + is_inconstant_number = 1; + } +#line 5118 "y.tab.c" /* yacc.c:1646 */ + break; + + case 347: +#line 2318 "lev_comp.y" /* yacc.c:1646 */ + { + check_vardef_type(variable_definitions, + (yyvsp[-3].map), SPOVAR_INT|SPOVAR_ARRAY); + vardef_used(variable_definitions, (yyvsp[-3].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[-3].map))); + Free((yyvsp[-3].map)); + is_inconstant_number = 1; + } +#line 5131 "y.tab.c" /* yacc.c:1646 */ + break; + + case 348: +#line 2327 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_ADD)); + } +#line 5139 "y.tab.c" /* yacc.c:1646 */ + break; + + case 349: +#line 2331 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_SUB)); + } +#line 5147 "y.tab.c" /* yacc.c:1646 */ + break; + case 350: -#line 2242 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "o", SPO_MATH_MUL); } -#line 5066 "y.tab.c" /* yacc.c:1646 */ +#line 2335 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_MUL)); + } +#line 5155 "y.tab.c" /* yacc.c:1646 */ break; case 351: -#line 2243 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "o", SPO_MATH_DIV); } -#line 5072 "y.tab.c" /* yacc.c:1646 */ +#line 2339 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_DIV)); + } +#line 5163 "y.tab.c" /* yacc.c:1646 */ break; case 352: -#line 2244 "lev_comp.y" /* yacc.c:1646 */ - { add_opvars(splev, "o", SPO_MATH_MOD); } -#line 5078 "y.tab.c" /* yacc.c:1646 */ +#line 2343 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_MATH_MOD)); + } +#line 5171 "y.tab.c" /* yacc.c:1646 */ break; case 353: -#line 2245 "lev_comp.y" /* yacc.c:1646 */ +#line 2346 "lev_comp.y" /* yacc.c:1646 */ { } -#line 5084 "y.tab.c" /* yacc.c:1646 */ +#line 5177 "y.tab.c" /* yacc.c:1646 */ break; case 354: -#line 2249 "lev_comp.y" /* yacc.c:1646 */ +#line 2350 "lev_comp.y" /* yacc.c:1646 */ { - if (!strcmp("int", (yyvsp[0].map)) || !strcmp("integer", (yyvsp[0].map))) { - (yyval.i) = (int)'i'; - } else lc_error("Unknown function parameter type '%s'", (yyvsp[0].map)); - } -#line 5094 "y.tab.c" /* yacc.c:1646 */ + if (!strcmp("int", (yyvsp[0].map)) || !strcmp("integer", (yyvsp[0].map))) { + (yyval.i) = (int)'i'; + } else + lc_error("Unknown function parameter type '%s'", (yyvsp[0].map)); + } +#line 5188 "y.tab.c" /* yacc.c:1646 */ break; case 355: -#line 2255 "lev_comp.y" /* yacc.c:1646 */ +#line 2357 "lev_comp.y" /* yacc.c:1646 */ { - if (!strcmp("str", (yyvsp[0].map)) || !strcmp("string", (yyvsp[0].map))) { - (yyval.i) = (int)'s'; - } else lc_error("Unknown function parameter type '%s'", (yyvsp[0].map)); - } -#line 5104 "y.tab.c" /* yacc.c:1646 */ + if (!strcmp("str", (yyvsp[0].map)) || !strcmp("string", (yyvsp[0].map))) { + (yyval.i) = (int)'s'; + } else + lc_error("Unknown function parameter type '%s'", (yyvsp[0].map)); + } +#line 5199 "y.tab.c" /* yacc.c:1646 */ break; case 356: -#line 2263 "lev_comp.y" /* yacc.c:1646 */ +#line 2366 "lev_comp.y" /* yacc.c:1646 */ { - struct lc_funcdefs_parm *tmp = New(struct lc_funcdefs_parm); + struct lc_funcdefs_parm *tmp = New(struct lc_funcdefs_parm); - if (!curr_function) - lc_error("Function parameters outside function definition."); - else if (!tmp) - lc_error("Could not alloc function params."); - else { - tmp->name = strdup((yyvsp[-2].map)); - tmp->parmtype = (char) (yyvsp[0].i); - tmp->next = curr_function->params; - curr_function->params = tmp; - curr_function->n_params++; - { - long vt; - switch (tmp->parmtype) { - case 'i': vt = SPOVAR_INT; break; - case 's': vt = SPOVAR_STRING; break; - default: lc_error("Unknown func param conversion."); break; - } - variable_definitions = add_vardef_type(variable_definitions, (yyvsp[-2].map), vt); - } - } - Free((yyvsp[-2].map)); + if (!curr_function) { + lc_error("Function parameters outside function definition."); + } else if (!tmp) { + lc_error("Could not alloc function params."); + } else { + long vt; + tmp->name = strdup((yyvsp[-2].map)); + tmp->parmtype = (char) (yyvsp[0].i); + tmp->next = curr_function->params; + curr_function->params = tmp; + curr_function->n_params++; + switch (tmp->parmtype) { + case 'i': vt = SPOVAR_INT; break; + case 's': vt = SPOVAR_STRING; break; + default: lc_error("Unknown func param conversion."); break; } -#line 5134 "y.tab.c" /* yacc.c:1646 */ + variable_definitions = add_vardef_type( + variable_definitions, + (yyvsp[-2].map), vt); + } + Free((yyvsp[-2].map)); + } +#line 5229 "y.tab.c" /* yacc.c:1646 */ break; case 361: -#line 2300 "lev_comp.y" /* yacc.c:1646 */ +#line 2402 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (int)'i'; } -#line 5142 "y.tab.c" /* yacc.c:1646 */ +#line 5237 "y.tab.c" /* yacc.c:1646 */ break; case 362: -#line 2304 "lev_comp.y" /* yacc.c:1646 */ +#line 2406 "lev_comp.y" /* yacc.c:1646 */ { (yyval.i) = (int)'s'; } -#line 5150 "y.tab.c" /* yacc.c:1646 */ +#line 5245 "y.tab.c" /* yacc.c:1646 */ break; case 363: -#line 2311 "lev_comp.y" /* yacc.c:1646 */ +#line 2413 "lev_comp.y" /* yacc.c:1646 */ { char tmpbuf[2]; tmpbuf[0] = (char) (yyvsp[0].i); tmpbuf[1] = '\0'; (yyval.map) = strdup(tmpbuf); } -#line 5161 "y.tab.c" /* yacc.c:1646 */ +#line 5256 "y.tab.c" /* yacc.c:1646 */ break; case 364: -#line 2318 "lev_comp.y" /* yacc.c:1646 */ +#line 2420 "lev_comp.y" /* yacc.c:1646 */ { long len = strlen( (yyvsp[-2].map) ); char *tmp = (char *)alloc(len + 2); @@ -5169,249 +5264,256 @@ yyreduce: Free( (yyvsp[-2].map) ); (yyval.map) = tmp; } -#line 5173 "y.tab.c" /* yacc.c:1646 */ +#line 5268 "y.tab.c" /* yacc.c:1646 */ break; case 365: -#line 2328 "lev_comp.y" /* yacc.c:1646 */ +#line 2430 "lev_comp.y" /* yacc.c:1646 */ { (yyval.map) = strdup(""); } -#line 5181 "y.tab.c" /* yacc.c:1646 */ +#line 5276 "y.tab.c" /* yacc.c:1646 */ break; case 366: -#line 2332 "lev_comp.y" /* yacc.c:1646 */ +#line 2434 "lev_comp.y" /* yacc.c:1646 */ { char *tmp = strdup( (yyvsp[0].map) ); Free( (yyvsp[0].map) ); (yyval.map) = tmp; } -#line 5191 "y.tab.c" /* yacc.c:1646 */ +#line 5286 "y.tab.c" /* yacc.c:1646 */ break; case 367: -#line 2340 "lev_comp.y" /* yacc.c:1646 */ +#line 2442 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_POINT); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_POINT)); } -#line 5199 "y.tab.c" /* yacc.c:1646 */ +#line 5294 "y.tab.c" /* yacc.c:1646 */ break; case 368: -#line 2344 "lev_comp.y" /* yacc.c:1646 */ +#line 2446 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_RECT); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_RECT)); } -#line 5207 "y.tab.c" /* yacc.c:1646 */ +#line 5302 "y.tab.c" /* yacc.c:1646 */ break; case 369: -#line 2348 "lev_comp.y" /* yacc.c:1646 */ +#line 2450 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_FILLRECT); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_FILLRECT)); } -#line 5215 "y.tab.c" /* yacc.c:1646 */ +#line 5310 "y.tab.c" /* yacc.c:1646 */ break; case 370: -#line 2352 "lev_comp.y" /* yacc.c:1646 */ +#line 2454 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_LINE); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_LINE)); } -#line 5223 "y.tab.c" /* yacc.c:1646 */ +#line 5318 "y.tab.c" /* yacc.c:1646 */ break; case 371: -#line 2356 "lev_comp.y" /* yacc.c:1646 */ +#line 2458 "lev_comp.y" /* yacc.c:1646 */ { /* randline (x1,y1),(x2,y2), roughness */ - add_opvars(splev, "o", SPO_SEL_RNDLINE); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_RNDLINE)); } -#line 5232 "y.tab.c" /* yacc.c:1646 */ +#line 5327 "y.tab.c" /* yacc.c:1646 */ break; case 372: -#line 2361 "lev_comp.y" /* yacc.c:1646 */ +#line 2463 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", W_ANY, SPO_SEL_GROW); + add_opvars(splev, "io", VA_PASS2(W_ANY, SPO_SEL_GROW)); } -#line 5240 "y.tab.c" /* yacc.c:1646 */ +#line 5335 "y.tab.c" /* yacc.c:1646 */ break; case 373: -#line 2365 "lev_comp.y" /* yacc.c:1646 */ +#line 2467 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", (yyvsp[-3].i), SPO_SEL_GROW); + add_opvars(splev, "io", VA_PASS2((yyvsp[-3].i), SPO_SEL_GROW)); } -#line 5248 "y.tab.c" /* yacc.c:1646 */ +#line 5343 "y.tab.c" /* yacc.c:1646 */ break; case 374: -#line 2369 "lev_comp.y" /* yacc.c:1646 */ +#line 2471 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "iio", (yyvsp[-3].i), SPOFILTER_PERCENT, SPO_SEL_FILTER); + add_opvars(splev, "iio", + VA_PASS3((yyvsp[-3].i), SPOFILTER_PERCENT, SPO_SEL_FILTER)); } -#line 5256 "y.tab.c" /* yacc.c:1646 */ +#line 5352 "y.tab.c" /* yacc.c:1646 */ break; case 375: -#line 2373 "lev_comp.y" /* yacc.c:1646 */ +#line 2476 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", SPOFILTER_SELECTION, SPO_SEL_FILTER); + add_opvars(splev, "io", + VA_PASS2(SPOFILTER_SELECTION, SPO_SEL_FILTER)); } -#line 5264 "y.tab.c" /* yacc.c:1646 */ +#line 5361 "y.tab.c" /* yacc.c:1646 */ break; case 376: -#line 2377 "lev_comp.y" /* yacc.c:1646 */ +#line 2481 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "io", SPOFILTER_MAPCHAR, SPO_SEL_FILTER); + add_opvars(splev, "io", + VA_PASS2(SPOFILTER_MAPCHAR, SPO_SEL_FILTER)); } -#line 5272 "y.tab.c" /* yacc.c:1646 */ +#line 5370 "y.tab.c" /* yacc.c:1646 */ break; case 377: -#line 2381 "lev_comp.y" /* yacc.c:1646 */ +#line 2486 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "o", SPO_SEL_FLOOD); + add_opvars(splev, "o", VA_PASS1(SPO_SEL_FLOOD)); } -#line 5280 "y.tab.c" /* yacc.c:1646 */ +#line 5378 "y.tab.c" /* yacc.c:1646 */ break; case 378: -#line 2385 "lev_comp.y" /* yacc.c:1646 */ +#line 2490 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "oio", SPO_COPY, 1, SPO_SEL_ELLIPSE); - } -#line 5288 "y.tab.c" /* yacc.c:1646 */ - break; - - case 379: -#line 2389 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "oio", SPO_COPY, (yyvsp[-1].i), SPO_SEL_ELLIPSE); - } -#line 5296 "y.tab.c" /* yacc.c:1646 */ - break; - - case 380: -#line 2393 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "io", 1, SPO_SEL_ELLIPSE); - } -#line 5304 "y.tab.c" /* yacc.c:1646 */ - break; - - case 381: -#line 2397 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "io", (yyvsp[-1].i), SPO_SEL_ELLIPSE); - } -#line 5312 "y.tab.c" /* yacc.c:1646 */ - break; - - case 382: -#line 2401 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "iio", (yyvsp[-5].i), (yyvsp[-11].i), SPO_SEL_GRADIENT); - } -#line 5320 "y.tab.c" /* yacc.c:1646 */ - break; - - case 383: -#line 2405 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "o", SPO_SEL_COMPLEMENT); - } -#line 5328 "y.tab.c" /* yacc.c:1646 */ - break; - - case 384: -#line 2409 "lev_comp.y" /* yacc.c:1646 */ - { - check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_SEL); - vardef_used(variable_definitions, (yyvsp[0].map)); - add_opvars(splev, "v", (yyvsp[0].map)); - Free((yyvsp[0].map)); - } -#line 5339 "y.tab.c" /* yacc.c:1646 */ - break; - - case 385: -#line 2416 "lev_comp.y" /* yacc.c:1646 */ - { - /* nothing */ - } -#line 5347 "y.tab.c" /* yacc.c:1646 */ - break; - - case 386: -#line 2422 "lev_comp.y" /* yacc.c:1646 */ - { - /* nothing */ - } -#line 5355 "y.tab.c" /* yacc.c:1646 */ - break; - - case 387: -#line 2426 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "o", SPO_SEL_ADD); - } -#line 5363 "y.tab.c" /* yacc.c:1646 */ - break; - - case 388: -#line 2432 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "iio", (yyvsp[0].dice).num, (yyvsp[0].dice).die, SPO_DICE); - } -#line 5371 "y.tab.c" /* yacc.c:1646 */ - break; - - case 392: -#line 2443 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", (yyvsp[0].i) ); - } -#line 5379 "y.tab.c" /* yacc.c:1646 */ - break; - - case 393: -#line 2447 "lev_comp.y" /* yacc.c:1646 */ - { - add_opvars(splev, "i", (yyvsp[0].i) ); + add_opvars(splev, "oio", + VA_PASS3(SPO_COPY, 1, SPO_SEL_ELLIPSE)); } #line 5387 "y.tab.c" /* yacc.c:1646 */ break; - case 394: -#line 2451 "lev_comp.y" /* yacc.c:1646 */ + case 379: +#line 2495 "lev_comp.y" /* yacc.c:1646 */ { - add_opvars(splev, "i", (yyvsp[0].i) ); + add_opvars(splev, "oio", + VA_PASS3(SPO_COPY, (yyvsp[-1].i), SPO_SEL_ELLIPSE)); } -#line 5395 "y.tab.c" /* yacc.c:1646 */ +#line 5396 "y.tab.c" /* yacc.c:1646 */ break; - case 395: -#line 2455 "lev_comp.y" /* yacc.c:1646 */ + case 380: +#line 2500 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "io", VA_PASS2(1, SPO_SEL_ELLIPSE)); + } +#line 5404 "y.tab.c" /* yacc.c:1646 */ + break; + + case 381: +#line 2504 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "io", VA_PASS2((yyvsp[-1].i), SPO_SEL_ELLIPSE)); + } +#line 5412 "y.tab.c" /* yacc.c:1646 */ + break; + + case 382: +#line 2508 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "iio", + VA_PASS3((yyvsp[-5].i), (yyvsp[-11].i), SPO_SEL_GRADIENT)); + } +#line 5421 "y.tab.c" /* yacc.c:1646 */ + break; + + case 383: +#line 2513 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_SEL_COMPLEMENT)); + } +#line 5429 "y.tab.c" /* yacc.c:1646 */ + break; + + case 384: +#line 2517 "lev_comp.y" /* yacc.c:1646 */ + { + check_vardef_type(variable_definitions, (yyvsp[0].map), SPOVAR_SEL); + vardef_used(variable_definitions, (yyvsp[0].map)); + add_opvars(splev, "v", VA_PASS1((yyvsp[0].map))); + Free((yyvsp[0].map)); + } +#line 5440 "y.tab.c" /* yacc.c:1646 */ + break; + + case 385: +#line 2524 "lev_comp.y" /* yacc.c:1646 */ { /* nothing */ } -#line 5403 "y.tab.c" /* yacc.c:1646 */ +#line 5448 "y.tab.c" /* yacc.c:1646 */ + break; + + case 386: +#line 2530 "lev_comp.y" /* yacc.c:1646 */ + { + /* nothing */ + } +#line 5456 "y.tab.c" /* yacc.c:1646 */ + break; + + case 387: +#line 2534 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "o", VA_PASS1(SPO_SEL_ADD)); + } +#line 5464 "y.tab.c" /* yacc.c:1646 */ + break; + + case 388: +#line 2540 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "iio", + VA_PASS3((yyvsp[0].dice).num, (yyvsp[0].dice).die, SPO_DICE)); + } +#line 5473 "y.tab.c" /* yacc.c:1646 */ + break; + + case 392: +#line 2552 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1((yyvsp[0].i))); + } +#line 5481 "y.tab.c" /* yacc.c:1646 */ + break; + + case 393: +#line 2556 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1((yyvsp[0].i))); + } +#line 5489 "y.tab.c" /* yacc.c:1646 */ + break; + + case 394: +#line 2560 "lev_comp.y" /* yacc.c:1646 */ + { + add_opvars(splev, "i", VA_PASS1((yyvsp[0].i))); + } +#line 5497 "y.tab.c" /* yacc.c:1646 */ + break; + + case 395: +#line 2564 "lev_comp.y" /* yacc.c:1646 */ + { + /* nothing */ + } +#line 5505 "y.tab.c" /* yacc.c:1646 */ break; case 404: -#line 2477 "lev_comp.y" /* yacc.c:1646 */ +#line 2586 "lev_comp.y" /* yacc.c:1646 */ { (yyval.lregn) = (yyvsp[0].lregn); } -#line 5411 "y.tab.c" /* yacc.c:1646 */ +#line 5513 "y.tab.c" /* yacc.c:1646 */ break; case 405: -#line 2481 "lev_comp.y" /* yacc.c:1646 */ +#line 2590 "lev_comp.y" /* yacc.c:1646 */ { if ((yyvsp[-7].i) <= 0 || (yyvsp[-7].i) >= COLNO) lc_error("Region (%li,%li,%li,%li) out of level range (x1)!", (yyvsp[-7].i), (yyvsp[-5].i), (yyvsp[-3].i), (yyvsp[-1].i)); @@ -5427,11 +5529,11 @@ yyreduce: (yyval.lregn).y2 = (yyvsp[-1].i); (yyval.lregn).area = 1; } -#line 5431 "y.tab.c" /* yacc.c:1646 */ +#line 5533 "y.tab.c" /* yacc.c:1646 */ break; case 406: -#line 2499 "lev_comp.y" /* yacc.c:1646 */ +#line 2608 "lev_comp.y" /* yacc.c:1646 */ { /* This series of if statements is a hack for MSC 5.1. It seems that its tiny little brain cannot compile if these are all one big if statement. */ @@ -5449,11 +5551,11 @@ yyreduce: (yyval.lregn).x2 = (yyvsp[-3].i); (yyval.lregn).y2 = (yyvsp[-1].i); } -#line 5453 "y.tab.c" /* yacc.c:1646 */ +#line 5555 "y.tab.c" /* yacc.c:1646 */ break; -#line 5457 "y.tab.c" /* yacc.c:1646 */ +#line 5559 "y.tab.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -5681,7 +5783,7 @@ yyreturn: #endif return yyresult; } -#line 2519 "lev_comp.y" /* yacc.c:1906 */ +#line 2628 "lev_comp.y" /* yacc.c:1906 */ /*lev_comp.y*/