diff options
Diffstat (limited to 'src/map/mio/mioRead.c')
-rw-r--r-- | src/map/mio/mioRead.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/map/mio/mioRead.c b/src/map/mio/mioRead.c index 87fb68e2..53ea7d2d 100644 --- a/src/map/mio/mioRead.c +++ b/src/map/mio/mioRead.c @@ -233,10 +233,15 @@ int Mio_LibraryReadInternal( Mio_Library_t * pLib, char * pBuffer, int fExtended st_insert( pLib->tName2Gate, pGate->pName, (char *)pGate ); else { - Mio_Gate_t * pBase = Mio_LibraryReadGateByName( pLib, pGate->pName ); - pBase->pTwin = pGate; - pGate->pTwin = pBase; - printf( "Gate \"%s\" appears more than once. Creating multi-output gate.\n", pGate->pName ); + Mio_Gate_t * pBase = Mio_LibraryReadGateByName( pLib, pGate->pName, NULL ); + if ( pBase->pTwin != NULL ) + { + printf( "Gates with more than 2 outputs are not supported.\n" ); + continue; + } + pBase->pTwin = pGate; + pGate->pTwin = pBase; + printf( "Gate \"%s\" appears two times. Creating a 2-output gate.\n", pGate->pName ); } } } |