JDK-8010179 : Remove transitional target values from javac
  • Type: Enhancement
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 8
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2013-03-15
  • Updated: 2017-05-17
  • Resolved: 2013-03-19
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8
8 b84Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
The -target option of javac has supported a number of "transitional" values

* 1.4.2 (results in 48.0 class files with different code generation behavior)
* 1.4.1 (results in 48.0 class files with different code generation behavior)
* jsr14 (results in 48.0 class files with generics information)

The time has come for these transitional options to be transitioned out of the set of recognized targets.
Comments
Draft release notes text - JDK scope, behavioral change: Recognition of the undocumented target values "1.4.1", "1.4.2" and "jsr14" have been removed from javac. The "1.4.1" and "1.4.2" targets used more up-to-date code generation idioms than than "1.4". The combination of options "-source 1.4 -target 1.5" will use those newer idioms, but also output a more recent class file format. The "jsr14" option was a transitional private option for when generics were first being added to the platform. Now generics should be compiled with a target of 1.5 or higher.
19-03-2013