duke@1: /** duke@1: * @test /nodynamiccopyright/ duke@1: * @bug 4759494 4986256 duke@1: * @compile/ref=DivZero.noLint.out -XDstdout -XDrawDiagnostics DivZero.java duke@1: * @compile/ref=DivZero.lint.out -XDstdout -Xlint:divzero -XDrawDiagnostics DivZero.java duke@1: * @compile/ref=DivZero.lint.out -XDstdout -Xlint:all,-path -XDrawDiagnostics DivZero.java duke@1: */ duke@1: duke@1: class DivZero duke@1: { duke@1: public static final int ONE = 1; duke@1: duke@1: public int i1 = 1 / 0; duke@1: public static final int i2 = 1 / 0; duke@1: duke@1: public int i3 = 1 % 0; duke@1: public static final int i4 = 1 % 0; duke@1: duke@1: public static final int i5 = 1 / (1 - 1); duke@1: public static final int i6 = 1 / (ONE - 1); duke@1: public static final int i7 = 1 / (ONE - ONE); duke@1: duke@1: public static final int i8 = 1 % (1 - 1); duke@1: public static final int i9 = 1 % (ONE - 1); duke@1: public static final int i10 = 1 % (ONE - ONE); duke@1: duke@1: public static final long ONEL = 1L; duke@1: duke@1: public long l1 = 1L / 0L; duke@1: public static final long l2 = 1L / 0L; duke@1: duke@1: public long l3 = 1L % 0L; duke@1: public static final long l4 = 1L % 0L; duke@1: duke@1: public static final long l5 = 1L / (1L - 1L); duke@1: public static final long l6 = 1L / (ONEL - 1L); duke@1: public static final long l7 = 1L / (ONEL - ONEL); duke@1: duke@1: public static final long l8 = 1L % (1L - 1L); duke@1: public static final long l9 = 1L % (ONEL - 1L); duke@1: public static final long l10 = 1L % (ONEL - ONEL); duke@1: duke@1: duke@1: static void m() { duke@1: int mi1 = 1 / 0; duke@1: int mi2 = 1 % 0; duke@1: duke@1: mi1 /= 0; duke@1: mi1 %= 0; duke@1: duke@1: long ml1 = 1L / 0L; duke@1: long ml2 = 1L % 0L; duke@1: duke@1: ml1 /= 0L; duke@1: ml1 %= 0L; duke@1: } duke@1: } duke@1: duke@1: @SuppressWarnings("divzero") duke@1: class DivZero2 duke@1: { duke@1: public static final int ONE = 1; duke@1: duke@1: public int i1 = 1 / 0; duke@1: public static final int i2 = 1 / 0; duke@1: duke@1: public int i3 = 1 % 0; duke@1: public static final int i4 = 1 % 0; duke@1: duke@1: public static final int i5 = 1 / (1 - 1); duke@1: public static final int i6 = 1 / (ONE - 1); duke@1: public static final int i7 = 1 / (ONE - ONE); duke@1: duke@1: public static final int i8 = 1 % (1 - 1); duke@1: public static final int i9 = 1 % (ONE - 1); duke@1: public static final int i10 = 1 % (ONE - ONE); duke@1: duke@1: public static final long ONEL = 1L; duke@1: duke@1: public long l1 = 1L / 0L; duke@1: public static final long l2 = 1L / 0L; duke@1: duke@1: public long l3 = 1L % 0L; duke@1: public static final long l4 = 1L % 0L; duke@1: duke@1: public static final long l5 = 1L / (1L - 1L); duke@1: public static final long l6 = 1L / (ONEL - 1L); duke@1: public static final long l7 = 1L / (ONEL - ONEL); duke@1: duke@1: public static final long l8 = 1L % (1L - 1L); duke@1: public static final long l9 = 1L % (ONEL - 1L); duke@1: public static final long l10 = 1L % (ONEL - ONEL); duke@1: duke@1: duke@1: static void m() { duke@1: int mi1 = 1 / 0; duke@1: int mi2 = 1 % 0; duke@1: duke@1: mi1 /= 0; duke@1: mi1 %= 0; duke@1: duke@1: long ml1 = 1L / 0L; duke@1: long ml2 = 1L % 0L; duke@1: duke@1: ml1 /= 0L; duke@1: ml1 %= 0L; duke@1: } duke@1: } duke@1: duke@1: class DivZero3 duke@1: { duke@1: @SuppressWarnings("divzero") duke@1: public int i1 = 1 / 0; duke@1: @SuppressWarnings("divzero") duke@1: public static final int i2 = 1 / 0; duke@1: duke@1: @SuppressWarnings("divzero") duke@1: public int i3 = 1 % 0; duke@1: @SuppressWarnings("divzero") duke@1: public static final int i4 = 1 % 0; duke@1: duke@1: @SuppressWarnings("divzero") duke@1: public long l1 = 1L / 0L; duke@1: @SuppressWarnings("divzero") duke@1: public static final long l2 = 1L / 0L; duke@1: duke@1: @SuppressWarnings("divzero") duke@1: public long l3 = 1L % 0L; duke@1: @SuppressWarnings("divzero") duke@1: public static final long l4 = 1L % 0L; duke@1: duke@1: duke@1: @SuppressWarnings("divzero") duke@1: static void m() { duke@1: int mi1 = 1 / 0; duke@1: int mi2 = 1 % 0; duke@1: duke@1: mi1 /= 0; duke@1: mi1 %= 0; duke@1: duke@1: long ml1 = 1L / 0L; duke@1: long ml2 = 1L % 0L; duke@1: duke@1: ml1 /= 0L; duke@1: ml1 %= 0L; duke@1: } duke@1: }