summaryrefslogtreecommitdiff
path: root/st/SymbolTable.java
diff options
context:
space:
mode:
authorbd-912 <bdunahu@colostate.edu>2024-05-10 13:37:18 -0600
committerbd-912 <bdunahu@colostate.edu>2024-05-10 13:37:18 -0600
commit758fdf5a3d6508fdd826476ac638614f9aac394e (patch)
tree7420bfea4cbc9eb287133c6a6a17b08909e61876 /st/SymbolTable.java
parent4b50a7a2b41373cc9b1644e584886f22da312848 (diff)
Fix introduced error with ClassInstance.equals double usage
Diffstat (limited to 'st/SymbolTable.java')
-rw-r--r--st/SymbolTable.java4
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()));