Config: Exit with fatal if a port is already connected
This patch turns the existing warning into a fatal, as there should never be any cases where a (non-vector) port is assigned to and then later connected to something else. If this behaviour is allowed, as it used to be, there are cases where the wrong number of C++ ports are created when instantiating objects with VectorPorts (obviously that could be fixed, but the better approach is to simply not allow it).
This commit is contained in:
parent
0bff8eb210
commit
31b4ac5cec
1 changed files with 2 additions and 3 deletions
|
@ -1379,9 +1379,8 @@ class PortRef(object):
|
|||
# reference to plain VectorPort is implicit append
|
||||
other = other._get_next()
|
||||
if self.peer and not proxy.isproxy(self.peer):
|
||||
print "warning: overwriting port", self, \
|
||||
"value", self.peer, "with", other
|
||||
self.peer.peer = None
|
||||
fatal("Port %s is already connected to %s, cannot connect %s\n",
|
||||
self, self.peer, other);
|
||||
self.peer = other
|
||||
if proxy.isproxy(other):
|
||||
other.set_param_desc(PortParamDesc())
|
||||
|
|
Loading…
Reference in a new issue