Built and tested ok with SWIG 4.2.1 and SWIG 4.4.1 on amd64 and i386.
diff -Nurp /usr/ports/cad/opensta/Makefile ./Makefile
--- /usr/ports/cad/opensta/Makefile Fri Mar 11 13:24:31 2022
+++ ./Makefile Sat Jan 24 09:51:38 2026
@@ -3,7 +3,7 @@ COMMENT = Parallax Static Timing Analyzer
GH_ACCOUNT = The-OpenROAD-Project
GH_PROJECT = OpenSTA
GH_TAGNAME = v2.2.0
-REVISION = 0
+REVISION = 1
PKGNAME = ${DISTNAME:L}
CATEGORIES = cad
diff -Nurp /usr/ports/cad/opensta/patches/patch-tcl_Exception_i
./patches/patch-tcl_Exception_i
--- /usr/ports/cad/opensta/patches/patch-tcl_Exception_i Wed Dec 31
19:00:00 1969
+++ ./patches/patch-tcl_Exception_i Sat Jan 24 09:50:49 2026
@@ -0,0 +1,16 @@
+https://github.com/parallaxsw/OpenSTA/issues/357
+https://github.com/The-OpenROAD-Project/OpenSTA/commit/0772eaaf6af9b6644d47b72c0ff78d9b3e09a31f
+
+
+Index: tcl/Exception.i
+--- tcl/Exception.i.orig
++++ tcl/Exception.i
+@@ -19,7 +19,7 @@
+ %}
+
+ %exception {
+- try { $function }
++ try { $action }
+ catch (std::bad_alloc &) {
+ fprintf(stderr, "Error: out of memory.\n");
+ exit(0);