aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2016-04-03 13:14:48 +0100
committerMichael Williamson <mike@zwobble.org>2016-04-03 13:14:48 +0100
commita813625319f423f1afa9d2b5966e23470ade01ec (patch)
tree6c1e232aa58ce6ee4e1889144644d716de641409 /src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
parenta227ecae42038475241a6d3beb9d9063baf22f6a (diff)
Coerce initial values of local variable declarations
Diffstat (limited to 'src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java')
-rw-r--r--src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
index 286e8bc..4078adb 100644
--- a/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
+++ b/src/main/java/org/zwobble/couscous/ast/LocalVariableDeclarationNode.java
@@ -5,6 +5,7 @@ import org.zwobble.couscous.types.Type;
import org.zwobble.couscous.ast.visitors.NodeTransformer;
import org.zwobble.couscous.ast.visitors.StatementNodeMapper;
+import static org.zwobble.couscous.ast.TypeCoercionNode.coerce;
import static org.zwobble.couscous.ast.VariableDeclaration.var;
public class LocalVariableDeclarationNode implements VariableNode, StatementNode {
@@ -19,7 +20,7 @@ public class LocalVariableDeclarationNode implements VariableNode, StatementNode
public static LocalVariableDeclarationNode localVariableDeclaration(
VariableDeclaration declaration,
ExpressionNode initialValue) {
- return new LocalVariableDeclarationNode(declaration, initialValue);
+ return new LocalVariableDeclarationNode(declaration, coerce(initialValue, declaration.getType()));
}
private final VariableDeclaration declaration;