sprintf(pMan->sError,"The network %s appears to mapped gates and assign statements. Currently such network are not allowed. One way to fix this problem is to replace assigns by buffers from the library.",pMan->pNtkCur);
Ver_ParsePrintErrorMessage(pMan);
return0;
}
while(1)
{
// get the name of the output signal
pWord=Ver_ParseGetName(pMan);
if(pWord==NULL)
return0;
// consider the case of reduction operations
fReduction=(pWord[0]=='{');
if(fReduction)
{
pWord++;
pWord[strlen(pWord)-1]=0;
}
// get the fanout net
pNet=Abc_NtkFindNet(pNtk,pWord);
if(pNet==NULL)
{
sprintf(pMan->sError,"Cannot read the assign statement for %s (output wire is not defined).",pWord);
Ver_ParsePrintErrorMessage(pMan);
return0;
}
// get the fanout net
pNet=Abc_NtkFindNet(pNtk,pWord);
if(pNet==NULL)
...
...
@@ -457,21 +488,27 @@ int Ver_ParseAssign( Ver_Man_t * pMan )
// convert from the mapped netlist into the BDD netlist
if(pNtk->ntkFunc==ABC_FUNC_BLACKBOX)
{
pNtk->ntkFunc=ABC_FUNC_MAP;
pNtk->pManFunc=pMan->pGateLib;
}
elseif(pNtk->ntkFunc!=ABC_FUNC_MAP)
{
sprintf(pMan->sError,"The network %s appears to contain both mapped gates and assign statements. Currently such network are not allowed. One way to fix this problem is to replace assigns by buffers from the library.",pMan->pNtkCur);