From d89379bc64d7b2fc6e466f2b42d5fe2965fd0ff5 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Tue, 11 May 2010 11:02:42 +0000 Subject: [PATCH] * ./hurricane: - Bug: In Net.h, force expansion of SlotTemplate with the line: const SlotTemplate dummyNetSlot ( string("dummyNetSlot"), NULL ); I've no satisfactory explanation, but in the cyclop Inspector the Cell's NetMap is correctly created and in the cgt Inspector, Nets entries of the NetMap appears as "unsupported", meaning that the SlotTemplate<> has not been generated for Net. This correct the problem. --- hurricane/src/hurricane/hurricane/Net.h | 8 ++++++++ hurricane/src/hurricane/hurricane/Slot.h | 8 ++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/hurricane/src/hurricane/hurricane/Net.h b/hurricane/src/hurricane/hurricane/Net.h index 3e42bb12..4721f11d 100644 --- a/hurricane/src/hurricane/hurricane/Net.h +++ b/hurricane/src/hurricane/hurricane/Net.h @@ -305,6 +305,14 @@ IOSTREAM_POINTER_SUPPORT(Hurricane::Net::Direction::Code); IOSTREAM_VALUE_SUPPORT(Hurricane::Net::Direction::Code); +namespace Hurricane { + +// Force SlotTemplate<> expansion on Net* type. +// Because sometimes it didn't happens (?). + const SlotTemplate dummyNetSlot ( string("dummyNetSlot"), NULL ); + +} + #endif // HURRICANE_NET diff --git a/hurricane/src/hurricane/hurricane/Slot.h b/hurricane/src/hurricane/hurricane/Slot.h index f0e9bddc..b99e56fc 100644 --- a/hurricane/src/hurricane/hurricane/Slot.h +++ b/hurricane/src/hurricane/hurricane/Slot.h @@ -328,7 +328,7 @@ namespace Hurricane { template inline Hurricane::Slot* getSlot( std::string& name, Data d ) { -//std::cerr << "getSlot( \"" << name << "\" )" << std::endl; + std::cerr << "getSlot( \"" << name << "\" )" << std::endl; return new Hurricane::SlotTemplate ( name, d ); } @@ -336,7 +336,7 @@ inline Hurricane::Slot* getSlot( std::string& name, Data d ) template inline Hurricane::Slot* getSlot( std::string& name, Data* d ) { -//std::cerr << "getSlot( \"" << name << "\" )" << std::endl; + std::cerr << "getSlot( \"" << name << "\" )" << std::endl; return new Hurricane::SlotTemplate ( name, d ); } @@ -344,7 +344,7 @@ inline Hurricane::Slot* getSlot( std::string& name, Data* d ) template inline Hurricane::Slot* getSlot( const std::string& name, Data d ) { -//std::cerr << "getSlot( \"" << name << "\" )" << std::endl; + std::cerr << "getSlot( \"" << name << "\" )" << std::endl; return new Hurricane::SlotTemplate ( name, d ); } @@ -352,7 +352,7 @@ inline Hurricane::Slot* getSlot( const std::string& name, Data d ) template inline Hurricane::Slot* getSlot( const std::string& name, Data* d ) { -//std::cerr << "getSlot( \"" << name << "\" )" << std::endl; + std::cerr << "getSlot( \"" << name << "\" )" << std::endl; return new Hurricane::SlotTemplate ( name, d ); }