tcltest::test 15.20-2-runtime-1 { Test side-effects of compile-time known
        comparisons } {runtime} {
    compile_and_run [saveas T15202r1.java {
class T15202r1 {
    static int m(char c) {
	System.out.print(c);
	return 1;
    }
    public static void main(String[] args) {
	boolean b = new int[] { m('O') } instanceof Cloneable;
	b &= "" + m('K') instanceof String;
	System.out.print(" " + b);
	b = ((m(' ') > 0) ? null : null) instanceof Object;
	System.out.print(b);
    }
}
    }]
} {OK true false}

tcltest::test 15.20-2-runtime-2 { Test side-effects of compile-time known
        comparisons } {runtime} {
    compile_and_run [saveas T15202r2.java {
class T15202r2 {
    static int m() {
	return -1;
    }
    public static void main(String[] args) {
	try {
	    System.out.print(new int[m()] instanceof int[]);
	} catch (NegativeArraySizeException e) {
	    System.out.print("OK");
	}
    }
}
    }]
} OK
