From 6a1be32a7277c59f13f354bec8ece868043ac0cd Mon Sep 17 00:00:00 2001 From: Steve Reinhardt Date: Wed, 1 Jun 2011 21:43:13 -0700 Subject: [PATCH] SimObject: allow modules in subclass definitions In particular, this avoids crashing when you do an import (like "import pdb") inside a SimObject subclass definition. --- src/python/m5/SimObject.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/python/m5/SimObject.py b/src/python/m5/SimObject.py index a143958f0..c18d6900c 100644 --- a/src/python/m5/SimObject.py +++ b/src/python/m5/SimObject.py @@ -29,7 +29,7 @@ # Nathan Binkert import sys -from types import FunctionType, MethodType +from types import FunctionType, MethodType, ModuleType try: import pydot @@ -130,7 +130,8 @@ def default_swig_objdecls(cls, code): def public_value(key, value): return key.startswith('_') or \ - isinstance(value, (FunctionType, MethodType, classmethod, type)) + isinstance(value, (FunctionType, MethodType, ModuleType, + classmethod, type)) # The metaclass for SimObject. This class controls how new classes # that derive from SimObject are instantiated, and provides inherited