From af3add2e331fd1c77b5c83b65bcc7ba30d831ac8 Mon Sep 17 00:00:00 2001 From: Steve Reinhardt Date: Fri, 3 Jun 2005 16:21:37 -0400 Subject: [PATCH] Bug fix & cleanup in config code. python/m5/config.py: Bug fix: code was silently converting between incompatible SimObject types as an unintended side-effect of the object cloning support. --HG-- extra : convert_revision : 236f4fe5370f2eddf8af8fab68e2b83dccc34305 --- python/m5/config.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/python/m5/config.py b/python/m5/config.py index 48d945d14..091df3662 100644 --- a/python/m5/config.py +++ b/python/m5/config.py @@ -291,6 +291,10 @@ class SimObject(object): def __init__(self, _value_parent = None, **kwargs): self._children = {} + if _value_parent and type(_value_parent) != type(self): + # this was called as a type conversion rather than a clone + raise TypeError, "Cannot convert %s to %s" % \ + (_value_parent.__class__.__name__, self.__class__.__name__) if not _value_parent: _value_parent = self.__class__ # clone values -- 2.30.2