diff --git a/src/db/db/dbHierNetworkProcessor.cc b/src/db/db/dbHierNetworkProcessor.cc index d80880951..e0f1a447b 100644 --- a/src/db/db/dbHierNetworkProcessor.cc +++ b/src/db/db/dbHierNetworkProcessor.cc @@ -1206,7 +1206,7 @@ private: db::ICplxTrans t2i = t2 * i2.complex_trans (); const db::Cell &cell2 = mp_layout->cell (i2.cell_index ()); - box_type b2 = cell2.bbox ().transformed (t2i); + box_type b2 = i2.cell_inst ().bbox (*mp_cbc).transformed (t2); if (! b1.touches (b2) || ! c1.interacts (cell2, t2i, *mp_conn)) { return; diff --git a/src/db/unit_tests/dbHierNetworkProcessorTests.cc b/src/db/unit_tests/dbHierNetworkProcessorTests.cc index bb05fe3c4..c376f26f1 100644 --- a/src/db/unit_tests/dbHierNetworkProcessorTests.cc +++ b/src/db/unit_tests/dbHierNetworkProcessorTests.cc @@ -1021,3 +1021,9 @@ TEST(113_HierClusters) run_hc_test_with_backannotation (_this, "hc_test_l13.gds", "hc_test_au13b.gds"); } +TEST(114_HierClusters) +{ + run_hc_test (_this, "hc_test_l14.gds", "hc_test_au14.gds"); + run_hc_test_with_backannotation (_this, "hc_test_l14.gds", "hc_test_au14b.gds"); +} + diff --git a/testdata/algo/hc_test_au14.gds b/testdata/algo/hc_test_au14.gds new file mode 100644 index 000000000..7f5500e60 Binary files /dev/null and b/testdata/algo/hc_test_au14.gds differ diff --git a/testdata/algo/hc_test_au14b.gds b/testdata/algo/hc_test_au14b.gds new file mode 100644 index 000000000..5117445b4 Binary files /dev/null and b/testdata/algo/hc_test_au14b.gds differ diff --git a/testdata/algo/hc_test_l14.gds b/testdata/algo/hc_test_l14.gds new file mode 100644 index 000000000..3b1eaa46f Binary files /dev/null and b/testdata/algo/hc_test_l14.gds differ