aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2025-02-02 20:02:14 +0000
committerMichael Williamson <mike@zwobble.org>2025-02-02 20:13:20 +0000
commit1814bc450fa6806c3bbc9468dbe56865c7f3c3a4 (patch)
tree10241f47903396316b44d94c6f9779682aab3f9f /src/main/java
parentf15ca7f8355f007dee1df45e99725c0ce1f0480b (diff)
Type check int multiplication
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java2
-rw-r--r--src/main/java/org/shedlang/compiler/ast/untyped/UntypedBinaryOperator.java1
-rw-r--r--src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java3
3 files changed, 5 insertions, 1 deletions
diff --git a/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java b/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java
index 1a53d9c5..d09b9bf9 100644
--- a/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java
+++ b/src/main/java/org/shedlang/compiler/ast/typed/TypedBinaryOperator.java
@@ -10,7 +10,7 @@ public enum TypedBinaryOperator {
INT_GREATER_THAN_OR_EQUAL(Types.BOOL),
INT_LESS_THAN(Types.BOOL),
INT_LESS_THAN_OR_EQUAL(Types.BOOL),
- INT_MULTIPLY(Types.BOOL),
+ INT_MULTIPLY(Types.INT),
INT_NOT_EQUAL(Types.BOOL),
INT_SUB(Types.INT),
STRING_ADD(Types.STRING);
diff --git a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedBinaryOperator.java b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedBinaryOperator.java
index aa14bcba..003824c4 100644
--- a/src/main/java/org/shedlang/compiler/ast/untyped/UntypedBinaryOperator.java
+++ b/src/main/java/org/shedlang/compiler/ast/untyped/UntypedBinaryOperator.java
@@ -7,6 +7,7 @@ public enum UntypedBinaryOperator {
GREATER_THAN_OR_EQUAL,
LESS_THAN,
LESS_THAN_OR_EQUAL,
+ MULTIPLY,
NOT_EQUAL,
SUB
}
diff --git a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
index d4b52aa4..98fe892e 100644
--- a/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
+++ b/src/main/java/org/shedlang/compiler/typechecker/TypeChecker.java
@@ -250,6 +250,9 @@ public class TypeChecker {
case LESS_THAN_OR_EQUAL ->
TypedBinaryOperator.INT_LESS_THAN_OR_EQUAL;
+ case MULTIPLY ->
+ TypedBinaryOperator.INT_MULTIPLY;
+
case NOT_EQUAL ->
TypedBinaryOperator.INT_NOT_EQUAL;