From c0ea133e984ee192cf522f82cfcec9f3641c6c17 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Wed, 3 Nov 2021 17:34:38 -0400 Subject: [PATCH] A recent commit caused connections to implicit (unlabeled) substrate to not get into the subcircuit port list during ext2spice. The new fix brings back (unfortunately) the behavior of creating a substrate node for cells that have no substrate connection to any device; this will have to be handled separately. --- VERSION | 2 +- extflat/EFflat.c | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/VERSION b/VERSION index 97630135..2ca5929e 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -8.3.222 +8.3.223 diff --git a/extflat/EFflat.c b/extflat/EFflat.c index 95c80bb0..485dd14c 100644 --- a/extflat/EFflat.c +++ b/extflat/EFflat.c @@ -645,6 +645,15 @@ efAddOneConn(hc, name1, name2, conn, doWarn) efNodeMerge(&node, &newnode); } + /* NOTE: If called through efAddOneConn, then this is by definition */ + /* a port; so if EF_SUBS_NODE is set, then it should also be defined */ + /* as EF_SUBS_PORT. But, this also adds a port for the substrate */ + /* even if there are no connected devices, so connections to devices */ + /* need to be tracked as well as whether it is a node or a port. */ + + if (node->efnode_flags & EF_SUBS_NODE) + node->efnode_flags |= EF_SUBS_PORT; + return 0; }