Skip to content

Commit 63ab6f8

Browse files
committed
Fix inconsistency with getASMType
1 parent 4bbd17d commit 63ab6f8

File tree

2 files changed

+4
-8
lines changed

2 files changed

+4
-8
lines changed

JavaBytecodeCompiler/src/main/java/org/openzen/zenscript/javabytecode/compiler/ArrayHelperType.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
import org.openzen.zenscript.codemodel.type.TypeID;
77
import org.openzen.zenscript.javabytecode.JavaBytecodeContext;
88
import org.openzen.zenscript.javashared.JavaClass;
9-
import org.openzen.zenscript.javashared.JavaContext;
109
import org.openzen.zenscript.javashared.JavaMethod;
1110

1211
public class ArrayHelperType {
@@ -38,10 +37,7 @@ public void newArray(JavaWriter javaWriter) {
3837
}
3938
}
4039

41-
public Type getASMType() {
42-
if(CompilerUtils.isPrimitive(elementType)) {
43-
return context.getType(elementType);
44-
}
45-
return Type.getType("[" + context.getDescriptor(elementType));
40+
public Type getASMElementType() {
41+
return context.getType(elementType);
4642
}
4743
}

JavaBytecodeCompiler/src/main/java/org/openzen/zenscript/javabytecode/compiler/ArrayInitializerHelper.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ static void visitProjected(JavaWriter javaWriter, int[] sizeLocations, int dim,
116116
* @param defaultLocation The location of the default value. Needs to be of or assignable to elementType!
117117
*/
118118
static void visitMultiDimArrayWithDefaultValue(JavaWriter javaWriter, int[] sizeLocations, int dim, ArrayHelperType currentArrayType, int defaultLocation) {
119-
visitMultiDimArray(javaWriter, sizeLocations, new int[dim], dim, currentArrayType, (elementType, counterLocations) -> javaWriter.load(elementType.getASMType(), defaultLocation));
119+
visitMultiDimArray(javaWriter, sizeLocations, new int[dim], dim, currentArrayType, (elementType, counterLocations) -> javaWriter.load(elementType.getASMElementType(), defaultLocation));
120120
}
121121

122122
/**
@@ -192,7 +192,7 @@ static void visitMultiDimArray(JavaWriter javaWriter, int[] sizeLocations, int[]
192192
} else {
193193
visitMultiDimArray(javaWriter, sizeLocations, counterLocations, dim - 1, elementType, innermostFunction);
194194
}
195-
javaWriter.arrayStore(elementType.getASMType());
195+
javaWriter.arrayStore(elementType.getASMElementType());
196196

197197
//Return to the start
198198
javaWriter.iinc(forLoopCounter);

0 commit comments

Comments
 (0)