diff --git a/src/plugins/streamers/lefdef/db_plugin/dbDEFImporter.cc b/src/plugins/streamers/lefdef/db_plugin/dbDEFImporter.cc index e68e60bb6f..c36f6a1148 100644 --- a/src/plugins/streamers/lefdef/db_plugin/dbDEFImporter.cc +++ b/src/plugins/streamers/lefdef/db_plugin/dbDEFImporter.cc @@ -526,6 +526,8 @@ DEFImporter::read_single_net (std::string &nondefaultrule, Layout &layout, db::C sn = get_long (); } else if (test ("SHAPE")) { take (); + } else { + error (tl::to_string (tr ("Expected STYLE OR SHAPE specification following '+'"))); } } diff --git a/testdata/lefdef/specialnets_geo/test.def b/testdata/lefdef/specialnets_geo/test.def index b104eb3283..07af8dd26a 100644 --- a/testdata/lefdef/specialnets_geo/test.def +++ b/testdata/lefdef/specialnets_geo/test.def @@ -20,7 +20,7 @@ SPECIALNETS 1 ; + POLYGON M1 ( 300 0 ) ( 300 50 ) ( 350 50 ) ( 400 100 ) ( 400 0 ) + ROUTED + POLYGON M2 ( 300 150 ) ( 300 200 ) ( 350 200 ) ( 400 250 ) ( 400 150 ) + RECT M1 ( 0 0 ) ( 100 200 ) - + ROUTED M1 30 + MASK 2 ( 0 0 15 ) ( 100 0 0 ) VIA1_dummy ( 100 100 10 ) + + ROUTED M1 30 ( 0 0 15 ) MASK 2 ( 100 0 0 ) VIA1_dummy ( 100 100 10 ) + ROUTED M2 50 + SHAPE RING + STYLE 1 ( 0 100 ) ( 100 200 ) ( 200 200 ) + ROUTED + MASK 2 + RECT M2 ( 250 0 ) ( 150 100 ) + ROUTED + SHAPE RING + MASK 1 + VIA VIA1_dummy E ( 200 200 ) diff --git a/testdata/lefdef/viasize/test.def b/testdata/lefdef/viasize/test.def index 10821b3116..bdf59bb1bd 100644 --- a/testdata/lefdef/viasize/test.def +++ b/testdata/lefdef/viasize/test.def @@ -26,7 +26,7 @@ SPECIALNETS 1 ; + POLYGON M1 ( 300 0 ) ( 300 50 ) ( 350 50 ) ( 400 100 ) ( 400 0 ) + ROUTED + POLYGON M2 ( 300 150 ) ( 300 200 ) ( 350 200 ) ( 400 250 ) ( 400 150 ) + RECT M1 ( 0 0 ) ( 100 200 ) - + ROUTED M1 30 + MASK 2 ( 0 0 15 ) ( 100 0 0 ) VIA1_small ( 100 100 10 ) + + ROUTED M1 30 ( 0 0 15 ) MASK 2 ( 100 0 0 ) VIA1_small ( 100 100 10 ) + ROUTED M2 50 + SHAPE RING + STYLE 1 ( 0 100 ) ( 100 200 ) ( 200 200 ) + ROUTED + MASK 2 + RECT M2 ( 250 0 ) ( 150 100 ) + ROUTED + SHAPE RING + MASK 1 + VIA VIA1_large E ( 200 200 ) diff --git a/testdata/lefdef/viasize2/au.oas.gz b/testdata/lefdef/viasize2/au.oas.gz index c1ab0c221a..eebbd86cc5 100644 Binary files a/testdata/lefdef/viasize2/au.oas.gz and b/testdata/lefdef/viasize2/au.oas.gz differ diff --git a/testdata/lefdef/viasize2/test.def b/testdata/lefdef/viasize2/test.def index 8e41b462b2..1e4d24a9d4 100755 --- a/testdata/lefdef/viasize2/test.def +++ b/testdata/lefdef/viasize2/test.def @@ -28,7 +28,7 @@ SPECIALNETS 1 ; + POLYGON M1 ( 300 0 ) ( 300 50 ) ( 350 50 ) ( 400 100 ) ( 400 0 ) + ROUTED + POLYGON M2 ( 300 150 ) ( 300 200 ) ( 350 200 ) ( 400 250 ) ( 400 150 ) + RECT M1 ( 0 0 ) ( 100 200 ) + VIA VIA1_bar E ( 100 200 ) - + ROUTED M1 30 + MASK 2 ( 0 0 15 ) ( 100 0 0 ) VIA1_small ( 100 100 10 ) + + ROUTED M1 30 ( 0 0 15 ) MASK 2 ( 100 0 0 ) VIA1_small ( 100 100 10 ) + ROUTED M2 50 + SHAPE RING + STYLE 1 ( 0 100 ) ( 100 200 ) ( 200 200 ) + ROUTED + MASK 2 + RECT M2 ( 250 0 ) ( 150 100 ) + ROUTED + SHAPE RING + MASK 1 + VIA VIA1_large E ( 200 200 ) diff --git a/testdata/lefdef/viasize2/test_fail.map b/testdata/lefdef/viasize2/test_fail.map index 07b69f430d..4b71cee3d4 100755 --- a/testdata/lefdef/viasize2/test_fail.map +++ b/testdata/lefdef/viasize2/test_fail.map @@ -3,6 +3,8 @@ DIEAREA ALL 1 0 COMP ALL 2 0 M1 NET,SPNET 7 0 M2 NET,SPNET 9 0 +M2 NET,SPNET:MASK:1 9 1 +M2 NET,SPNET:MASK:2 9 2 VIA1 VIA 8 0 VIA1 VIA:SIZE:0.02x0.02 8 1 VIA1 VIA:SIZE:0.02x0.024 8 2 diff --git a/testdata/lefdef/viasize2/test_ok.map b/testdata/lefdef/viasize2/test_ok.map index 7b5a37a114..6c665c5d4e 100755 --- a/testdata/lefdef/viasize2/test_ok.map +++ b/testdata/lefdef/viasize2/test_ok.map @@ -3,6 +3,8 @@ DIEAREA ALL 1 0 COMP ALL 2 0 M1 NET,SPNET 7 0 M2 NET,SPNET 9 0 +M2 NET,SPNET:MASK:1 9 1 +M2 NET,SPNET:MASK:2 9 2 VIA1 VIA 8 0 VIA1 VIA:SIZE:0.02x0.02 8 1 VIA1 VIA:SIZE:0.024x0.02 8 2