Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8030729

Lambda Spec: Always depend on the resolution of capture vars

    Details

    • Subcomponent:
    • Verification:
      Verified

      Description

      Given an inference bound like

      z <: Foo<t>

      Where 'z' is a capture var, it should be the case that 't' depends on the resolution of 'z'. (This is unusual -- usually the dependency goes the other direction, with 'z' depending on 't'.)

      Currently, no dependency between the two is specified.

      Fortunately, incorporation passes most useful information from 'z' to 't' anyway, but not always:

      interface PonyList<T extends Pony> extends List<T> {}
      PonyList<z> = capture(PonyList<? extends x>)
      z <: Bar<t>

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                dlsmith Dan Smith
                Reporter:
                dlsmith Dan Smith
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: