Index: parse_y.c =================================================================== --- parse_y.c (revision 23561) +++ parse_y.c (revision 23562) @@ -133,7 +133,6 @@ static pcb_poly_t *Polygon; static pcb_symbol_t *Symbol; static int pin_num; -static pcb_lib_menu_t *Menu; static pcb_net_t *currnet; static pcb_bool LayerFlag[PCB_MAX_LAYER + 2]; static int old_fmt; /* 1 if we are reading a PCB(), 0 if PCB[] */ @@ -183,7 +182,7 @@ #include "parse_y.h" -#line 187 "parse_y.c" /* yacc.c:339 */ +#line 186 "parse_y.c" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -274,7 +273,7 @@ typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 119 "parse_y.y" /* yacc.c:355 */ +#line 118 "parse_y.y" /* yacc.c:355 */ int integer; double number; @@ -282,7 +281,7 @@ pcb_flag_t flagtype; PLMeasure measure; -#line 286 "parse_y.c" /* yacc.c:355 */ +#line 285 "parse_y.c" /* yacc.c:355 */ }; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 @@ -297,7 +296,7 @@ /* Copy the second part of user declarations. */ -#line 301 "parse_y.c" /* yacc.c:358 */ +#line 300 "parse_y.c" /* yacc.c:358 */ #ifdef short # undef short @@ -599,28 +598,28 @@ /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 146, 146, 147, 148, 149, 153, 153, 227, 227, - 248, 248, 267, 268, 273, 273, 295, 297, 307, 314, - 321, 331, 332, 333, 336, 344, 359, 374, 378, 382, - 385, 387, 394, 396, 402, 404, 405, 406, 410, 420, - 431, 443, 447, 452, 456, 460, 464, 473, 482, 486, - 487, 491, 492, 496, 497, 497, 498, 499, 501, 501, - 508, 512, 513, 514, 515, 516, 521, 531, 542, 552, - 562, 578, 583, 593, 592, 623, 624, 628, 629, 633, - 634, 635, 636, 637, 638, 640, 645, 646, 647, 648, - 648, 649, 653, 662, 671, 682, 691, 700, 709, 719, - 737, 762, 761, 800, 802, 807, 806, 813, 815, 820, - 824, 831, 832, 833, 834, 835, 843, 842, 861, 860, - 879, 878, 899, 897, 921, 919, 944, 945, 949, 950, - 951, 952, 953, 955, 960, 965, 970, 975, 980, 985, - 985, 989, 990, 994, 995, 996, 997, 999, 1005, 1012, - 1017, 1022, 1022, 1028, 1041, 1053, 1064, 1080, 1099, 1114, - 1127, 1138, 1149, 1150, 1154, 1155, 1158, 1160, 1176, 1195, - 1196, 1199, 1201, 1202, 1207, 1214, 1220, 1221, 1225, 1230, - 1231, 1235, 1236, 1242, 1241, 1254, 1255, 1259, 1260, 1264, - 1282, 1283, 1287, 1292, 1293, 1297, 1298, 1313, 1314, 1315, - 1319, 1332, 1333, 1337, 1338, 1343, 1344, 1345, 1346, 1347, - 1348, 1349, 1350, 1351, 1352 + 0, 145, 145, 146, 147, 148, 152, 152, 226, 226, + 247, 247, 266, 267, 272, 272, 294, 296, 306, 313, + 320, 330, 331, 332, 335, 343, 358, 373, 377, 381, + 384, 386, 393, 395, 401, 403, 404, 405, 409, 419, + 430, 442, 446, 451, 455, 459, 463, 472, 481, 485, + 486, 490, 491, 495, 496, 496, 497, 498, 500, 500, + 507, 511, 512, 513, 514, 515, 520, 530, 541, 551, + 561, 577, 582, 592, 591, 622, 623, 627, 628, 632, + 633, 634, 635, 636, 637, 639, 644, 645, 646, 647, + 647, 648, 652, 661, 670, 681, 690, 699, 708, 718, + 736, 761, 760, 799, 801, 806, 805, 812, 814, 819, + 823, 830, 831, 832, 833, 834, 842, 841, 860, 859, + 878, 877, 898, 896, 920, 918, 943, 944, 948, 949, + 950, 951, 952, 954, 959, 964, 969, 974, 979, 984, + 984, 988, 989, 993, 994, 995, 996, 998, 1004, 1011, + 1016, 1021, 1021, 1027, 1040, 1052, 1063, 1079, 1098, 1113, + 1126, 1137, 1148, 1149, 1153, 1154, 1157, 1159, 1175, 1194, + 1195, 1198, 1200, 1201, 1206, 1213, 1219, 1220, 1224, 1229, + 1230, 1234, 1235, 1241, 1240, 1252, 1253, 1257, 1258, 1262, + 1279, 1280, 1284, 1289, 1290, 1294, 1295, 1310, 1311, 1312, + 1316, 1329, 1330, 1334, 1335, 1340, 1341, 1342, 1343, 1344, + 1345, 1346, 1347, 1348, 1349 }; #endif @@ -1797,13 +1796,13 @@ switch (yyn) { case 5: -#line 149 "parse_y.y" /* yacc.c:1646 */ +#line 148 "parse_y.y" /* yacc.c:1646 */ { YYABORT; } -#line 1803 "parse_y.c" /* yacc.c:1646 */ +#line 1802 "parse_y.c" /* yacc.c:1646 */ break; case 6: -#line 153 "parse_y.y" /* yacc.c:1646 */ +#line 152 "parse_y.y" /* yacc.c:1646 */ { /* reset flags for 'used layers'; * init font and data pointers @@ -1826,11 +1825,11 @@ layer_group_string = NULL; old_fmt = 0; } -#line 1830 "parse_y.c" /* yacc.c:1646 */ +#line 1829 "parse_y.c" /* yacc.c:1646 */ break; case 7: -#line 189 "parse_y.y" /* yacc.c:1646 */ +#line 188 "parse_y.y" /* yacc.c:1646 */ { pcb_board_t *pcb_save = PCB; if ((yy_settings_dest != CFR_invalid) && (layer_group_string != NULL)) @@ -1868,18 +1867,18 @@ PCB_ENDALL_LOOP; PCB = pcb_save; } -#line 1872 "parse_y.c" /* yacc.c:1646 */ +#line 1871 "parse_y.c" /* yacc.c:1646 */ break; case 8: -#line 227 "parse_y.y" /* yacc.c:1646 */ +#line 226 "parse_y.y" /* yacc.c:1646 */ { PreLoadElementPCB (); layer_group_string = NULL; } -#line 1879 "parse_y.c" /* yacc.c:1646 */ +#line 1878 "parse_y.c" /* yacc.c:1646 */ break; case 9: -#line 230 "parse_y.y" /* yacc.c:1646 */ +#line 229 "parse_y.y" /* yacc.c:1646 */ { LayerFlag[0] = pcb_true; LayerFlag[1] = pcb_true; if (yyElemFixLayers) { @@ -1895,11 +1894,11 @@ } PostLoadElementPCB (); } -#line 1899 "parse_y.c" /* yacc.c:1646 */ +#line 1898 "parse_y.c" /* yacc.c:1646 */ break; case 10: -#line 248 "parse_y.y" /* yacc.c:1646 */ +#line 247 "parse_y.y" /* yacc.c:1646 */ { /* reset flags for 'used layers'; * init font and data pointers @@ -1915,11 +1914,11 @@ LayerFlag[i] = pcb_false; yyData->LayerN = 0; } -#line 1919 "parse_y.c" /* yacc.c:1646 */ +#line 1918 "parse_y.c" /* yacc.c:1646 */ break; case 14: -#line 273 "parse_y.y" /* yacc.c:1646 */ +#line 272 "parse_y.y" /* yacc.c:1646 */ { /* mark all symbols invalid */ int i; @@ -1935,20 +1934,20 @@ } *yyFontkitValid = pcb_false; } -#line 1939 "parse_y.c" /* yacc.c:1646 */ +#line 1938 "parse_y.c" /* yacc.c:1646 */ break; case 15: -#line 289 "parse_y.y" /* yacc.c:1646 */ +#line 288 "parse_y.y" /* yacc.c:1646 */ { *yyFontkitValid = pcb_true; pcb_font_set_info(yyFont); } -#line 1948 "parse_y.c" /* yacc.c:1646 */ +#line 1947 "parse_y.c" /* yacc.c:1646 */ break; case 17: -#line 298 "parse_y.y" /* yacc.c:1646 */ +#line 297 "parse_y.y" /* yacc.c:1646 */ { if (check_file_version ((yyvsp[-1].integer)) != 0) { @@ -1955,11 +1954,11 @@ YYABORT; } } -#line 1959 "parse_y.c" /* yacc.c:1646 */ +#line 1958 "parse_y.c" /* yacc.c:1646 */ break; case 18: -#line 308 "parse_y.y" /* yacc.c:1646 */ +#line 307 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-1].string); yyPCB->MaxWidth = PCB_MAX_COORD; @@ -1966,11 +1965,11 @@ yyPCB->MaxHeight = PCB_MAX_COORD; old_fmt = 1; } -#line 1970 "parse_y.c" /* yacc.c:1646 */ +#line 1969 "parse_y.c" /* yacc.c:1646 */ break; case 19: -#line 315 "parse_y.y" /* yacc.c:1646 */ +#line 314 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-3].string); yyPCB->MaxWidth = OU ((yyvsp[-2].measure)); @@ -1977,11 +1976,11 @@ yyPCB->MaxHeight = OU ((yyvsp[-1].measure)); old_fmt = 1; } -#line 1981 "parse_y.c" /* yacc.c:1646 */ +#line 1980 "parse_y.c" /* yacc.c:1646 */ break; case 20: -#line 322 "parse_y.y" /* yacc.c:1646 */ +#line 321 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-3].string); yyPCB->MaxWidth = NU ((yyvsp[-2].measure)); @@ -1988,21 +1987,21 @@ yyPCB->MaxHeight = NU ((yyvsp[-1].measure)); old_fmt = 0; } -#line 1992 "parse_y.c" /* yacc.c:1646 */ +#line 1991 "parse_y.c" /* yacc.c:1646 */ break; case 24: -#line 337 "parse_y.y" /* yacc.c:1646 */ +#line 336 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Grid = OU ((yyvsp[-3].measure)); yyPCB->GridOffsetX = OU ((yyvsp[-2].measure)); yyPCB->GridOffsetY = OU ((yyvsp[-1].measure)); } -#line 2002 "parse_y.c" /* yacc.c:1646 */ +#line 2001 "parse_y.c" /* yacc.c:1646 */ break; case 25: -#line 345 "parse_y.y" /* yacc.c:1646 */ +#line 344 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Grid = OU ((yyvsp[-4].measure)); yyPCB->GridOffsetX = OU ((yyvsp[-3].measure)); @@ -2014,11 +2013,11 @@ conf_set(yy_settings_dest, "editor/draw_grid", -1, "false", POL_OVERWRITE); } } -#line 2018 "parse_y.c" /* yacc.c:1646 */ +#line 2017 "parse_y.c" /* yacc.c:1646 */ break; case 26: -#line 360 "parse_y.y" /* yacc.c:1646 */ +#line 359 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Grid = NU ((yyvsp[-4].measure)); yyPCB->GridOffsetX = NU ((yyvsp[-3].measure)); @@ -2030,44 +2029,44 @@ conf_set(yy_settings_dest, "editor/draw_grid", -1, "false", POL_OVERWRITE); } } -#line 2034 "parse_y.c" /* yacc.c:1646 */ +#line 2033 "parse_y.c" /* yacc.c:1646 */ break; case 27: -#line 375 "parse_y.y" /* yacc.c:1646 */ +#line 374 "parse_y.y" /* yacc.c:1646 */ { /* Not loading cursor position and zoom anymore */ } -#line 2042 "parse_y.c" /* yacc.c:1646 */ +#line 2041 "parse_y.c" /* yacc.c:1646 */ break; case 28: -#line 379 "parse_y.y" /* yacc.c:1646 */ +#line 378 "parse_y.y" /* yacc.c:1646 */ { /* Not loading cursor position and zoom anymore */ } -#line 2050 "parse_y.c" /* yacc.c:1646 */ +#line 2049 "parse_y.c" /* yacc.c:1646 */ break; case 31: -#line 388 "parse_y.y" /* yacc.c:1646 */ +#line 387 "parse_y.y" /* yacc.c:1646 */ { /* Read in cmil^2 for now; in future this should be a noop. */ load_meta_float("design/poly_isle_area", PCB_MIL_TO_COORD(PCB_MIL_TO_COORD ((yyvsp[-1].number)) / 100.0) / 100.0); } -#line 2059 "parse_y.c" /* yacc.c:1646 */ +#line 2058 "parse_y.c" /* yacc.c:1646 */ break; case 33: -#line 397 "parse_y.y" /* yacc.c:1646 */ +#line 396 "parse_y.y" /* yacc.c:1646 */ { yyPCB->ThermScale = (yyvsp[-1].number); } -#line 2067 "parse_y.c" /* yacc.c:1646 */ +#line 2066 "parse_y.c" /* yacc.c:1646 */ break; case 38: -#line 411 "parse_y.y" /* yacc.c:1646 */ +#line 410 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-3].measure))); load_meta_coord("design/shrink", NU((yyvsp[-2].measure))); @@ -2074,11 +2073,11 @@ load_meta_coord("design/min_wid", NU((yyvsp[-1].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-1].measure))); } -#line 2078 "parse_y.c" /* yacc.c:1646 */ +#line 2077 "parse_y.c" /* yacc.c:1646 */ break; case 39: -#line 421 "parse_y.y" /* yacc.c:1646 */ +#line 420 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-4].measure))); load_meta_coord("design/shrink", NU((yyvsp[-3].measure))); @@ -2086,11 +2085,11 @@ load_meta_coord("design/min_slk", NU((yyvsp[-1].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-2].measure))); } -#line 2090 "parse_y.c" /* yacc.c:1646 */ +#line 2089 "parse_y.c" /* yacc.c:1646 */ break; case 40: -#line 432 "parse_y.y" /* yacc.c:1646 */ +#line 431 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-6].measure))); load_meta_coord("design/shrink", NU((yyvsp[-5].measure))); @@ -2099,36 +2098,36 @@ load_meta_coord("design/min_drill", NU((yyvsp[-2].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-1].measure))); } -#line 2103 "parse_y.c" /* yacc.c:1646 */ +#line 2102 "parse_y.c" /* yacc.c:1646 */ break; case 41: -#line 444 "parse_y.y" /* yacc.c:1646 */ +#line 443 "parse_y.y" /* yacc.c:1646 */ { yy_pcb_flags = pcb_flag_make((yyvsp[-1].integer) & PCB_FLAGS); } -#line 2111 "parse_y.c" /* yacc.c:1646 */ +#line 2110 "parse_y.c" /* yacc.c:1646 */ break; case 42: -#line 448 "parse_y.y" /* yacc.c:1646 */ +#line 447 "parse_y.y" /* yacc.c:1646 */ { yy_pcb_flags = pcb_strflg_board_s2f((yyvsp[-1].string), yyerror); free((yyvsp[-1].string)); } -#line 2120 "parse_y.c" /* yacc.c:1646 */ +#line 2119 "parse_y.c" /* yacc.c:1646 */ break; case 44: -#line 457 "parse_y.y" /* yacc.c:1646 */ +#line 456 "parse_y.y" /* yacc.c:1646 */ { layer_group_string = (yyvsp[-1].string); } -#line 2128 "parse_y.c" /* yacc.c:1646 */ +#line 2127 "parse_y.c" /* yacc.c:1646 */ break; case 46: -#line 465 "parse_y.y" /* yacc.c:1646 */ +#line 464 "parse_y.y" /* yacc.c:1646 */ { if (pcb_route_string_parse((yyvsp[-1].string), &yyPCB->RouteStyle, "mil")) { @@ -2137,11 +2136,11 @@ } free((yyvsp[-1].string)); } -#line 2141 "parse_y.c" /* yacc.c:1646 */ +#line 2140 "parse_y.c" /* yacc.c:1646 */ break; case 47: -#line 474 "parse_y.y" /* yacc.c:1646 */ +#line 473 "parse_y.y" /* yacc.c:1646 */ { if (pcb_route_string_parse(((yyvsp[-1].string) == NULL ? "" : (yyvsp[-1].string)), &yyPCB->RouteStyle, "cmil")) { @@ -2150,17 +2149,17 @@ } free((yyvsp[-1].string)); } -#line 2154 "parse_y.c" /* yacc.c:1646 */ +#line 2153 "parse_y.c" /* yacc.c:1646 */ break; case 54: -#line 497 "parse_y.y" /* yacc.c:1646 */ +#line 496 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yyPCB->Attributes; } -#line 2160 "parse_y.c" /* yacc.c:1646 */ +#line 2159 "parse_y.c" /* yacc.c:1646 */ break; case 58: -#line 501 "parse_y.y" /* yacc.c:1646 */ +#line 500 "parse_y.y" /* yacc.c:1646 */ { /* clear pointer to force memory allocation by * the appropriate subroutine @@ -2167,57 +2166,57 @@ */ yysubc = NULL; } -#line 2171 "parse_y.c" /* yacc.c:1646 */ +#line 2170 "parse_y.c" /* yacc.c:1646 */ break; case 60: -#line 508 "parse_y.y" /* yacc.c:1646 */ +#line 507 "parse_y.y" /* yacc.c:1646 */ { YYABORT; } -#line 2177 "parse_y.c" /* yacc.c:1646 */ +#line 2176 "parse_y.c" /* yacc.c:1646 */ break; case 66: -#line 522 "parse_y.y" /* yacc.c:1646 */ +#line 521 "parse_y.y" /* yacc.c:1646 */ { pcb_old_via_new(yyData, -1, NU ((yyvsp[-8].measure)), NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), NU ((yyvsp[-3].measure)), (yyvsp[-2].string), (yyvsp[-1].flagtype)); free ((yyvsp[-2].string)); } -#line 2187 "parse_y.c" /* yacc.c:1646 */ +#line 2186 "parse_y.c" /* yacc.c:1646 */ break; case 67: -#line 532 "parse_y.y" /* yacc.c:1646 */ +#line 531 "parse_y.y" /* yacc.c:1646 */ { pcb_old_via_new(yyData, -1, OU ((yyvsp[-8].measure)), OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2197 "parse_y.c" /* yacc.c:1646 */ +#line 2196 "parse_y.c" /* yacc.c:1646 */ break; case 68: -#line 543 "parse_y.y" /* yacc.c:1646 */ +#line 542 "parse_y.y" /* yacc.c:1646 */ { pcb_old_via_new(yyData, -1, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-5].measure)) + OU((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2207 "parse_y.c" /* yacc.c:1646 */ +#line 2206 "parse_y.c" /* yacc.c:1646 */ break; case 69: -#line 553 "parse_y.y" /* yacc.c:1646 */ +#line 552 "parse_y.y" /* yacc.c:1646 */ { pcb_old_via_new(yyData, -1, OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), 2*PCB_GROUNDPLANEFRAME, OU((yyvsp[-4].measure)) + 2*PCB_MASKFRAME, OU ((yyvsp[-3].measure)), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2217 "parse_y.c" /* yacc.c:1646 */ +#line 2216 "parse_y.c" /* yacc.c:1646 */ break; case 70: -#line 563 "parse_y.y" /* yacc.c:1646 */ +#line 562 "parse_y.y" /* yacc.c:1646 */ { pcb_coord_t hole = (OU((yyvsp[-3].measure)) * PCB_DEFAULT_DRILLINGHOLE); @@ -2230,29 +2229,29 @@ OU((yyvsp[-3].measure)) + 2*PCB_MASKFRAME, hole, (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2234 "parse_y.c" /* yacc.c:1646 */ +#line 2233 "parse_y.c" /* yacc.c:1646 */ break; case 71: -#line 579 "parse_y.y" /* yacc.c:1646 */ +#line 578 "parse_y.y" /* yacc.c:1646 */ { pcb_rat_new(yyData, -1, NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), NU ((yyvsp[-4].measure)), NU ((yyvsp[-3].measure)), (yyvsp[-5].integer), (yyvsp[-2].integer), conf_core.appearance.rat_thickness, (yyvsp[-1].flagtype)); } -#line 2243 "parse_y.c" /* yacc.c:1646 */ +#line 2242 "parse_y.c" /* yacc.c:1646 */ break; case 72: -#line 584 "parse_y.y" /* yacc.c:1646 */ +#line 583 "parse_y.y" /* yacc.c:1646 */ { pcb_rat_new(yyData, -1, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), (yyvsp[-5].integer), (yyvsp[-2].integer), conf_core.appearance.rat_thickness, pcb_flag_old((yyvsp[-1].integer))); } -#line 2252 "parse_y.c" /* yacc.c:1646 */ +#line 2251 "parse_y.c" /* yacc.c:1646 */ break; case 73: -#line 593 "parse_y.y" /* yacc.c:1646 */ +#line 592 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-4].integer) <= 0 || (yyvsp[-4].integer) > PCB_MAX_LAYER) { @@ -2279,44 +2278,44 @@ if ((yyvsp[-2].string) != NULL) free((yyvsp[-2].string)); } -#line 2283 "parse_y.c" /* yacc.c:1646 */ +#line 2282 "parse_y.c" /* yacc.c:1646 */ break; case 85: -#line 641 "parse_y.y" /* yacc.c:1646 */ +#line 640 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_new_from_rectangle(Layer, OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-5].measure)) + OU ((yyvsp[-3].measure)), OU ((yyvsp[-4].measure)) + OU ((yyvsp[-2].measure)), 0, pcb_flag_old((yyvsp[-1].integer))); } -#line 2292 "parse_y.c" /* yacc.c:1646 */ +#line 2291 "parse_y.c" /* yacc.c:1646 */ break; case 89: -#line 648 "parse_y.y" /* yacc.c:1646 */ +#line 647 "parse_y.y" /* yacc.c:1646 */ { attr_list = & Layer->Attributes; } -#line 2298 "parse_y.c" /* yacc.c:1646 */ +#line 2297 "parse_y.c" /* yacc.c:1646 */ break; case 92: -#line 654 "parse_y.y" /* yacc.c:1646 */ +#line 653 "parse_y.y" /* yacc.c:1646 */ { pcb_line_new(Layer, NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), NU ((yyvsp[-3].measure)), NU ((yyvsp[-2].measure)), (yyvsp[-1].flagtype)); } -#line 2307 "parse_y.c" /* yacc.c:1646 */ +#line 2306 "parse_y.c" /* yacc.c:1646 */ break; case 93: -#line 663 "parse_y.y" /* yacc.c:1646 */ +#line 662 "parse_y.y" /* yacc.c:1646 */ { pcb_line_new(Layer, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), OU ((yyvsp[-2].measure)), pcb_flag_old((yyvsp[-1].integer))); } -#line 2316 "parse_y.c" /* yacc.c:1646 */ +#line 2315 "parse_y.c" /* yacc.c:1646 */ break; case 94: -#line 672 "parse_y.y" /* yacc.c:1646 */ +#line 671 "parse_y.y" /* yacc.c:1646 */ { /* eliminate old-style rat-lines */ if ((IV ((yyvsp[-1].measure)) & PCB_FLAG_RAT) == 0) @@ -2323,48 +2322,48 @@ pcb_line_new(Layer, OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), OU ((yyvsp[-2].measure)), 200*PCB_GROUNDPLANEFRAME, pcb_flag_old(IV ((yyvsp[-1].measure)))); } -#line 2327 "parse_y.c" /* yacc.c:1646 */ +#line 2326 "parse_y.c" /* yacc.c:1646 */ break; case 95: -#line 683 "parse_y.y" /* yacc.c:1646 */ +#line 682 "parse_y.y" /* yacc.c:1646 */ { pcb_arc_new(Layer, NU ((yyvsp[-9].measure)), NU ((yyvsp[-8].measure)), NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), (yyvsp[-3].number), (yyvsp[-2].number), NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), (yyvsp[-1].flagtype), pcb_true); } -#line 2336 "parse_y.c" /* yacc.c:1646 */ +#line 2335 "parse_y.c" /* yacc.c:1646 */ break; case 96: -#line 692 "parse_y.y" /* yacc.c:1646 */ +#line 691 "parse_y.y" /* yacc.c:1646 */ { pcb_arc_new(Layer, OU ((yyvsp[-9].measure)), OU ((yyvsp[-8].measure)), OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), (yyvsp[-3].number), (yyvsp[-2].number), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), pcb_flag_old((yyvsp[-1].integer)), pcb_true); } -#line 2345 "parse_y.c" /* yacc.c:1646 */ +#line 2344 "parse_y.c" /* yacc.c:1646 */ break; case 97: -#line 701 "parse_y.y" /* yacc.c:1646 */ +#line 700 "parse_y.y" /* yacc.c:1646 */ { pcb_arc_new(Layer, OU ((yyvsp[-8].measure)), OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-6].measure)), IV ((yyvsp[-3].measure)), (yyvsp[-2].number), OU ((yyvsp[-4].measure)), 200*PCB_GROUNDPLANEFRAME, pcb_flag_old((yyvsp[-1].integer)), pcb_true); } -#line 2354 "parse_y.c" /* yacc.c:1646 */ +#line 2353 "parse_y.c" /* yacc.c:1646 */ break; case 98: -#line 710 "parse_y.y" /* yacc.c:1646 */ +#line 709 "parse_y.y" /* yacc.c:1646 */ { /* use a default scale of 100% */ pcb_text_new(Layer,yyFont,OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), (yyvsp[-3].number) * 90.0, 100, 0, (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2364 "parse_y.c" /* yacc.c:1646 */ +#line 2363 "parse_y.c" /* yacc.c:1646 */ break; case 99: -#line 720 "parse_y.y" /* yacc.c:1646 */ +#line 719 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-1].integer) & PCB_FLAG_ONSILK) { @@ -2379,11 +2378,11 @@ pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2383 "parse_y.c" /* yacc.c:1646 */ +#line 2382 "parse_y.c" /* yacc.c:1646 */ break; case 100: -#line 738 "parse_y.y" /* yacc.c:1646 */ +#line 737 "parse_y.y" /* yacc.c:1646 */ { /* FIXME: shouldn't know about .f */ /* I don't think this matters because anything with hi_format @@ -2403,19 +2402,19 @@ pcb_text_new(Layer, yyFont, NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), (yyvsp[-4].number) * 90.0, (yyvsp[-3].number), 0, (yyvsp[-2].string), (yyvsp[-1].flagtype)); free ((yyvsp[-2].string)); } -#line 2407 "parse_y.c" /* yacc.c:1646 */ +#line 2406 "parse_y.c" /* yacc.c:1646 */ break; case 101: -#line 762 "parse_y.y" /* yacc.c:1646 */ +#line 761 "parse_y.y" /* yacc.c:1646 */ { Polygon = pcb_poly_new(Layer, 0, (yyvsp[-2].flagtype)); } -#line 2415 "parse_y.c" /* yacc.c:1646 */ +#line 2414 "parse_y.c" /* yacc.c:1646 */ break; case 102: -#line 767 "parse_y.y" /* yacc.c:1646 */ +#line 766 "parse_y.y" /* yacc.c:1646 */ { pcb_cardinal_t contour, contour_start, contour_end; pcb_bool bad_contour_found = pcb_false; @@ -2447,35 +2446,35 @@ pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) Polygon); } } -#line 2451 "parse_y.c" /* yacc.c:1646 */ +#line 2450 "parse_y.c" /* yacc.c:1646 */ break; case 105: -#line 807 "parse_y.y" /* yacc.c:1646 */ +#line 806 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_hole_new(Polygon); } -#line 2459 "parse_y.c" /* yacc.c:1646 */ +#line 2458 "parse_y.c" /* yacc.c:1646 */ break; case 109: -#line 821 "parse_y.y" /* yacc.c:1646 */ +#line 820 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_point_new(Polygon, OU ((yyvsp[-2].measure)), OU ((yyvsp[-1].measure))); } -#line 2467 "parse_y.c" /* yacc.c:1646 */ +#line 2466 "parse_y.c" /* yacc.c:1646 */ break; case 110: -#line 825 "parse_y.y" /* yacc.c:1646 */ +#line 824 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_point_new(Polygon, NU ((yyvsp[-2].measure)), NU ((yyvsp[-1].measure))); } -#line 2475 "parse_y.c" /* yacc.c:1646 */ +#line 2474 "parse_y.c" /* yacc.c:1646 */ break; case 116: -#line 843 "parse_y.y" /* yacc.c:1646 */ +#line 842 "parse_y.y" /* yacc.c:1646 */ { yysubc = io_pcb_element_new(yyData, yysubc, yyFont, pcb_no_flags(), (yyvsp[-6].string), (yyvsp[-5].string), NULL, OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), (yyvsp[-2].integer), 100, pcb_no_flags(), pcb_false); @@ -2483,19 +2482,19 @@ free ((yyvsp[-5].string)); pin_num = 1; } -#line 2487 "parse_y.c" /* yacc.c:1646 */ +#line 2486 "parse_y.c" /* yacc.c:1646 */ break; case 117: -#line 851 "parse_y.y" /* yacc.c:1646 */ +#line 850 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2495 "parse_y.c" /* yacc.c:1646 */ +#line 2494 "parse_y.c" /* yacc.c:1646 */ break; case 118: -#line 861 "parse_y.y" /* yacc.c:1646 */ +#line 860 "parse_y.y" /* yacc.c:1646 */ { yysubc = io_pcb_element_new(yyData, yysubc, yyFont, pcb_flag_old((yyvsp[-9].integer)), (yyvsp[-8].string), (yyvsp[-7].string), NULL, OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), IV ((yyvsp[-4].measure)), IV ((yyvsp[-3].measure)), pcb_flag_old((yyvsp[-2].integer)), pcb_false); @@ -2503,19 +2502,19 @@ free ((yyvsp[-7].string)); pin_num = 1; } -#line 2507 "parse_y.c" /* yacc.c:1646 */ +#line 2506 "parse_y.c" /* yacc.c:1646 */ break; case 119: -#line 869 "parse_y.y" /* yacc.c:1646 */ +#line 868 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2515 "parse_y.c" /* yacc.c:1646 */ +#line 2514 "parse_y.c" /* yacc.c:1646 */ break; case 120: -#line 879 "parse_y.y" /* yacc.c:1646 */ +#line 878 "parse_y.y" /* yacc.c:1646 */ { yysubc = io_pcb_element_new(yyData, yysubc, yyFont, pcb_flag_old((yyvsp[-10].integer)), (yyvsp[-9].string), (yyvsp[-8].string), (yyvsp[-7].string), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), IV ((yyvsp[-4].measure)), IV ((yyvsp[-3].measure)), pcb_flag_old((yyvsp[-2].integer)), pcb_false); @@ -2524,19 +2523,19 @@ free ((yyvsp[-7].string)); pin_num = 1; } -#line 2528 "parse_y.c" /* yacc.c:1646 */ +#line 2527 "parse_y.c" /* yacc.c:1646 */ break; case 121: -#line 888 "parse_y.y" /* yacc.c:1646 */ +#line 887 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2536 "parse_y.c" /* yacc.c:1646 */ +#line 2535 "parse_y.c" /* yacc.c:1646 */ break; case 122: -#line 899 "parse_y.y" /* yacc.c:1646 */ +#line 898 "parse_y.y" /* yacc.c:1646 */ { yysubc = io_pcb_element_new(yyData, yysubc, yyFont, pcb_flag_old((yyvsp[-12].integer)), (yyvsp[-11].string), (yyvsp[-10].string), (yyvsp[-9].string), OU ((yyvsp[-8].measure)) + OU ((yyvsp[-6].measure)), OU ((yyvsp[-7].measure)) + OU ((yyvsp[-5].measure)), @@ -2547,19 +2546,19 @@ free ((yyvsp[-10].string)); free ((yyvsp[-9].string)); } -#line 2551 "parse_y.c" /* yacc.c:1646 */ +#line 2550 "parse_y.c" /* yacc.c:1646 */ break; case 123: -#line 910 "parse_y.y" /* yacc.c:1646 */ +#line 909 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2559 "parse_y.c" /* yacc.c:1646 */ +#line 2558 "parse_y.c" /* yacc.c:1646 */ break; case 124: -#line 921 "parse_y.y" /* yacc.c:1646 */ +#line 920 "parse_y.y" /* yacc.c:1646 */ { yysubc = io_pcb_element_new(yyData, yysubc, yyFont, (yyvsp[-12].flagtype), (yyvsp[-11].string), (yyvsp[-10].string), (yyvsp[-9].string), NU ((yyvsp[-8].measure)) + NU ((yyvsp[-6].measure)), NU ((yyvsp[-7].measure)) + NU ((yyvsp[-5].measure)), @@ -2570,11 +2569,11 @@ free ((yyvsp[-10].string)); free ((yyvsp[-9].string)); } -#line 2574 "parse_y.c" /* yacc.c:1646 */ +#line 2573 "parse_y.c" /* yacc.c:1646 */ break; case 125: -#line 932 "parse_y.y" /* yacc.c:1646 */ +#line 931 "parse_y.y" /* yacc.c:1646 */ { if (pcb_subc_is_empty(yysubc)) { pcb_subc_free(yysubc); @@ -2584,111 +2583,111 @@ io_pcb_element_fin(yyData); } } -#line 2588 "parse_y.c" /* yacc.c:1646 */ +#line 2587 "parse_y.c" /* yacc.c:1646 */ break; case 133: -#line 956 "parse_y.y" /* yacc.c:1646 */ +#line 955 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_line_new(yysubc, NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), NU ((yyvsp[-3].measure)), NU ((yyvsp[-2].measure)), NU ((yyvsp[-1].measure))); } -#line 2596 "parse_y.c" /* yacc.c:1646 */ +#line 2595 "parse_y.c" /* yacc.c:1646 */ break; case 134: -#line 961 "parse_y.y" /* yacc.c:1646 */ +#line 960 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_line_new(yysubc, OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), OU ((yyvsp[-2].measure)), OU ((yyvsp[-1].measure))); } -#line 2604 "parse_y.c" /* yacc.c:1646 */ +#line 2603 "parse_y.c" /* yacc.c:1646 */ break; case 135: -#line 966 "parse_y.y" /* yacc.c:1646 */ +#line 965 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_arc_new(yysubc, NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), (yyvsp[-3].number), (yyvsp[-2].number), NU ((yyvsp[-1].measure))); } -#line 2612 "parse_y.c" /* yacc.c:1646 */ +#line 2611 "parse_y.c" /* yacc.c:1646 */ break; case 136: -#line 971 "parse_y.y" /* yacc.c:1646 */ +#line 970 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_arc_new(yysubc, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), (yyvsp[-3].number), (yyvsp[-2].number), OU ((yyvsp[-1].measure))); } -#line 2620 "parse_y.c" /* yacc.c:1646 */ +#line 2619 "parse_y.c" /* yacc.c:1646 */ break; case 137: -#line 976 "parse_y.y" /* yacc.c:1646 */ +#line 975 "parse_y.y" /* yacc.c:1646 */ { yysubc_ox = NU ((yyvsp[-2].measure)); yysubc_oy = NU ((yyvsp[-1].measure)); } -#line 2629 "parse_y.c" /* yacc.c:1646 */ +#line 2628 "parse_y.c" /* yacc.c:1646 */ break; case 138: -#line 981 "parse_y.y" /* yacc.c:1646 */ +#line 980 "parse_y.y" /* yacc.c:1646 */ { yysubc_ox = OU ((yyvsp[-2].measure)); yysubc_oy = OU ((yyvsp[-1].measure)); } -#line 2638 "parse_y.c" /* yacc.c:1646 */ +#line 2637 "parse_y.c" /* yacc.c:1646 */ break; case 139: -#line 985 "parse_y.y" /* yacc.c:1646 */ +#line 984 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yysubc->Attributes; } -#line 2644 "parse_y.c" /* yacc.c:1646 */ +#line 2643 "parse_y.c" /* yacc.c:1646 */ break; case 147: -#line 1000 "parse_y.y" /* yacc.c:1646 */ +#line 999 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_line_new(yysubc, NU ((yyvsp[-5].measure)) + yysubc_ox, NU ((yyvsp[-4].measure)) + yysubc_oy, NU ((yyvsp[-3].measure)) + yysubc_ox, NU ((yyvsp[-2].measure)) + yysubc_oy, NU ((yyvsp[-1].measure))); } -#line 2654 "parse_y.c" /* yacc.c:1646 */ +#line 2653 "parse_y.c" /* yacc.c:1646 */ break; case 148: -#line 1006 "parse_y.y" /* yacc.c:1646 */ +#line 1005 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_line_new(yysubc, OU ((yyvsp[-5].measure)) + yysubc_ox, OU ((yyvsp[-4].measure)) + yysubc_oy, OU ((yyvsp[-3].measure)) + yysubc_ox, OU ((yyvsp[-2].measure)) + yysubc_oy, OU ((yyvsp[-1].measure))); } -#line 2664 "parse_y.c" /* yacc.c:1646 */ +#line 2663 "parse_y.c" /* yacc.c:1646 */ break; case 149: -#line 1013 "parse_y.y" /* yacc.c:1646 */ +#line 1012 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_arc_new(yysubc, NU ((yyvsp[-7].measure)) + yysubc_ox, NU ((yyvsp[-6].measure)) + yysubc_oy, NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), (yyvsp[-3].number), (yyvsp[-2].number), NU ((yyvsp[-1].measure))); } -#line 2673 "parse_y.c" /* yacc.c:1646 */ +#line 2672 "parse_y.c" /* yacc.c:1646 */ break; case 150: -#line 1018 "parse_y.y" /* yacc.c:1646 */ +#line 1017 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_arc_new(yysubc, OU ((yyvsp[-7].measure)) + yysubc_ox, OU ((yyvsp[-6].measure)) + yysubc_oy, OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), (yyvsp[-3].number), (yyvsp[-2].number), OU ((yyvsp[-1].measure))); } -#line 2682 "parse_y.c" /* yacc.c:1646 */ +#line 2681 "parse_y.c" /* yacc.c:1646 */ break; case 151: -#line 1022 "parse_y.y" /* yacc.c:1646 */ +#line 1021 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yysubc->Attributes; } -#line 2688 "parse_y.c" /* yacc.c:1646 */ +#line 2687 "parse_y.c" /* yacc.c:1646 */ break; case 153: -#line 1029 "parse_y.y" /* yacc.c:1646 */ +#line 1028 "parse_y.y" /* yacc.c:1646 */ { pcb_pstk_t *pin = io_pcb_element_pin_new(yysubc, NU ((yyvsp[-9].measure)) + yysubc_ox, NU ((yyvsp[-8].measure)) + yysubc_oy, NU ((yyvsp[-7].measure)), NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), (yyvsp[-3].string), @@ -2697,11 +2696,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2701 "parse_y.c" /* yacc.c:1646 */ +#line 2700 "parse_y.c" /* yacc.c:1646 */ break; case 154: -#line 1042 "parse_y.y" /* yacc.c:1646 */ +#line 1041 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_pin_new(yysubc, OU ((yyvsp[-9].measure)) + yysubc_ox, OU ((yyvsp[-8].measure)) + yysubc_oy, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), (yyvsp[-3].string), @@ -2709,11 +2708,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2713 "parse_y.c" /* yacc.c:1646 */ +#line 2712 "parse_y.c" /* yacc.c:1646 */ break; case 155: -#line 1054 "parse_y.y" /* yacc.c:1646 */ +#line 1053 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_pin_new(yysubc, OU ((yyvsp[-7].measure)), OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), 2*PCB_GROUNDPLANEFRAME, OU ((yyvsp[-5].measure)) + 2*PCB_MASKFRAME, OU ((yyvsp[-4].measure)), (yyvsp[-3].string), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); @@ -2720,11 +2719,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2724 "parse_y.c" /* yacc.c:1646 */ +#line 2723 "parse_y.c" /* yacc.c:1646 */ break; case 156: -#line 1065 "parse_y.y" /* yacc.c:1646 */ +#line 1064 "parse_y.y" /* yacc.c:1646 */ { char p_number[8]; @@ -2734,11 +2733,11 @@ free ((yyvsp[-2].string)); } -#line 2738 "parse_y.c" /* yacc.c:1646 */ +#line 2737 "parse_y.c" /* yacc.c:1646 */ break; case 157: -#line 1081 "parse_y.y" /* yacc.c:1646 */ +#line 1080 "parse_y.y" /* yacc.c:1646 */ { pcb_coord_t hole = OU ((yyvsp[-3].measure)) * PCB_DEFAULT_DRILLINGHOLE; char p_number[8]; @@ -2753,11 +2752,11 @@ OU ((yyvsp[-3].measure)) + 2*PCB_MASKFRAME, hole, (yyvsp[-2].string), p_number, pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2757 "parse_y.c" /* yacc.c:1646 */ +#line 2756 "parse_y.c" /* yacc.c:1646 */ break; case 158: -#line 1100 "parse_y.y" /* yacc.c:1646 */ +#line 1099 "parse_y.y" /* yacc.c:1646 */ { pcb_pstk_t *pad = io_pcb_element_pad_new(yysubc, NU ((yyvsp[-10].measure)) + yysubc_ox, NU ((yyvsp[-9].measure)) + yysubc_oy, @@ -2768,11 +2767,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2772 "parse_y.c" /* yacc.c:1646 */ +#line 2771 "parse_y.c" /* yacc.c:1646 */ break; case 159: -#line 1115 "parse_y.y" /* yacc.c:1646 */ +#line 1114 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_pad_new(yysubc,OU ((yyvsp[-10].measure)) + yysubc_ox, OU ((yyvsp[-9].measure)) + yysubc_oy, OU ((yyvsp[-8].measure)) + yysubc_ox, @@ -2781,11 +2780,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2785 "parse_y.c" /* yacc.c:1646 */ +#line 2784 "parse_y.c" /* yacc.c:1646 */ break; case 160: -#line 1128 "parse_y.y" /* yacc.c:1646 */ +#line 1127 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_pad_new(yysubc,OU ((yyvsp[-8].measure)),OU ((yyvsp[-7].measure)),OU ((yyvsp[-6].measure)),OU ((yyvsp[-5].measure)),OU ((yyvsp[-4].measure)), 2*PCB_GROUNDPLANEFRAME, OU ((yyvsp[-4].measure)) + 2*PCB_MASKFRAME, (yyvsp[-3].string), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); @@ -2792,11 +2791,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2796 "parse_y.c" /* yacc.c:1646 */ +#line 2795 "parse_y.c" /* yacc.c:1646 */ break; case 161: -#line 1139 "parse_y.y" /* yacc.c:1646 */ +#line 1138 "parse_y.y" /* yacc.c:1646 */ { char p_number[8]; @@ -2805,23 +2804,23 @@ OU ((yyvsp[-3].measure)) + 2*PCB_MASKFRAME, (yyvsp[-2].string),p_number, pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2809 "parse_y.c" /* yacc.c:1646 */ +#line 2808 "parse_y.c" /* yacc.c:1646 */ break; case 162: -#line 1149 "parse_y.y" /* yacc.c:1646 */ +#line 1148 "parse_y.y" /* yacc.c:1646 */ { (yyval.flagtype) = pcb_flag_old((yyvsp[0].integer)); } -#line 2815 "parse_y.c" /* yacc.c:1646 */ +#line 2814 "parse_y.c" /* yacc.c:1646 */ break; case 163: -#line 1150 "parse_y.y" /* yacc.c:1646 */ +#line 1149 "parse_y.y" /* yacc.c:1646 */ { (yyval.flagtype) = pcb_strflg_s2f((yyvsp[0].string), yyerror, &yy_intconn, 1); free((yyvsp[0].string)); } -#line 2821 "parse_y.c" /* yacc.c:1646 */ +#line 2820 "parse_y.c" /* yacc.c:1646 */ break; case 167: -#line 1161 "parse_y.y" /* yacc.c:1646 */ +#line 1160 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-3].integer) <= 0 || (yyvsp[-3].integer) > PCB_MAX_FONTPOSITION) { @@ -2837,11 +2836,11 @@ Symbol->Valid = pcb_true; Symbol->Delta = NU ((yyvsp[-2].measure)); } -#line 2841 "parse_y.c" /* yacc.c:1646 */ +#line 2840 "parse_y.c" /* yacc.c:1646 */ break; case 168: -#line 1177 "parse_y.y" /* yacc.c:1646 */ +#line 1176 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-3].integer) <= 0 || (yyvsp[-3].integer) > PCB_MAX_FONTPOSITION) { @@ -2857,29 +2856,28 @@ Symbol->Valid = pcb_true; Symbol->Delta = OU ((yyvsp[-2].measure)); } -#line 2861 "parse_y.c" /* yacc.c:1646 */ +#line 2860 "parse_y.c" /* yacc.c:1646 */ break; case 174: -#line 1208 "parse_y.y" /* yacc.c:1646 */ +#line 1207 "parse_y.y" /* yacc.c:1646 */ { pcb_font_new_line_in_sym(Symbol, OU ((yyvsp[-5].measure)), OU ((yyvsp[-4].measure)), OU ((yyvsp[-3].measure)), OU ((yyvsp[-2].measure)), OU ((yyvsp[-1].measure))); } -#line 2869 "parse_y.c" /* yacc.c:1646 */ +#line 2868 "parse_y.c" /* yacc.c:1646 */ break; case 175: -#line 1215 "parse_y.y" /* yacc.c:1646 */ +#line 1214 "parse_y.y" /* yacc.c:1646 */ { pcb_font_new_line_in_sym(Symbol, NU ((yyvsp[-5].measure)), NU ((yyvsp[-4].measure)), NU ((yyvsp[-3].measure)), NU ((yyvsp[-2].measure)), NU ((yyvsp[-1].measure))); } -#line 2877 "parse_y.c" /* yacc.c:1646 */ +#line 2876 "parse_y.c" /* yacc.c:1646 */ break; case 183: -#line 1242 "parse_y.y" /* yacc.c:1646 */ +#line 1241 "parse_y.y" /* yacc.c:1646 */ { - Menu = pcb_lib_net_new((pcb_lib_t *)&yyPCB->NetlistLib, (yyvsp[-3].string), (yyvsp[-2].string)); currnet = pcb_net_get(yyPCB, &yyPCB->netlist[PCB_NETLIST_INPUT], (yyvsp[-3].string), 1); if (((yyvsp[-2].string) != NULL) && (*(yyvsp[-2].string) != '\0')) pcb_attribute_put(&currnet->Attributes, "style", (yyvsp[-2].string)); @@ -2886,39 +2884,38 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2890 "parse_y.c" /* yacc.c:1646 */ +#line 2888 "parse_y.c" /* yacc.c:1646 */ break; case 189: -#line 1265 "parse_y.y" /* yacc.c:1646 */ +#line 1263 "parse_y.y" /* yacc.c:1646 */ { - pcb_lib_conn_new(Menu, (yyvsp[-1].string)); pcb_net_term_get_by_pinname(currnet, (yyvsp[-1].string), 1); free ((yyvsp[-1].string)); } -#line 2900 "parse_y.c" /* yacc.c:1646 */ +#line 2897 "parse_y.c" /* yacc.c:1646 */ break; case 197: -#line 1313 "parse_y.y" /* yacc.c:1646 */ +#line 1310 "parse_y.y" /* yacc.c:1646 */ { pcb_ratspatch_append(yyPCB, RATP_ADD_CONN, (yyvsp[-2].string), (yyvsp[-1].string), NULL); free((yyvsp[-2].string)); free((yyvsp[-1].string)); } -#line 2906 "parse_y.c" /* yacc.c:1646 */ +#line 2903 "parse_y.c" /* yacc.c:1646 */ break; case 198: -#line 1314 "parse_y.y" /* yacc.c:1646 */ +#line 1311 "parse_y.y" /* yacc.c:1646 */ { pcb_ratspatch_append(yyPCB, RATP_DEL_CONN, (yyvsp[-2].string), (yyvsp[-1].string), NULL); free((yyvsp[-2].string)); free((yyvsp[-1].string)); } -#line 2912 "parse_y.c" /* yacc.c:1646 */ +#line 2909 "parse_y.c" /* yacc.c:1646 */ break; case 199: -#line 1315 "parse_y.y" /* yacc.c:1646 */ +#line 1312 "parse_y.y" /* yacc.c:1646 */ { pcb_ratspatch_append(yyPCB, RATP_CHANGE_ATTRIB, (yyvsp[-3].string), (yyvsp[-2].string), (yyvsp[-1].string)); free((yyvsp[-3].string)); free((yyvsp[-2].string)); free((yyvsp[-1].string)); } -#line 2918 "parse_y.c" /* yacc.c:1646 */ +#line 2915 "parse_y.c" /* yacc.c:1646 */ break; case 200: -#line 1320 "parse_y.y" /* yacc.c:1646 */ +#line 1317 "parse_y.y" /* yacc.c:1646 */ { char *old_val, *key = (yyvsp[-2].string), *val = (yyvsp[-1].string) ? (yyvsp[-1].string) : (char *)""; old_val = pcb_attribute_get(attr_list, key); @@ -2929,95 +2926,95 @@ free(key); free(val); } -#line 2933 "parse_y.c" /* yacc.c:1646 */ +#line 2930 "parse_y.c" /* yacc.c:1646 */ break; case 201: -#line 1332 "parse_y.y" /* yacc.c:1646 */ +#line 1329 "parse_y.y" /* yacc.c:1646 */ { (yyval.string) = (yyvsp[0].string); } -#line 2939 "parse_y.c" /* yacc.c:1646 */ +#line 2936 "parse_y.c" /* yacc.c:1646 */ break; case 202: -#line 1333 "parse_y.y" /* yacc.c:1646 */ +#line 1330 "parse_y.y" /* yacc.c:1646 */ { (yyval.string) = 0; } -#line 2945 "parse_y.c" /* yacc.c:1646 */ +#line 2942 "parse_y.c" /* yacc.c:1646 */ break; case 203: -#line 1337 "parse_y.y" /* yacc.c:1646 */ +#line 1334 "parse_y.y" /* yacc.c:1646 */ { (yyval.number) = (yyvsp[0].number); } -#line 2951 "parse_y.c" /* yacc.c:1646 */ +#line 2948 "parse_y.c" /* yacc.c:1646 */ break; case 204: -#line 1338 "parse_y.y" /* yacc.c:1646 */ +#line 1335 "parse_y.y" /* yacc.c:1646 */ { (yyval.number) = (yyvsp[0].integer); } -#line 2957 "parse_y.c" /* yacc.c:1646 */ +#line 2954 "parse_y.c" /* yacc.c:1646 */ break; case 205: -#line 1343 "parse_y.y" /* yacc.c:1646 */ +#line 1340 "parse_y.y" /* yacc.c:1646 */ { do_measure(&(yyval.measure), (yyvsp[0].number), PCB_MIL_TO_COORD ((yyvsp[0].number)) / 100.0, 0); } -#line 2963 "parse_y.c" /* yacc.c:1646 */ +#line 2960 "parse_y.c" /* yacc.c:1646 */ break; case 206: -#line 1344 "parse_y.y" /* yacc.c:1646 */ +#line 1341 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MIL_TO_COORD ((yyvsp[-1].number)) / 100000.0); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 2969 "parse_y.c" /* yacc.c:1646 */ +#line 2966 "parse_y.c" /* yacc.c:1646 */ break; case 207: -#line 1345 "parse_y.y" /* yacc.c:1646 */ +#line 1342 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MIL_TO_COORD ((yyvsp[-1].number)) / 100.0); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 2975 "parse_y.c" /* yacc.c:1646 */ +#line 2972 "parse_y.c" /* yacc.c:1646 */ break; case 208: -#line 1346 "parse_y.y" /* yacc.c:1646 */ +#line 1343 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MIL_TO_COORD ((yyvsp[-1].number))); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 2981 "parse_y.c" /* yacc.c:1646 */ +#line 2978 "parse_y.c" /* yacc.c:1646 */ break; case 209: -#line 1347 "parse_y.y" /* yacc.c:1646 */ +#line 1344 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_INCH_TO_COORD ((yyvsp[-1].number))); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 2987 "parse_y.c" /* yacc.c:1646 */ +#line 2984 "parse_y.c" /* yacc.c:1646 */ break; case 210: -#line 1348 "parse_y.y" /* yacc.c:1646 */ +#line 1345 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MM_TO_COORD ((yyvsp[-1].number)) / 1000000.0); pcb_io_pcb_usty_seen |= PCB_USTY_NANOMETER; } -#line 2993 "parse_y.c" /* yacc.c:1646 */ +#line 2990 "parse_y.c" /* yacc.c:1646 */ break; case 211: -#line 1349 "parse_y.y" /* yacc.c:1646 */ +#line 1346 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MM_TO_COORD ((yyvsp[-1].number)) / 1000.0); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 2999 "parse_y.c" /* yacc.c:1646 */ +#line 2996 "parse_y.c" /* yacc.c:1646 */ break; case 212: -#line 1350 "parse_y.y" /* yacc.c:1646 */ +#line 1347 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MM_TO_COORD ((yyvsp[-1].number))); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 3005 "parse_y.c" /* yacc.c:1646 */ +#line 3002 "parse_y.c" /* yacc.c:1646 */ break; case 213: -#line 1351 "parse_y.y" /* yacc.c:1646 */ +#line 1348 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MM_TO_COORD ((yyvsp[-1].number)) * 1000.0); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 3011 "parse_y.c" /* yacc.c:1646 */ +#line 3008 "parse_y.c" /* yacc.c:1646 */ break; case 214: -#line 1352 "parse_y.y" /* yacc.c:1646 */ +#line 1349 "parse_y.y" /* yacc.c:1646 */ { M ((yyval.measure), (yyvsp[-1].number), PCB_MM_TO_COORD ((yyvsp[-1].number)) * 1000000.0); pcb_io_pcb_usty_seen |= PCB_USTY_UNITS; } -#line 3017 "parse_y.c" /* yacc.c:1646 */ +#line 3014 "parse_y.c" /* yacc.c:1646 */ break; -#line 3021 "parse_y.c" /* yacc.c:1646 */ +#line 3018 "parse_y.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -3245,7 +3242,7 @@ #endif return yyresult; } -#line 1355 "parse_y.y" /* yacc.c:1906 */ +#line 1352 "parse_y.y" /* yacc.c:1906 */ /* --------------------------------------------------------------------------- Index: parse_y.h =================================================================== --- parse_y.h (revision 23561) +++ parse_y.h (revision 23562) @@ -101,7 +101,7 @@ typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 119 "parse_y.y" /* yacc.c:1909 */ +#line 118 "parse_y.y" /* yacc.c:1909 */ int integer; double number; Index: parse_y.y =================================================================== --- parse_y.y (revision 23561) +++ parse_y.y (revision 23562) @@ -60,7 +60,6 @@ static pcb_poly_t *Polygon; static pcb_symbol_t *Symbol; static int pin_num; -static pcb_lib_menu_t *Menu; static pcb_net_t *currnet; static pcb_bool LayerFlag[PCB_MAX_LAYER + 2]; static int old_fmt; /* 1 if we are reading a PCB(), 0 if PCB[] */ @@ -1240,7 +1239,6 @@ /* name style pin pin ... */ : T_NET '(' STRING STRING ')' '(' { - Menu = pcb_lib_net_new((pcb_lib_t *)&yyPCB->NetlistLib, $3, $4); currnet = pcb_net_get(yyPCB, &yyPCB->netlist[PCB_NETLIST_INPUT], $3, 1); if (($4 != NULL) && (*$4 != '\0')) pcb_attribute_put(&currnet->Attributes, "style", $4); @@ -1263,7 +1261,6 @@ conn : T_CONN '(' STRING ')' { - pcb_lib_conn_new(Menu, $3); pcb_net_term_get_by_pinname(currnet, $3, 1); free ($3); }