<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Filed <a href="https://bugs.openjdk.java.net/browse/JDK-8034924" target="_blank">https://bugs.openjdk.java.net/<u></u>browse/JDK-8034924</a>.<br>
</blockquote><div><br></div><div>Thanks!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

- The compile-time error appears (incorrectly) whether the static method in base.BaseImpl is package access or private. But if the static method is public, then everything works fine: Impl.foo(Object) attempts to override base.BaseImpl.foo(Object), and a compile-time error occurs because an instance method cannot override a static method.<br>


</blockquote><div><br></div><div>I think the culprit is that Symbol.hiddenIn(...) doesn&#39;t consider visibility. It&#39;s incorrectly reporting Impl.foo() as being hidden by base.BaseImpl.foo(), which causes an error during lowering when a qualified base class reference is being synthesized for the invocation.</div>


</div></div></div>