Byproducts of aborted attempt to refine 'parent' proxy semantics.
Mostly cleanup of mpy_importer.mpy_parse().
python/m5/__init__.py:
Move panic() up to top in case we want to use it
in mpy_importer (though I ended up not doing that
after all).
python/m5/config.py:
Add a couple of comments and a check for expressions
like parent.any.foo (which is illegal).
--HG--
extra : convert_revision : dfc99ac9b1a2d91a736ca0b773b6d3c528a4f3cc
This commit is contained in:
@@ -151,8 +151,11 @@ class Proxy(object):
|
||||
self._multiplier = None
|
||||
|
||||
def __getattr__(self, attr):
|
||||
# python uses __bases__ internally for inheritance
|
||||
if attr == '__bases__':
|
||||
return super(Proxy, self).__getattr__(self, attr)
|
||||
if (self._path == None):
|
||||
panic("Can't add attributes to 'any' proxy")
|
||||
self._path.append((attr,None))
|
||||
return self
|
||||
|
||||
@@ -347,7 +350,7 @@ class MetaConfigNode(type):
|
||||
elif isNullPointer(val):
|
||||
cls._values[key] = val
|
||||
|
||||
# process param types from _init_dict, as these may be needed
|
||||
# process param types from _init_dict first, as these may be needed
|
||||
# by param descriptions also in _init_dict
|
||||
for key,val in cls._init_dict.items():
|
||||
if isinstance(val, type) and issubclass(val, ParamType):
|
||||
|
||||
Reference in New Issue
Block a user