summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Beckmann <Brad.Beckmann@amd.com>2012-07-10 22:51:54 -0700
committerBrad Beckmann <Brad.Beckmann@amd.com>2012-07-10 22:51:54 -0700
commit884cd6f7526e35fe900413eb5f5c07c04fc2b7e3 (patch)
treed0da43647595ac0e2eefb5d3278f9163ae016ca3
parent86d6b788f6d7b523c750ffb64d6d8920ec741c49 (diff)
downloadgem5-884cd6f7526e35fe900413eb5f5c07c04fc2b7e3.tar.xz
imported patch jason/slicc-external-structure-fix
-rw-r--r--src/mem/slicc/ast/AssignStatementAST.py2
-rw-r--r--src/mem/slicc/ast/FuncCallExprAST.py2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/mem/slicc/ast/AssignStatementAST.py b/src/mem/slicc/ast/AssignStatementAST.py
index 3c3426f5b..042204925 100644
--- a/src/mem/slicc/ast/AssignStatementAST.py
+++ b/src/mem/slicc/ast/AssignStatementAST.py
@@ -45,7 +45,7 @@ class AssignStatementAST(StatementAST):
code("$lcode = $rcode;")
- if ltype != rtype:
+ if not (ltype == rtype or (ltype.isInterface and ltype['interface'] == rtype.ident)):
# FIXME - beckmann
# the following if statement is a hack to allow NetDest
# objects to be assigned to Sets this allows for the
diff --git a/src/mem/slicc/ast/FuncCallExprAST.py b/src/mem/slicc/ast/FuncCallExprAST.py
index 75ec12344..3747d0dfd 100644
--- a/src/mem/slicc/ast/FuncCallExprAST.py
+++ b/src/mem/slicc/ast/FuncCallExprAST.py
@@ -93,7 +93,7 @@ class FuncCallExprAST(ExprAST):
for expr,expected_type in zip(self.exprs, func.param_types):
# Check the types of the parameter
actual_type,param_code = expr.inline(True)
- if actual_type != expected_type:
+ if str(actual_type) != str(expected_type):
expr.error("Type mismatch: expected: %s actual: %s" % \
(expected_type, actual_type))
cvec.append(param_code)