• Icon: Sub-task Sub-task
    • Resolution: Fixed
    • Icon: P2 P2
    • 8
    • 8
    • tools
    • b91
    • generic
    • generic
    • Verified

      With the proposed changes to generate lambda methods as private interface methods (changes attached as patch that Robert Field provided), javac crashes during compilation of the following test case provided in JDK-8006267.

      <test_code>

      interface Sup {
          default void m() { }
      }

      interface I extends Sup {
         default void m() {
              Runnable r = ()-> { Sup.super.m(); }; //the plan is to generate a private instance synthetic method for translating this lambda away
              r.run();
         }
      }

      class ImplI implements I {}

      class TestTwo {
          public static void main(String[] args) {
              ImplI mi = new ImplI();
              mi.m();
          }
      }

      </test_code>

            rfield Robert Field (Inactive)
            bharadwaj Bharadwaj Yadavalli (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: