$ javac preview/PrimitiveInstanceof.java     (25.0.4.1+1-LTS)
preview/PrimitiveInstanceof.java:3: error: primitive patterns are a preview feature and are disabled by default.
        if (i instanceof byte b) return i + " fits in a byte: " + b;
            ^
  (use --enable-preview to enable primitive patterns)
1 error

$ javac preview/PrimitiveInstanceof.java     (27+35)
preview/PrimitiveInstanceof.java:3: error: primitive patterns are a preview feature and are disabled by default.
        if (i instanceof byte b) return i + " fits in a byte: " + b;
            ^
  (use --enable-preview to enable primitive patterns)
1 error

$ javac broken/SwitchOnLong.java     (21.0.10+7-Ubuntu-124.04)
broken/SwitchOnLong.java:4: error: selector type long is not allowed
        String s = switch (n) {          // switch on long: not allowed without the preview
                          ^
1 error

$ javac broken/SwitchOnLong.java     (25.0.4.1+1-LTS)
broken/SwitchOnLong.java:4: error: primitive patterns are a preview feature and are disabled by default.
        String s = switch (n) {          // switch on long: not allowed without the preview
                          ^
  (use --enable-preview to enable primitive patterns)
1 error

$ javac broken/SwitchOnLong.java     (27+35)
broken/SwitchOnLong.java:4: error: primitive patterns are a preview feature and are disabled by default.
        String s = switch (n) {          // switch on long: not allowed without the preview
                          ^
  (use --enable-preview to enable primitive patterns)
1 error

$ javac --enable-preview --release 25 preview/PrimitiveInstanceof.java && java --enable-preview PrimitiveInstanceof     (25.0.4.1+1-LTS)
100 fits in a byte: 100
1000 fits in a short: 1000
100000 needs an int
0.5 converts to float 0.5 without loss
0.1 does NOT convert to float without loss

$ javac --enable-preview --release 27 preview/PrimitiveInstanceof.java && java --enable-preview PrimitiveInstanceof     (27+35)
100 fits in a byte: 100
1000 fits in a short: 1000
100000 needs an int
0.5 converts to float 0.5 without loss
0.1 does NOT convert to float without loss

$ javac --enable-preview --release 25 preview/PrimitiveSwitch.java && java --enable-preview PrimitiveSwitch     (25.0.4.1+1-LTS)
OK | other success 204 | client error 404 | something else 500
yes no
zero one many (9223372036854775807)

$ javac --enable-preview --release 27 preview/PrimitiveSwitch.java && java --enable-preview PrimitiveSwitch     (27+35)
OK | other success 204 | client error 404 | something else 500
yes no
zero one many (9223372036854775807)

$ javac --enable-preview --release 25 preview/PrimitiveInRecord.java && java --enable-preview PrimitiveInRecord     (25.0.4.1+1-LTS)
whole degrees: 21
fractional: 21.5
not a reading

$ javac --enable-preview --release 27 preview/PrimitiveInRecord.java && java --enable-preview PrimitiveInRecord     (27+35)
whole degrees: 21
fractional: 21.5
not a reading

$ javac --enable-preview --release 25 preview/PrimitiveEdges.java && java --enable-preview PrimitiveEdges     (25.0.4.1+1-LTS)
0.0          int? true  float? true 
-0.0         int? false float? true 
NaN          int? false float? true 
1.6777217E7  int? true  float? false
1.0E10       int? false float? true 
3.0          int? true  float? true 
1099511627776 instanceof int? false
Object holding Integer matches int pattern: 42
Short in Object does not match int
65 as char: A

$ javac --enable-preview --release 27 preview/PrimitiveEdges.java && java --enable-preview PrimitiveEdges     (27+35)
0.0          int? true  float? true 
-0.0         int? false float? true 
NaN          int? false float? true 
1.6777217E7  int? true  float? false
1.0E10       int? false float? true 
3.0          int? true  float? true 
1099511627776 instanceof int? false
Object holding Integer matches int pattern: 42
Short in Object does not match int
65 as char: A

$ javac --enable-preview --release 25 preview/BoxedToNarrower.java && java --enable-preview BoxedToNarrower     (25.0.4.1+1-LTS)
preview/BoxedToNarrower.java:4: error: incompatible types: Integer cannot be converted to byte
        if (boxed instanceof byte b) System.out.println("fits a byte: " + b);   // Integer to byte is not allowed
            ^
1 error
Error: Could not find or load main class BoxedToNarrower
Caused by: java.lang.ClassNotFoundException: BoxedToNarrower

$ javac --enable-preview --release 27 preview/BoxedToNarrower.java && java --enable-preview BoxedToNarrower     (27+35)
preview/BoxedToNarrower.java:4: error: incompatible types: Integer cannot be converted to byte
        if (boxed instanceof byte b) System.out.println("fits a byte: " + b);   // Integer to byte is not allowed
            ^
1 error
Error: Could not find or load main class BoxedToNarrower
Caused by: java.lang.ClassNotFoundException: BoxedToNarrower
