Corrected an extraction error that prevented the use of the same
device layer type to describe the extraction for both a regular FET and an extended-drain device. Note that the current code still requires that the extended-drain device be declared first, and does not check for this or attempt to reorder if incorrect.
This commit is contained in:
parent
6cf5f65b51
commit
ebe12fecfe
|
|
@ -1724,7 +1724,14 @@ extOutputDevices(def, transList, outFile)
|
||||||
continue; /* This terminal already found by perimeter search */
|
continue; /* This terminal already found by perimeter search */
|
||||||
|
|
||||||
tmask = &devptr->exts_deviceSDTypes[termcount];
|
tmask = &devptr->exts_deviceSDTypes[termcount];
|
||||||
if (TTMaskIsZero(tmask)) break; /* End of SD terminals */
|
if (TTMaskIsZero(tmask)) {
|
||||||
|
if (termcount < nsd) {
|
||||||
|
/* See if there is another matching device record with */
|
||||||
|
/* a different number of terminals, and try again. */
|
||||||
|
devptr = extDevFindMatch(devptr, t);
|
||||||
|
}
|
||||||
|
break; /* End of SD terminals */
|
||||||
|
}
|
||||||
else if (!TTMaskIntersect(tmask, &DBPlaneTypes[reg->treg_pnum]))
|
else if (!TTMaskIntersect(tmask, &DBPlaneTypes[reg->treg_pnum]))
|
||||||
{
|
{
|
||||||
node = NULL;
|
node = NULL;
|
||||||
|
|
@ -2749,6 +2756,7 @@ extTransPerimFunc(bp)
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
TxError("Error: Asymmetric device with multiple terminals!\n");
|
TxError("Error: Asymmetric device with multiple terminals!\n");
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Add the length to this terminal's perimeter */
|
/* Add the length to this terminal's perimeter */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue