From: Gabe Black Date: Tue, 13 Nov 2007 02:06:02 +0000 (-0800) Subject: Params: Fix check for cycles in the configuration and clarify the comments/error... X-Git-Tag: m5_2.0_beta5~84^2~6 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6095dceb0c34cf79ecbd799ab4b2cbe7b7c8629a;p=gem5.git Params: Fix check for cycles in the configuration and clarify the comments/error message. --HG-- extra : convert_revision : 8f35dde408fae874bcba1a248d32a22222d98c35 --- diff --git a/src/python/m5/SimObject.py b/src/python/m5/SimObject.py index d3e7d7975..78df6bef1 100644 --- a/src/python/m5/SimObject.py +++ b/src/python/m5/SimObject.py @@ -793,12 +793,14 @@ class SimObject(object): # necessary to construct it. Does *not* recursively create # children. def getCCObject(self): - params = self.getCCParams() if not self._ccObject: - self._ccObject = -1 # flag to catch cycles in recursion + # Cycles in the configuration heirarchy are not supported. This + # will catch the resulting recursion and stop. + self._ccObject = -1 + params = self.getCCParams() self._ccObject = params.create() elif self._ccObject == -1: - raise RuntimeError, "%s: recursive call to getCCObject()" \ + raise RuntimeError, "%s: Cycle found in configuration heirarchy." \ % self.path() return self._ccObject