RFR: 8303374: Compiler Implementation for Primitive types in patterns, instanceof, and switch (Preview) [v20]

Aggelos Biboudis abimpoudis at openjdk.org
Mon Oct 16 17:25:27 UTC 2023


> This is the first draft of a patch for Primitive types in patterns, instanceof, and switch (Preview).
> 
> Draft spec here: https://cr.openjdk.org/~abimpoudis/instanceof/jep443-20231010/specs/instanceof-jls.html

Aggelos Biboudis has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 26 additional commits since the last revision:

 - Merge branch 'master' into primitive-patterns
 - Address review
   
   - Add comments
   - Rename exactness methods
   - Use convenience methods from TypeTag for checkUnconditionallyExactPrimitives in Types
   - Port isStrictSubRangeOf to Wrapper and use it for unconditionalExactnessCheck in SwitchBootstraps
 - Fix duplicate method name and add a new test in PrimitivePatternsSwitchErrors
 - Merge branch 'master' into primitive-patterns
 - Update name of exactness methods class
 - Merge branch 'master' into primitive-patterns
 - Adjust tests
   
   Co-authored-by: Jan Lahoda <jan.lahoda at oracle.com>
   Co-authored-by: Angelos Bimpoudis <angelos.bimpoudis at oracle.com>
 - Fix exhaustiveness check for primitive types
 - Add tests
 - Improve non integral check
 - ... and 16 more: https://git.openjdk.org/jdk/compare/f1f3e73c...2f03b1b9

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/15638/files
  - new: https://git.openjdk.org/jdk/pull/15638/files/d06b2172..2f03b1b9

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=15638&range=19
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=15638&range=18-19

  Stats: 12908 lines in 521 files changed: 8067 ins; 2451 del; 2390 mod
  Patch: https://git.openjdk.org/jdk/pull/15638.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/15638/head:pull/15638

PR: https://git.openjdk.org/jdk/pull/15638


More information about the core-libs-dev mailing list