public Object[] ic_trans(IcFun f,IcStmt_label break_to){
		LinkedList<IcStmt> codes = new LinkedList<IcStmt>();
		
		// arr index
		Object[] result2 = expr.ic_trans(f, null);
		codes.addAll((LinkedList<IcStmt>)result2[0]);
		IcOper the_index = (IcOper)result2[1];
		// arr itself
		Object[] result3 = var.ic_trans(f, null);
		codes.addAll((LinkedList<IcStmt>)result3[0]);
		IcOper the_arr = (IcOper)result3[1];
		// tmp
		IcVar_tmp the_t = IcVar_tmp.new_one(f);
		codes.add(new IcStmt_array2(f,0,the_arr,the_index,the_t));
		
		return new Object[]{codes,the_t};
	}