Fixed
Status Update
Comments
mi...@gmail.com <mi...@gmail.com> #2
For the time being, make changes directly in the Gradle build files.
gc...@google.com <gc...@google.com>
jp...@google.com <jp...@google.com>
mi...@gmail.com <mi...@gmail.com> #3
Just to inform that, intended or not, the second problem described in this issue has been solved in 0.2.1. The first one still needs the workaround from comment #1 .
Description
// access flags 0x19
public final static test()V
L0
LINENUMBER 118 L0
BIPUSH 11
NEW kotlin/ranges/IntRange
DUP_X1
SWAP
BIPUSH 12
INVOKESPECIAL kotlin/ranges/IntRange.<init> (II)V
POP
L1
LINENUMBER 119 L1
RETURN
L2
MAXSTACK = 4
MAXLOCALS = 0
transformed to
{
0 : {
}
-s_0_I = 11;
-s_1_R = alloc <IntRange>;
-s_2_R = -s_1_R;
-s_1_I = -s_0_I;
-s_0_R = -s_2_R;
-swap_tmp_R = -s_1_I;
-s_1_I = -s_2_R;
-s_2_R = -swap_tmp_R;
-s_3_I = 12;
-s_1_R.<init>(-s_2_I, -s_3_I);
9 : {
}
return;
} (simple.kt:2-3)
And TypeLegalizer:196 (case ASG: { JExpression castTo = maybeBoxOrUnbox(rhs, lhsType);)...}) tries cast Range value to primitive int "-s_1_I = -s_2_R;"
Seems bug linked with