JDK-5029773 : soundness problem with failure to subsitute wildcard as type formal argument
  • Type: Bug
  • Component: tools
  • Sub-Component: javac
  • Affected Version: 5.0
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: solaris_8
  • CPU: generic
  • Submitted: 2004-04-09
  • Updated: 2004-04-26
  • Resolved: 2004-04-26
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.
Other
5.0 b49Fixed
Related Reports
Relates :  
Description
javac improperly accepts the following code.

////////////////////////////////////////////////////
class R<T extends R<T>> {
    T f() { return null; }
    T t;

    void x(R<?> r) {
        this.t = r.f().t; // this should be an error!
    }
}

Comments
CONVERTED DATA BugTraq+ Release Management Values COMMIT TO FIX: tiger-beta2 FIXED IN: tiger-beta2 INTEGRATED IN: tiger-b49 tiger-beta2
14-06-2004

PUBLIC COMMENTS ...
10-06-2004

EVALUATION This is a serious problem, and should be fixed. We should fix it soon, because if we don't fix it in Tiger the fix later will introduce a source incompatibility. ###@###.### 2004-04-12 This should be fixed by the new rules for the capture conversion, which incorporate the bounds from the formal type parameter. See 5011312. ###@###.### 2004-04-14
12-04-2004