From 960e0cda1890bbe974b07013cc64307921f5d8f7 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Tue, 14 Jul 2020 19:53:34 +0200 Subject: [PATCH] In CRL::NamingScheme::vlogTovhdl(), remove '%' invalid VHDL character. --- crlcore/src/ccore/alliance/vst/VhdlPortMap.cpp | 13 ++++++++++--- crlcore/src/ccore/toolbox/NamingScheme.cpp | 1 + 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/crlcore/src/ccore/alliance/vst/VhdlPortMap.cpp b/crlcore/src/ccore/alliance/vst/VhdlPortMap.cpp index 13a5d54d..306a52f2 100644 --- a/crlcore/src/ccore/alliance/vst/VhdlPortMap.cpp +++ b/crlcore/src/ccore/alliance/vst/VhdlPortMap.cpp @@ -52,8 +52,10 @@ namespace Vhdl { const Signal* signal = entity->getGlobal( getString(masterNet->getName()) ); if (signal) return signal->getBit(); - cerr << Error( "PortMap::_lookup() VHDL extension missing on parent of global <%s>." + cerr << Error( "PortMap::_lookup() VHDL extension missing on parent of global \"%s\"\n" + " In parent cell \"%s\"." , getString(masterNet).c_str() + , getString(instance->getCell()->getName()).c_str() ) << endl; } else { Net* net = plug->getNet(); @@ -61,12 +63,17 @@ namespace Vhdl { Bit* bit = BitExtension::get( net ); if (bit) return bit; - cerr << Error( "PortMap::_lookup() VHDL extension missing on <%s>." + cerr << Error( "PortMap::_lookup() VHDL extension missing on \"%s\"." + " In cell \"%s\"." , getString(net).c_str() + , getString(net->getCell()->getName()).c_str() ) << endl; } else { - cerr << Error( "PortMap::_lookup() Unconnected <%s>." + cerr << Error( "PortMap::_lookup() Unconnected \"%s\",\n" + " In instance \"%s\" of \"%s\"." , getString(plug).c_str() + , getString(instance->getName()).c_str() + , getString(instance->getMasterCell()->getName()).c_str() ) << endl; } } diff --git a/crlcore/src/ccore/toolbox/NamingScheme.cpp b/crlcore/src/ccore/toolbox/NamingScheme.cpp index e14c317e..3670e400 100644 --- a/crlcore/src/ccore/toolbox/NamingScheme.cpp +++ b/crlcore/src/ccore/toolbox/NamingScheme.cpp @@ -73,6 +73,7 @@ namespace CRL { if (translated == '\\') translated = '_'; if (translated == '.' ) translated = '_'; + if (translated == '%' ) translated = '_'; if (translated == '$' ) translated = '_'; if (translated == '?' ) translated = '_'; if (translated == ':' ) translated = '_';