- 
    Bug 
- 
    Resolution: Fixed
- 
     P2 P2
- 
    None
- 
        Verified
                    In JLS 7, interface methods and static methods with override-equivalent signatures can both be inherited; this causes an error (8.4.8.4).
class C { static void m() {} }
interface I { void m(); }
class D extends C implements I {} // error
In the Lambda Spec, the interface method is not inherited, so the rule in 8.4.8.4 does not apply. Instead, the restriction that a static method cannot hide an instance method (8.4.8.2) needs to be extended to include _inherited_ static methods.
class C { static void m() {} }
interface I { void m(); }
class D extends C implements I {} // error
In the Lambda Spec, the interface method is not inherited, so the rule in 8.4.8.4 does not apply. Instead, the restriction that a static method cannot hide an instance method (8.4.8.2) needs to be extended to include _inherited_ static methods.