RFR: 8071693: Introspector ignores default interface methods [v4]

Phil Race prr at openjdk.org
Fri Apr 21 17:04:45 UTC 2023


On Fri, 21 Apr 2023 05:24:30 GMT, Joe Darcy <darcy at openjdk.org> wrote:

> > > The fix overall looks fine, but I'm not seeing why you think it needs a CSR. It is just a bug fix.
> > 
> > 
> > I'm not sure if it does or not. According to the [CSR FAQ](https://wiki.openjdk.org/display/csr/CSR+FAQs), _Behavioral compatibility involves operational equivalence; with "the same" inputs, does a program behave "the same way" before and after a change._

By that criterion every change needs a CSR.
Gosh, it used to SEGV, now it doesn't - I'd better file a CSR !

> > I've been dinged before for mere "bug fixes" without a CSR (see for example #10856 which made the compiler behave more closely to the spec and was eventually reverted because of it :) So, just being conservative I guess.
> > I'd be happy to be wrong. @jddarcy, your opinion?
> 
> Hmmm. I'm not an expert on Introspectors, but my impression is the behavior change is CSR-worthy. HTH

Maybe but regardless the CSR that has been written is very wrong, as I already commented there.
If you could write something up that sticks to specification or describing behaviour that rises to the level of implied
specification, using words, not code, then we can consider it.

All it needs to say is 
"Previously, the introspector would ignore interfaces, since before default methods were added to the language, there
could be no implementation. Now  interfaces are considered like other classes"

That's it, isn't it ?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/13544#issuecomment-1518105723



More information about the client-libs-dev mailing list