wcr = compileInfixOperator(compiler, compilerHelper, null, expect, null, false, i-1);
instructions.addAll(wcr.getInstructions());
ret = wcr.getReturnType();
wcr = level.get(i+1).compile(compiler, compilerHelper, null, expect, null, false);
wgc = wcr.getReturnType();
instructions.addAll(wcr.getInstructions());
WeaselTree.autoCast(compiler, wgc, new WeaselGenericClass(compiler.baseTypes.intClass), operator.line, instructions, true);
int primitiveID = WeaselPrimitive.getPrimitiveID(ret.getBaseClass());
if(oper==WeaselOperator.RSHIFT||oper==WeaselOperator.LSHIFT){
if(primitiveID!=WeaselPrimitive.CHAR && primitiveID!=WeaselPrimitive.BYTE && primitiveID!=WeaselPrimitive.SHORT
&& primitiveID!=WeaselPrimitive.INT && primitiveID!=WeaselPrimitive.LONG){