Corrected an issue in which black-box entries (such as low-level

subcircuit devices) do not output information about mismatched
pins.  This can end up being treated as a non-error but the
mismatch should be noted in the output regardless.
This commit is contained in:
R. Timothy Edwards 2025-10-08 10:03:35 -04:00
parent b59196fa81
commit 0e958bd45c
2 changed files with 17 additions and 1 deletions

View File

@ -1 +1 @@
1.5.301
1.5.302

View File

@ -8196,6 +8196,14 @@ int MatchPins(struct nlist *tc1, struct nlist *tc2, int dolist)
hasproxy1 = 1;
HashPtrInstall(obn->name, obn, &(tc1->objdict));
/* If this is a black-box circuit, then the pin has not been output */
if (NodeClasses == NULL) {
output_string_fill(ostr);
output_string_left(ostr, "%s", "(no matching pin)");
output_string_right(ostr, "%s", ob2->name);
output_string_print(ostr);
}
}
}
@ -8266,6 +8274,14 @@ int MatchPins(struct nlist *tc1, struct nlist *tc2, int dolist)
hasproxy2 = 1;
HashPtrInstall(obn->name, obn, &(tc2->objdict));
/* If this is a black-box circuit, then the pin has not been output */
if (NodeClasses == NULL) {
output_string_fill(ostr);
output_string_left(ostr, "%s", ob1->name);
output_string_right(ostr, "%s", "(no matching pin)");
output_string_print(ostr);
}
}
else if (ob1 != NULL && ob1->type == PORT && ob1->node < 0) {