diff options
Diffstat (limited to 'st/SymbolTable.java')
-rw-r--r-- | st/SymbolTable.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/st/SymbolTable.java b/st/SymbolTable.java index bd76a13..63832e6 100644 --- a/st/SymbolTable.java +++ b/st/SymbolTable.java @@ -83,12 +83,12 @@ public class SymbolTable { ArrayList<TypeInstance> expected = exist.getArguments(); ArrayList<TypeInstance> actual = m.getArguments(); if (expected.size() != actual.size() || - !exist.getReturn().equals(m.getReturn())) + !exist.getReturn().equalsOnExtend(m.getReturn())) throw new TypecheckException(String.format("SymbolTable found that %s is overwritten in %s!", m.getName(), cls.getName())); for (int i = 0; i < actual.size(); ++i) { - if (!expected.get(i).getClassInstance().equals(actual.get(i).getClassInstance())) { + if (!expected.get(i).getClassInstance().equalsOnExtend(actual.get(i).getClassInstance())) { throw new TypecheckException(String.format("SymbolTable found that %s is overwritten in %s!", m.getName(), cls.getName())); |