Index: trunk/doc/TODO =================================================================== --- trunk/doc/TODO (revision 21081) +++ trunk/doc/TODO (revision 21082) @@ -24,7 +24,6 @@ 2. For later releases =============================================================================== - CLEANUP: remove old, compatibility mode of CreateMenu(); check if there's any user [report: Igor2] - CLEANUP: remove hid_extent.[ch] in favor of bbox [report: Igor2] -- CLEANUP: move PCB_GROUNDPLANEFRAME and PCB_MASKFRAME and PCB_DEFAULT_DRILLINGHOLE from globalconst to io_pcb [report: Igor2] - CLEANUP: remove pcb_rubber_band_alloc() and use genvector - CLEANUP: run indent on rubberband_orig and route.c - CLEANUP: remove the old pinout dialog with all HID aspects and core rendering code [report: Igor2] Index: trunk/src/globalconst.h =================================================================== --- trunk/src/globalconst.h (revision 21081) +++ trunk/src/globalconst.h (revision 21082) @@ -31,13 +31,6 @@ #include "config.h" - -/* frame between the groundplane and the copper or mask - noone seems - to remember what these two are for; changing them may have unforeseen - side effects. */ -#define PCB_GROUNDPLANEFRAME PCB_MIL_TO_COORD(15) -#define PCB_MASKFRAME PCB_MIL_TO_COORD(3) - /* --------------------------------------------------------------------------- * some limit specifications */ Index: trunk/src_plugins/io_pcb/parse_y.c =================================================================== --- trunk/src_plugins/io_pcb/parse_y.c (revision 21081) +++ trunk/src_plugins/io_pcb/parse_y.c (revision 21082) @@ -122,6 +122,12 @@ #include "compat_misc.h" #include "src_plugins/lib_compat_help/pstk_compat.h" +/* frame between the groundplane and the copper or mask - noone seems + to remember what these two are for; changing them may have unforeseen + side effects. */ +#define PCB_GROUNDPLANEFRAME PCB_MIL_TO_COORD(15) +#define PCB_MASKFRAME PCB_MIL_TO_COORD(3) + static pcb_layer_t *Layer; static pcb_poly_t *Polygon; static pcb_symbol_t *Symbol; @@ -174,7 +180,7 @@ #include "parse_y.h" -#line 178 "parse_y.c" /* yacc.c:339 */ +#line 184 "parse_y.c" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus @@ -265,7 +271,7 @@ typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 110 "parse_y.y" /* yacc.c:355 */ +#line 116 "parse_y.y" /* yacc.c:355 */ int integer; double number; @@ -273,7 +279,7 @@ pcb_flag_t flagtype; PLMeasure measure; -#line 277 "parse_y.c" /* yacc.c:355 */ +#line 283 "parse_y.c" /* yacc.c:355 */ }; # define YYSTYPE_IS_TRIVIAL 1 # define YYSTYPE_IS_DECLARED 1 @@ -288,7 +294,7 @@ /* Copy the second part of user declarations. */ -#line 292 "parse_y.c" /* yacc.c:358 */ +#line 298 "parse_y.c" /* yacc.c:358 */ #ifdef short # undef short @@ -590,28 +596,28 @@ /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 137, 137, 138, 139, 140, 144, 144, 218, 218, - 229, 229, 248, 249, 254, 254, 276, 278, 288, 295, - 302, 312, 313, 314, 317, 325, 340, 355, 359, 363, - 366, 368, 375, 377, 383, 385, 386, 387, 391, 401, - 412, 424, 428, 433, 437, 441, 445, 454, 463, 467, - 468, 472, 473, 477, 478, 478, 479, 480, 482, 482, - 489, 493, 494, 495, 496, 497, 502, 512, 523, 533, - 543, 559, 564, 574, 573, 604, 605, 609, 610, 614, - 615, 616, 617, 618, 619, 621, 626, 627, 628, 629, - 629, 630, 634, 643, 652, 663, 672, 681, 690, 700, - 718, 743, 742, 781, 783, 788, 787, 794, 796, 801, - 805, 812, 813, 814, 815, 816, 824, 823, 842, 841, - 860, 859, 880, 878, 902, 900, 925, 926, 930, 931, - 932, 933, 934, 936, 941, 946, 951, 956, 961, 966, - 966, 970, 971, 975, 976, 977, 978, 980, 986, 993, - 998, 1003, 1003, 1009, 1022, 1034, 1045, 1061, 1080, 1095, - 1108, 1119, 1130, 1131, 1135, 1136, 1139, 1141, 1157, 1176, - 1177, 1180, 1182, 1183, 1188, 1195, 1201, 1202, 1206, 1211, - 1212, 1216, 1217, 1223, 1222, 1232, 1233, 1237, 1238, 1242, - 1259, 1260, 1264, 1269, 1270, 1274, 1275, 1290, 1291, 1292, - 1296, 1309, 1310, 1314, 1315, 1320, 1321, 1322, 1323, 1324, - 1325, 1326, 1327, 1328, 1329 + 0, 143, 143, 144, 145, 146, 150, 150, 224, 224, + 235, 235, 254, 255, 260, 260, 282, 284, 294, 301, + 308, 318, 319, 320, 323, 331, 346, 361, 365, 369, + 372, 374, 381, 383, 389, 391, 392, 393, 397, 407, + 418, 430, 434, 439, 443, 447, 451, 460, 469, 473, + 474, 478, 479, 483, 484, 484, 485, 486, 488, 488, + 495, 499, 500, 501, 502, 503, 508, 518, 529, 539, + 549, 565, 570, 580, 579, 610, 611, 615, 616, 620, + 621, 622, 623, 624, 625, 627, 632, 633, 634, 635, + 635, 636, 640, 649, 658, 669, 678, 687, 696, 706, + 724, 749, 748, 787, 789, 794, 793, 800, 802, 807, + 811, 818, 819, 820, 821, 822, 830, 829, 848, 847, + 866, 865, 886, 884, 908, 906, 931, 932, 936, 937, + 938, 939, 940, 942, 947, 952, 957, 962, 967, 972, + 972, 976, 977, 981, 982, 983, 984, 986, 992, 999, + 1004, 1009, 1009, 1015, 1028, 1040, 1051, 1067, 1086, 1101, + 1114, 1125, 1136, 1137, 1141, 1142, 1145, 1147, 1163, 1182, + 1183, 1186, 1188, 1189, 1194, 1201, 1207, 1208, 1212, 1217, + 1218, 1222, 1223, 1229, 1228, 1238, 1239, 1243, 1244, 1248, + 1265, 1266, 1270, 1275, 1276, 1280, 1281, 1296, 1297, 1298, + 1302, 1315, 1316, 1320, 1321, 1326, 1327, 1328, 1329, 1330, + 1331, 1332, 1333, 1334, 1335 }; #endif @@ -1788,13 +1794,13 @@ switch (yyn) { case 5: -#line 140 "parse_y.y" /* yacc.c:1646 */ +#line 146 "parse_y.y" /* yacc.c:1646 */ { YYABORT; } -#line 1794 "parse_y.c" /* yacc.c:1646 */ +#line 1800 "parse_y.c" /* yacc.c:1646 */ break; case 6: -#line 144 "parse_y.y" /* yacc.c:1646 */ +#line 150 "parse_y.y" /* yacc.c:1646 */ { /* reset flags for 'used layers'; * init font and data pointers @@ -1817,11 +1823,11 @@ layer_group_string = NULL; old_fmt = 0; } -#line 1821 "parse_y.c" /* yacc.c:1646 */ +#line 1827 "parse_y.c" /* yacc.c:1646 */ break; case 7: -#line 180 "parse_y.y" /* yacc.c:1646 */ +#line 186 "parse_y.y" /* yacc.c:1646 */ { pcb_board_t *pcb_save = PCB; if ((yy_settings_dest != CFR_invalid) && (layer_group_string != NULL)) @@ -1859,28 +1865,28 @@ PCB_ENDALL_LOOP; PCB = pcb_save; } -#line 1863 "parse_y.c" /* yacc.c:1646 */ +#line 1869 "parse_y.c" /* yacc.c:1646 */ break; case 8: -#line 218 "parse_y.y" /* yacc.c:1646 */ +#line 224 "parse_y.y" /* yacc.c:1646 */ { PreLoadElementPCB (); layer_group_string = NULL; } -#line 1870 "parse_y.c" /* yacc.c:1646 */ +#line 1876 "parse_y.c" /* yacc.c:1646 */ break; case 9: -#line 221 "parse_y.y" /* yacc.c:1646 */ +#line 227 "parse_y.y" /* yacc.c:1646 */ { LayerFlag[0] = pcb_true; LayerFlag[1] = pcb_true; yyData->LayerN = 2; PostLoadElementPCB (); } -#line 1880 "parse_y.c" /* yacc.c:1646 */ +#line 1886 "parse_y.c" /* yacc.c:1646 */ break; case 10: -#line 229 "parse_y.y" /* yacc.c:1646 */ +#line 235 "parse_y.y" /* yacc.c:1646 */ { /* reset flags for 'used layers'; * init font and data pointers @@ -1896,11 +1902,11 @@ LayerFlag[i] = pcb_false; yyData->LayerN = 0; } -#line 1900 "parse_y.c" /* yacc.c:1646 */ +#line 1906 "parse_y.c" /* yacc.c:1646 */ break; case 14: -#line 254 "parse_y.y" /* yacc.c:1646 */ +#line 260 "parse_y.y" /* yacc.c:1646 */ { /* mark all symbols invalid */ int i; @@ -1916,20 +1922,20 @@ } *yyFontkitValid = pcb_false; } -#line 1920 "parse_y.c" /* yacc.c:1646 */ +#line 1926 "parse_y.c" /* yacc.c:1646 */ break; case 15: -#line 270 "parse_y.y" /* yacc.c:1646 */ +#line 276 "parse_y.y" /* yacc.c:1646 */ { *yyFontkitValid = pcb_true; pcb_font_set_info(yyFont); } -#line 1929 "parse_y.c" /* yacc.c:1646 */ +#line 1935 "parse_y.c" /* yacc.c:1646 */ break; case 17: -#line 279 "parse_y.y" /* yacc.c:1646 */ +#line 285 "parse_y.y" /* yacc.c:1646 */ { if (check_file_version ((yyvsp[-1].integer)) != 0) { @@ -1936,11 +1942,11 @@ YYABORT; } } -#line 1940 "parse_y.c" /* yacc.c:1646 */ +#line 1946 "parse_y.c" /* yacc.c:1646 */ break; case 18: -#line 289 "parse_y.y" /* yacc.c:1646 */ +#line 295 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-1].string); yyPCB->MaxWidth = PCB_MAX_COORD; @@ -1947,11 +1953,11 @@ yyPCB->MaxHeight = PCB_MAX_COORD; old_fmt = 1; } -#line 1951 "parse_y.c" /* yacc.c:1646 */ +#line 1957 "parse_y.c" /* yacc.c:1646 */ break; case 19: -#line 296 "parse_y.y" /* yacc.c:1646 */ +#line 302 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-3].string); yyPCB->MaxWidth = OU ((yyvsp[-2].measure)); @@ -1958,11 +1964,11 @@ yyPCB->MaxHeight = OU ((yyvsp[-1].measure)); old_fmt = 1; } -#line 1962 "parse_y.c" /* yacc.c:1646 */ +#line 1968 "parse_y.c" /* yacc.c:1646 */ break; case 20: -#line 303 "parse_y.y" /* yacc.c:1646 */ +#line 309 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Name = (yyvsp[-3].string); yyPCB->MaxWidth = NU ((yyvsp[-2].measure)); @@ -1969,21 +1975,21 @@ yyPCB->MaxHeight = NU ((yyvsp[-1].measure)); old_fmt = 0; } -#line 1973 "parse_y.c" /* yacc.c:1646 */ +#line 1979 "parse_y.c" /* yacc.c:1646 */ break; case 24: -#line 318 "parse_y.y" /* yacc.c:1646 */ +#line 324 "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 1983 "parse_y.c" /* yacc.c:1646 */ +#line 1989 "parse_y.c" /* yacc.c:1646 */ break; case 25: -#line 326 "parse_y.y" /* yacc.c:1646 */ +#line 332 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Grid = OU ((yyvsp[-4].measure)); yyPCB->GridOffsetX = OU ((yyvsp[-3].measure)); @@ -1995,11 +2001,11 @@ conf_set(yy_settings_dest, "editor/draw_grid", -1, "false", POL_OVERWRITE); } } -#line 1999 "parse_y.c" /* yacc.c:1646 */ +#line 2005 "parse_y.c" /* yacc.c:1646 */ break; case 26: -#line 341 "parse_y.y" /* yacc.c:1646 */ +#line 347 "parse_y.y" /* yacc.c:1646 */ { yyPCB->Grid = NU ((yyvsp[-4].measure)); yyPCB->GridOffsetX = NU ((yyvsp[-3].measure)); @@ -2011,44 +2017,44 @@ conf_set(yy_settings_dest, "editor/draw_grid", -1, "false", POL_OVERWRITE); } } -#line 2015 "parse_y.c" /* yacc.c:1646 */ +#line 2021 "parse_y.c" /* yacc.c:1646 */ break; case 27: -#line 356 "parse_y.y" /* yacc.c:1646 */ +#line 362 "parse_y.y" /* yacc.c:1646 */ { /* Not loading cursor position and zoom anymore */ } -#line 2023 "parse_y.c" /* yacc.c:1646 */ +#line 2029 "parse_y.c" /* yacc.c:1646 */ break; case 28: -#line 360 "parse_y.y" /* yacc.c:1646 */ +#line 366 "parse_y.y" /* yacc.c:1646 */ { /* Not loading cursor position and zoom anymore */ } -#line 2031 "parse_y.c" /* yacc.c:1646 */ +#line 2037 "parse_y.c" /* yacc.c:1646 */ break; case 31: -#line 369 "parse_y.y" /* yacc.c:1646 */ +#line 375 "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 2040 "parse_y.c" /* yacc.c:1646 */ +#line 2046 "parse_y.c" /* yacc.c:1646 */ break; case 33: -#line 378 "parse_y.y" /* yacc.c:1646 */ +#line 384 "parse_y.y" /* yacc.c:1646 */ { yyPCB->ThermScale = (yyvsp[-1].number); } -#line 2048 "parse_y.c" /* yacc.c:1646 */ +#line 2054 "parse_y.c" /* yacc.c:1646 */ break; case 38: -#line 392 "parse_y.y" /* yacc.c:1646 */ +#line 398 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-3].measure))); load_meta_coord("design/shrink", NU((yyvsp[-2].measure))); @@ -2055,11 +2061,11 @@ load_meta_coord("design/min_wid", NU((yyvsp[-1].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-1].measure))); } -#line 2059 "parse_y.c" /* yacc.c:1646 */ +#line 2065 "parse_y.c" /* yacc.c:1646 */ break; case 39: -#line 402 "parse_y.y" /* yacc.c:1646 */ +#line 408 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-4].measure))); load_meta_coord("design/shrink", NU((yyvsp[-3].measure))); @@ -2067,11 +2073,11 @@ load_meta_coord("design/min_slk", NU((yyvsp[-1].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-2].measure))); } -#line 2071 "parse_y.c" /* yacc.c:1646 */ +#line 2077 "parse_y.c" /* yacc.c:1646 */ break; case 40: -#line 413 "parse_y.y" /* yacc.c:1646 */ +#line 419 "parse_y.y" /* yacc.c:1646 */ { load_meta_coord("design/bloat", NU((yyvsp[-6].measure))); load_meta_coord("design/shrink", NU((yyvsp[-5].measure))); @@ -2080,36 +2086,36 @@ load_meta_coord("design/min_drill", NU((yyvsp[-2].measure))); load_meta_coord("design/min_ring", NU((yyvsp[-1].measure))); } -#line 2084 "parse_y.c" /* yacc.c:1646 */ +#line 2090 "parse_y.c" /* yacc.c:1646 */ break; case 41: -#line 425 "parse_y.y" /* yacc.c:1646 */ +#line 431 "parse_y.y" /* yacc.c:1646 */ { yy_pcb_flags = pcb_flag_make((yyvsp[-1].integer) & PCB_FLAGS); } -#line 2092 "parse_y.c" /* yacc.c:1646 */ +#line 2098 "parse_y.c" /* yacc.c:1646 */ break; case 42: -#line 429 "parse_y.y" /* yacc.c:1646 */ +#line 435 "parse_y.y" /* yacc.c:1646 */ { yy_pcb_flags = pcb_strflg_board_s2f((yyvsp[-1].string), yyerror); free((yyvsp[-1].string)); } -#line 2101 "parse_y.c" /* yacc.c:1646 */ +#line 2107 "parse_y.c" /* yacc.c:1646 */ break; case 44: -#line 438 "parse_y.y" /* yacc.c:1646 */ +#line 444 "parse_y.y" /* yacc.c:1646 */ { layer_group_string = (yyvsp[-1].string); } -#line 2109 "parse_y.c" /* yacc.c:1646 */ +#line 2115 "parse_y.c" /* yacc.c:1646 */ break; case 46: -#line 446 "parse_y.y" /* yacc.c:1646 */ +#line 452 "parse_y.y" /* yacc.c:1646 */ { if (pcb_route_string_parse((yyvsp[-1].string), &yyPCB->RouteStyle, "mil")) { @@ -2118,11 +2124,11 @@ } free((yyvsp[-1].string)); } -#line 2122 "parse_y.c" /* yacc.c:1646 */ +#line 2128 "parse_y.c" /* yacc.c:1646 */ break; case 47: -#line 455 "parse_y.y" /* yacc.c:1646 */ +#line 461 "parse_y.y" /* yacc.c:1646 */ { if (pcb_route_string_parse(((yyvsp[-1].string) == NULL ? "" : (yyvsp[-1].string)), &yyPCB->RouteStyle, "cmil")) { @@ -2131,17 +2137,17 @@ } free((yyvsp[-1].string)); } -#line 2135 "parse_y.c" /* yacc.c:1646 */ +#line 2141 "parse_y.c" /* yacc.c:1646 */ break; case 54: -#line 478 "parse_y.y" /* yacc.c:1646 */ +#line 484 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yyPCB->Attributes; } -#line 2141 "parse_y.c" /* yacc.c:1646 */ +#line 2147 "parse_y.c" /* yacc.c:1646 */ break; case 58: -#line 482 "parse_y.y" /* yacc.c:1646 */ +#line 488 "parse_y.y" /* yacc.c:1646 */ { /* clear pointer to force memory allocation by * the appropriate subroutine @@ -2148,57 +2154,57 @@ */ yysubc = NULL; } -#line 2152 "parse_y.c" /* yacc.c:1646 */ +#line 2158 "parse_y.c" /* yacc.c:1646 */ break; case 60: -#line 489 "parse_y.y" /* yacc.c:1646 */ +#line 495 "parse_y.y" /* yacc.c:1646 */ { YYABORT; } -#line 2158 "parse_y.c" /* yacc.c:1646 */ +#line 2164 "parse_y.c" /* yacc.c:1646 */ break; case 66: -#line 503 "parse_y.y" /* yacc.c:1646 */ +#line 509 "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 2168 "parse_y.c" /* yacc.c:1646 */ +#line 2174 "parse_y.c" /* yacc.c:1646 */ break; case 67: -#line 513 "parse_y.y" /* yacc.c:1646 */ +#line 519 "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 2178 "parse_y.c" /* yacc.c:1646 */ +#line 2184 "parse_y.c" /* yacc.c:1646 */ break; case 68: -#line 524 "parse_y.y" /* yacc.c:1646 */ +#line 530 "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 2188 "parse_y.c" /* yacc.c:1646 */ +#line 2194 "parse_y.c" /* yacc.c:1646 */ break; case 69: -#line 534 "parse_y.y" /* yacc.c:1646 */ +#line 540 "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 2198 "parse_y.c" /* yacc.c:1646 */ +#line 2204 "parse_y.c" /* yacc.c:1646 */ break; case 70: -#line 544 "parse_y.y" /* yacc.c:1646 */ +#line 550 "parse_y.y" /* yacc.c:1646 */ { pcb_coord_t hole = (OU((yyvsp[-3].measure)) * PCB_DEFAULT_DRILLINGHOLE); @@ -2211,29 +2217,29 @@ OU((yyvsp[-3].measure)) + 2*PCB_MASKFRAME, hole, (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2215 "parse_y.c" /* yacc.c:1646 */ +#line 2221 "parse_y.c" /* yacc.c:1646 */ break; case 71: -#line 560 "parse_y.y" /* yacc.c:1646 */ +#line 566 "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 2224 "parse_y.c" /* yacc.c:1646 */ +#line 2230 "parse_y.c" /* yacc.c:1646 */ break; case 72: -#line 565 "parse_y.y" /* yacc.c:1646 */ +#line 571 "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 2233 "parse_y.c" /* yacc.c:1646 */ +#line 2239 "parse_y.c" /* yacc.c:1646 */ break; case 73: -#line 574 "parse_y.y" /* yacc.c:1646 */ +#line 580 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-4].integer) <= 0 || (yyvsp[-4].integer) > PCB_MAX_LAYER) { @@ -2260,44 +2266,44 @@ if ((yyvsp[-2].string) != NULL) free((yyvsp[-2].string)); } -#line 2264 "parse_y.c" /* yacc.c:1646 */ +#line 2270 "parse_y.c" /* yacc.c:1646 */ break; case 85: -#line 622 "parse_y.y" /* yacc.c:1646 */ +#line 628 "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 2273 "parse_y.c" /* yacc.c:1646 */ +#line 2279 "parse_y.c" /* yacc.c:1646 */ break; case 89: -#line 629 "parse_y.y" /* yacc.c:1646 */ +#line 635 "parse_y.y" /* yacc.c:1646 */ { attr_list = & Layer->Attributes; } -#line 2279 "parse_y.c" /* yacc.c:1646 */ +#line 2285 "parse_y.c" /* yacc.c:1646 */ break; case 92: -#line 635 "parse_y.y" /* yacc.c:1646 */ +#line 641 "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 2288 "parse_y.c" /* yacc.c:1646 */ +#line 2294 "parse_y.c" /* yacc.c:1646 */ break; case 93: -#line 644 "parse_y.y" /* yacc.c:1646 */ +#line 650 "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 2297 "parse_y.c" /* yacc.c:1646 */ +#line 2303 "parse_y.c" /* yacc.c:1646 */ break; case 94: -#line 653 "parse_y.y" /* yacc.c:1646 */ +#line 659 "parse_y.y" /* yacc.c:1646 */ { /* eliminate old-style rat-lines */ if ((IV ((yyvsp[-1].measure)) & PCB_FLAG_RAT) == 0) @@ -2304,48 +2310,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 2308 "parse_y.c" /* yacc.c:1646 */ +#line 2314 "parse_y.c" /* yacc.c:1646 */ break; case 95: -#line 664 "parse_y.y" /* yacc.c:1646 */ +#line 670 "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 2317 "parse_y.c" /* yacc.c:1646 */ +#line 2323 "parse_y.c" /* yacc.c:1646 */ break; case 96: -#line 673 "parse_y.y" /* yacc.c:1646 */ +#line 679 "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 2326 "parse_y.c" /* yacc.c:1646 */ +#line 2332 "parse_y.c" /* yacc.c:1646 */ break; case 97: -#line 682 "parse_y.y" /* yacc.c:1646 */ +#line 688 "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 2335 "parse_y.c" /* yacc.c:1646 */ +#line 2341 "parse_y.c" /* yacc.c:1646 */ break; case 98: -#line 691 "parse_y.y" /* yacc.c:1646 */ +#line 697 "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 2345 "parse_y.c" /* yacc.c:1646 */ +#line 2351 "parse_y.c" /* yacc.c:1646 */ break; case 99: -#line 701 "parse_y.y" /* yacc.c:1646 */ +#line 707 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-1].integer) & PCB_FLAG_ONSILK) { @@ -2360,11 +2366,11 @@ pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2364 "parse_y.c" /* yacc.c:1646 */ +#line 2370 "parse_y.c" /* yacc.c:1646 */ break; case 100: -#line 719 "parse_y.y" /* yacc.c:1646 */ +#line 725 "parse_y.y" /* yacc.c:1646 */ { /* FIXME: shouldn't know about .f */ /* I don't think this matters because anything with hi_format @@ -2384,19 +2390,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 2388 "parse_y.c" /* yacc.c:1646 */ +#line 2394 "parse_y.c" /* yacc.c:1646 */ break; case 101: -#line 743 "parse_y.y" /* yacc.c:1646 */ +#line 749 "parse_y.y" /* yacc.c:1646 */ { Polygon = pcb_poly_new(Layer, 0, (yyvsp[-2].flagtype)); } -#line 2396 "parse_y.c" /* yacc.c:1646 */ +#line 2402 "parse_y.c" /* yacc.c:1646 */ break; case 102: -#line 748 "parse_y.y" /* yacc.c:1646 */ +#line 754 "parse_y.y" /* yacc.c:1646 */ { pcb_cardinal_t contour, contour_start, contour_end; pcb_bool bad_contour_found = pcb_false; @@ -2428,35 +2434,35 @@ pcb_r_insert_entry(Layer->polygon_tree, (pcb_box_t *) Polygon); } } -#line 2432 "parse_y.c" /* yacc.c:1646 */ +#line 2438 "parse_y.c" /* yacc.c:1646 */ break; case 105: -#line 788 "parse_y.y" /* yacc.c:1646 */ +#line 794 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_hole_new(Polygon); } -#line 2440 "parse_y.c" /* yacc.c:1646 */ +#line 2446 "parse_y.c" /* yacc.c:1646 */ break; case 109: -#line 802 "parse_y.y" /* yacc.c:1646 */ +#line 808 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_point_new(Polygon, OU ((yyvsp[-2].measure)), OU ((yyvsp[-1].measure))); } -#line 2448 "parse_y.c" /* yacc.c:1646 */ +#line 2454 "parse_y.c" /* yacc.c:1646 */ break; case 110: -#line 806 "parse_y.y" /* yacc.c:1646 */ +#line 812 "parse_y.y" /* yacc.c:1646 */ { pcb_poly_point_new(Polygon, NU ((yyvsp[-2].measure)), NU ((yyvsp[-1].measure))); } -#line 2456 "parse_y.c" /* yacc.c:1646 */ +#line 2462 "parse_y.c" /* yacc.c:1646 */ break; case 116: -#line 824 "parse_y.y" /* yacc.c:1646 */ +#line 830 "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); @@ -2464,19 +2470,19 @@ free ((yyvsp[-5].string)); pin_num = 1; } -#line 2468 "parse_y.c" /* yacc.c:1646 */ +#line 2474 "parse_y.c" /* yacc.c:1646 */ break; case 117: -#line 832 "parse_y.y" /* yacc.c:1646 */ +#line 838 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2476 "parse_y.c" /* yacc.c:1646 */ +#line 2482 "parse_y.c" /* yacc.c:1646 */ break; case 118: -#line 842 "parse_y.y" /* yacc.c:1646 */ +#line 848 "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); @@ -2484,19 +2490,19 @@ free ((yyvsp[-7].string)); pin_num = 1; } -#line 2488 "parse_y.c" /* yacc.c:1646 */ +#line 2494 "parse_y.c" /* yacc.c:1646 */ break; case 119: -#line 850 "parse_y.y" /* yacc.c:1646 */ +#line 856 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2496 "parse_y.c" /* yacc.c:1646 */ +#line 2502 "parse_y.c" /* yacc.c:1646 */ break; case 120: -#line 860 "parse_y.y" /* yacc.c:1646 */ +#line 866 "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); @@ -2505,19 +2511,19 @@ free ((yyvsp[-7].string)); pin_num = 1; } -#line 2509 "parse_y.c" /* yacc.c:1646 */ +#line 2515 "parse_y.c" /* yacc.c:1646 */ break; case 121: -#line 869 "parse_y.y" /* yacc.c:1646 */ +#line 875 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2517 "parse_y.c" /* yacc.c:1646 */ +#line 2523 "parse_y.c" /* yacc.c:1646 */ break; case 122: -#line 880 "parse_y.y" /* yacc.c:1646 */ +#line 886 "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)), @@ -2528,19 +2534,19 @@ free ((yyvsp[-10].string)); free ((yyvsp[-9].string)); } -#line 2532 "parse_y.c" /* yacc.c:1646 */ +#line 2538 "parse_y.c" /* yacc.c:1646 */ break; case 123: -#line 891 "parse_y.y" /* yacc.c:1646 */ +#line 897 "parse_y.y" /* yacc.c:1646 */ { io_pcb_element_fin(yyData); } -#line 2540 "parse_y.c" /* yacc.c:1646 */ +#line 2546 "parse_y.c" /* yacc.c:1646 */ break; case 124: -#line 902 "parse_y.y" /* yacc.c:1646 */ +#line 908 "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)), @@ -2551,11 +2557,11 @@ free ((yyvsp[-10].string)); free ((yyvsp[-9].string)); } -#line 2555 "parse_y.c" /* yacc.c:1646 */ +#line 2561 "parse_y.c" /* yacc.c:1646 */ break; case 125: -#line 913 "parse_y.y" /* yacc.c:1646 */ +#line 919 "parse_y.y" /* yacc.c:1646 */ { if (pcb_subc_is_empty(yysubc)) { pcb_subc_free(yysubc); @@ -2565,111 +2571,111 @@ io_pcb_element_fin(yyData); } } -#line 2569 "parse_y.c" /* yacc.c:1646 */ +#line 2575 "parse_y.c" /* yacc.c:1646 */ break; case 133: -#line 937 "parse_y.y" /* yacc.c:1646 */ +#line 943 "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 2577 "parse_y.c" /* yacc.c:1646 */ +#line 2583 "parse_y.c" /* yacc.c:1646 */ break; case 134: -#line 942 "parse_y.y" /* yacc.c:1646 */ +#line 948 "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 2585 "parse_y.c" /* yacc.c:1646 */ +#line 2591 "parse_y.c" /* yacc.c:1646 */ break; case 135: -#line 947 "parse_y.y" /* yacc.c:1646 */ +#line 953 "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 2593 "parse_y.c" /* yacc.c:1646 */ +#line 2599 "parse_y.c" /* yacc.c:1646 */ break; case 136: -#line 952 "parse_y.y" /* yacc.c:1646 */ +#line 958 "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 2601 "parse_y.c" /* yacc.c:1646 */ +#line 2607 "parse_y.c" /* yacc.c:1646 */ break; case 137: -#line 957 "parse_y.y" /* yacc.c:1646 */ +#line 963 "parse_y.y" /* yacc.c:1646 */ { yysubc_ox = NU ((yyvsp[-2].measure)); yysubc_oy = NU ((yyvsp[-1].measure)); } -#line 2610 "parse_y.c" /* yacc.c:1646 */ +#line 2616 "parse_y.c" /* yacc.c:1646 */ break; case 138: -#line 962 "parse_y.y" /* yacc.c:1646 */ +#line 968 "parse_y.y" /* yacc.c:1646 */ { yysubc_ox = OU ((yyvsp[-2].measure)); yysubc_oy = OU ((yyvsp[-1].measure)); } -#line 2619 "parse_y.c" /* yacc.c:1646 */ +#line 2625 "parse_y.c" /* yacc.c:1646 */ break; case 139: -#line 966 "parse_y.y" /* yacc.c:1646 */ +#line 972 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yysubc->Attributes; } -#line 2625 "parse_y.c" /* yacc.c:1646 */ +#line 2631 "parse_y.c" /* yacc.c:1646 */ break; case 147: -#line 981 "parse_y.y" /* yacc.c:1646 */ +#line 987 "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 2635 "parse_y.c" /* yacc.c:1646 */ +#line 2641 "parse_y.c" /* yacc.c:1646 */ break; case 148: -#line 987 "parse_y.y" /* yacc.c:1646 */ +#line 993 "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 2645 "parse_y.c" /* yacc.c:1646 */ +#line 2651 "parse_y.c" /* yacc.c:1646 */ break; case 149: -#line 994 "parse_y.y" /* yacc.c:1646 */ +#line 1000 "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 2654 "parse_y.c" /* yacc.c:1646 */ +#line 2660 "parse_y.c" /* yacc.c:1646 */ break; case 150: -#line 999 "parse_y.y" /* yacc.c:1646 */ +#line 1005 "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 2663 "parse_y.c" /* yacc.c:1646 */ +#line 2669 "parse_y.c" /* yacc.c:1646 */ break; case 151: -#line 1003 "parse_y.y" /* yacc.c:1646 */ +#line 1009 "parse_y.y" /* yacc.c:1646 */ { attr_list = & yysubc->Attributes; } -#line 2669 "parse_y.c" /* yacc.c:1646 */ +#line 2675 "parse_y.c" /* yacc.c:1646 */ break; case 153: -#line 1010 "parse_y.y" /* yacc.c:1646 */ +#line 1016 "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), @@ -2678,11 +2684,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2682 "parse_y.c" /* yacc.c:1646 */ +#line 2688 "parse_y.c" /* yacc.c:1646 */ break; case 154: -#line 1023 "parse_y.y" /* yacc.c:1646 */ +#line 1029 "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), @@ -2690,11 +2696,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2694 "parse_y.c" /* yacc.c:1646 */ +#line 2700 "parse_y.c" /* yacc.c:1646 */ break; case 155: -#line 1035 "parse_y.y" /* yacc.c:1646 */ +#line 1041 "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))); @@ -2701,11 +2707,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2705 "parse_y.c" /* yacc.c:1646 */ +#line 2711 "parse_y.c" /* yacc.c:1646 */ break; case 156: -#line 1046 "parse_y.y" /* yacc.c:1646 */ +#line 1052 "parse_y.y" /* yacc.c:1646 */ { char p_number[8]; @@ -2715,11 +2721,11 @@ free ((yyvsp[-2].string)); } -#line 2719 "parse_y.c" /* yacc.c:1646 */ +#line 2725 "parse_y.c" /* yacc.c:1646 */ break; case 157: -#line 1062 "parse_y.y" /* yacc.c:1646 */ +#line 1068 "parse_y.y" /* yacc.c:1646 */ { pcb_coord_t hole = OU ((yyvsp[-3].measure)) * PCB_DEFAULT_DRILLINGHOLE; char p_number[8]; @@ -2734,11 +2740,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 2738 "parse_y.c" /* yacc.c:1646 */ +#line 2744 "parse_y.c" /* yacc.c:1646 */ break; case 158: -#line 1081 "parse_y.y" /* yacc.c:1646 */ +#line 1087 "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, @@ -2749,11 +2755,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2753 "parse_y.c" /* yacc.c:1646 */ +#line 2759 "parse_y.c" /* yacc.c:1646 */ break; case 159: -#line 1096 "parse_y.y" /* yacc.c:1646 */ +#line 1102 "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, @@ -2762,11 +2768,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2766 "parse_y.c" /* yacc.c:1646 */ +#line 2772 "parse_y.c" /* yacc.c:1646 */ break; case 160: -#line 1109 "parse_y.y" /* yacc.c:1646 */ +#line 1115 "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))); @@ -2773,11 +2779,11 @@ free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2777 "parse_y.c" /* yacc.c:1646 */ +#line 2783 "parse_y.c" /* yacc.c:1646 */ break; case 161: -#line 1120 "parse_y.y" /* yacc.c:1646 */ +#line 1126 "parse_y.y" /* yacc.c:1646 */ { char p_number[8]; @@ -2786,23 +2792,23 @@ OU ((yyvsp[-3].measure)) + 2*PCB_MASKFRAME, (yyvsp[-2].string),p_number, pcb_flag_old((yyvsp[-1].integer))); free ((yyvsp[-2].string)); } -#line 2790 "parse_y.c" /* yacc.c:1646 */ +#line 2796 "parse_y.c" /* yacc.c:1646 */ break; case 162: -#line 1130 "parse_y.y" /* yacc.c:1646 */ +#line 1136 "parse_y.y" /* yacc.c:1646 */ { (yyval.flagtype) = pcb_flag_old((yyvsp[0].integer)); } -#line 2796 "parse_y.c" /* yacc.c:1646 */ +#line 2802 "parse_y.c" /* yacc.c:1646 */ break; case 163: -#line 1131 "parse_y.y" /* yacc.c:1646 */ +#line 1137 "parse_y.y" /* yacc.c:1646 */ { (yyval.flagtype) = pcb_strflg_s2f((yyvsp[0].string), yyerror, &yy_intconn, 1); free((yyvsp[0].string)); } -#line 2802 "parse_y.c" /* yacc.c:1646 */ +#line 2808 "parse_y.c" /* yacc.c:1646 */ break; case 167: -#line 1142 "parse_y.y" /* yacc.c:1646 */ +#line 1148 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-3].integer) <= 0 || (yyvsp[-3].integer) > PCB_MAX_FONTPOSITION) { @@ -2818,11 +2824,11 @@ Symbol->Valid = pcb_true; Symbol->Delta = NU ((yyvsp[-2].measure)); } -#line 2822 "parse_y.c" /* yacc.c:1646 */ +#line 2828 "parse_y.c" /* yacc.c:1646 */ break; case 168: -#line 1158 "parse_y.y" /* yacc.c:1646 */ +#line 1164 "parse_y.y" /* yacc.c:1646 */ { if ((yyvsp[-3].integer) <= 0 || (yyvsp[-3].integer) > PCB_MAX_FONTPOSITION) { @@ -2838,64 +2844,64 @@ Symbol->Valid = pcb_true; Symbol->Delta = OU ((yyvsp[-2].measure)); } -#line 2842 "parse_y.c" /* yacc.c:1646 */ +#line 2848 "parse_y.c" /* yacc.c:1646 */ break; case 174: -#line 1189 "parse_y.y" /* yacc.c:1646 */ +#line 1195 "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 2850 "parse_y.c" /* yacc.c:1646 */ +#line 2856 "parse_y.c" /* yacc.c:1646 */ break; case 175: -#line 1196 "parse_y.y" /* yacc.c:1646 */ +#line 1202 "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 2858 "parse_y.c" /* yacc.c:1646 */ +#line 2864 "parse_y.c" /* yacc.c:1646 */ break; case 183: -#line 1223 "parse_y.y" /* yacc.c:1646 */ +#line 1229 "parse_y.y" /* yacc.c:1646 */ { Menu = pcb_lib_net_new((pcb_lib_t *)&yyPCB->NetlistLib, (yyvsp[-3].string), (yyvsp[-2].string)); free ((yyvsp[-3].string)); free ((yyvsp[-2].string)); } -#line 2868 "parse_y.c" /* yacc.c:1646 */ +#line 2874 "parse_y.c" /* yacc.c:1646 */ break; case 189: -#line 1243 "parse_y.y" /* yacc.c:1646 */ +#line 1249 "parse_y.y" /* yacc.c:1646 */ { pcb_lib_conn_new(Menu, (yyvsp[-1].string)); free ((yyvsp[-1].string)); } -#line 2877 "parse_y.c" /* yacc.c:1646 */ +#line 2883 "parse_y.c" /* yacc.c:1646 */ break; case 197: -#line 1290 "parse_y.y" /* yacc.c:1646 */ +#line 1296 "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 2883 "parse_y.c" /* yacc.c:1646 */ +#line 2889 "parse_y.c" /* yacc.c:1646 */ break; case 198: -#line 1291 "parse_y.y" /* yacc.c:1646 */ +#line 1297 "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 2889 "parse_y.c" /* yacc.c:1646 */ +#line 2895 "parse_y.c" /* yacc.c:1646 */ break; case 199: -#line 1292 "parse_y.y" /* yacc.c:1646 */ +#line 1298 "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 2895 "parse_y.c" /* yacc.c:1646 */ +#line 2901 "parse_y.c" /* yacc.c:1646 */ break; case 200: -#line 1297 "parse_y.y" /* yacc.c:1646 */ +#line 1303 "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); @@ -2906,95 +2912,95 @@ free(key); free(val); } -#line 2910 "parse_y.c" /* yacc.c:1646 */ +#line 2916 "parse_y.c" /* yacc.c:1646 */ break; case 201: -#line 1309 "parse_y.y" /* yacc.c:1646 */ +#line 1315 "parse_y.y" /* yacc.c:1646 */ { (yyval.string) = (yyvsp[0].string); } -#line 2916 "parse_y.c" /* yacc.c:1646 */ +#line 2922 "parse_y.c" /* yacc.c:1646 */ break; case 202: -#line 1310 "parse_y.y" /* yacc.c:1646 */ +#line 1316 "parse_y.y" /* yacc.c:1646 */ { (yyval.string) = 0; } -#line 2922 "parse_y.c" /* yacc.c:1646 */ +#line 2928 "parse_y.c" /* yacc.c:1646 */ break; case 203: -#line 1314 "parse_y.y" /* yacc.c:1646 */ +#line 1320 "parse_y.y" /* yacc.c:1646 */ { (yyval.number) = (yyvsp[0].number); } -#line 2928 "parse_y.c" /* yacc.c:1646 */ +#line 2934 "parse_y.c" /* yacc.c:1646 */ break; case 204: -#line 1315 "parse_y.y" /* yacc.c:1646 */ +#line 1321 "parse_y.y" /* yacc.c:1646 */ { (yyval.number) = (yyvsp[0].integer); } -#line 2934 "parse_y.c" /* yacc.c:1646 */ +#line 2940 "parse_y.c" /* yacc.c:1646 */ break; case 205: -#line 1320 "parse_y.y" /* yacc.c:1646 */ +#line 1326 "parse_y.y" /* yacc.c:1646 */ { do_measure(&(yyval.measure), (yyvsp[0].number), PCB_MIL_TO_COORD ((yyvsp[0].number)) / 100.0, 0); } -#line 2940 "parse_y.c" /* yacc.c:1646 */ +#line 2946 "parse_y.c" /* yacc.c:1646 */ break; case 206: -#line 1321 "parse_y.y" /* yacc.c:1646 */ +#line 1327 "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 2946 "parse_y.c" /* yacc.c:1646 */ +#line 2952 "parse_y.c" /* yacc.c:1646 */ break; case 207: -#line 1322 "parse_y.y" /* yacc.c:1646 */ +#line 1328 "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 2952 "parse_y.c" /* yacc.c:1646 */ +#line 2958 "parse_y.c" /* yacc.c:1646 */ break; case 208: -#line 1323 "parse_y.y" /* yacc.c:1646 */ +#line 1329 "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 2958 "parse_y.c" /* yacc.c:1646 */ +#line 2964 "parse_y.c" /* yacc.c:1646 */ break; case 209: -#line 1324 "parse_y.y" /* yacc.c:1646 */ +#line 1330 "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 2964 "parse_y.c" /* yacc.c:1646 */ +#line 2970 "parse_y.c" /* yacc.c:1646 */ break; case 210: -#line 1325 "parse_y.y" /* yacc.c:1646 */ +#line 1331 "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 2970 "parse_y.c" /* yacc.c:1646 */ +#line 2976 "parse_y.c" /* yacc.c:1646 */ break; case 211: -#line 1326 "parse_y.y" /* yacc.c:1646 */ +#line 1332 "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 2976 "parse_y.c" /* yacc.c:1646 */ +#line 2982 "parse_y.c" /* yacc.c:1646 */ break; case 212: -#line 1327 "parse_y.y" /* yacc.c:1646 */ +#line 1333 "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 2982 "parse_y.c" /* yacc.c:1646 */ +#line 2988 "parse_y.c" /* yacc.c:1646 */ break; case 213: -#line 1328 "parse_y.y" /* yacc.c:1646 */ +#line 1334 "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 2988 "parse_y.c" /* yacc.c:1646 */ +#line 2994 "parse_y.c" /* yacc.c:1646 */ break; case 214: -#line 1329 "parse_y.y" /* yacc.c:1646 */ +#line 1335 "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 2994 "parse_y.c" /* yacc.c:1646 */ +#line 3000 "parse_y.c" /* yacc.c:1646 */ break; -#line 2998 "parse_y.c" /* yacc.c:1646 */ +#line 3004 "parse_y.c" /* yacc.c:1646 */ default: break; } /* User semantic actions sometimes alter yychar, and that requires @@ -3222,7 +3228,7 @@ #endif return yyresult; } -#line 1332 "parse_y.y" /* yacc.c:1906 */ +#line 1338 "parse_y.y" /* yacc.c:1906 */ /* --------------------------------------------------------------------------- Index: trunk/src_plugins/io_pcb/parse_y.h =================================================================== --- trunk/src_plugins/io_pcb/parse_y.h (revision 21081) +++ trunk/src_plugins/io_pcb/parse_y.h (revision 21082) @@ -101,7 +101,7 @@ typedef union YYSTYPE YYSTYPE; union YYSTYPE { -#line 110 "parse_y.y" /* yacc.c:1909 */ +#line 116 "parse_y.y" /* yacc.c:1909 */ int integer; double number; Index: trunk/src_plugins/io_pcb/parse_y.y =================================================================== --- trunk/src_plugins/io_pcb/parse_y.y (revision 21081) +++ trunk/src_plugins/io_pcb/parse_y.y (revision 21082) @@ -49,6 +49,12 @@ #include "compat_misc.h" #include "src_plugins/lib_compat_help/pstk_compat.h" +/* frame between the groundplane and the copper or mask - noone seems + to remember what these two are for; changing them may have unforeseen + side effects. */ +#define PCB_GROUNDPLANEFRAME PCB_MIL_TO_COORD(15) +#define PCB_MASKFRAME PCB_MIL_TO_COORD(3) + static pcb_layer_t *Layer; static pcb_poly_t *Polygon; static pcb_symbol_t *Symbol;