Possible compiler bug: continue is skipped after or-condition
Maurizio Cimadamore
maurizio.cimadamore at oracle.com
Mon Feb 17 21:23:15 UTC 2020
Forgot the link:
[1] - https://openjdk.java.net/jeps/303
On 17/02/2020 21:20, Maurizio Cimadamore wrote:
> They are _generally_ very reliable - to be clear, nothing has changed
> in this area to make less reliable. You "just" came across a quirk in
> javac code generation strategy that has been there for the last 20 years.
>
> There are other situations where putting a breakpoint won't
> necessarily result in anything meaningful to occur - for instance, if
> you put a breakpoint on a local variable declaration. This is not to
> say that nothing should be done about it _ever_ - but as you said, you
> lived for 20 years w/o realizing that this hiccup has been there all
> along (along with other hiccups) - so please also understand a certain
> reticence in making an abrupt change in the code generation strategy
> (or worse, supporting multiple code generation strategies) for what
> feels like something that is annoying, yes, but hardly a breaking issue.
>
> As I said in my last email, I'd like to address this as part as a more
> holistic investigation on how bytecode fidelity is retained from class
> files. Note that we have features in the pipeline like constant
> folding (see [1]) which are going to cause an even bigger impact to
> how source files relates to classfiles. So I'd just like to think this
> through properly, as I think this needs more thinking and more time
> than what we've available right now - to fully assess the extent of
> this and other 'premature' optimizations javac might do to the code,
> verify that changing code shape won't hurt C1, C2 compilers, and make
> sure that no relevant functional regression is introduced.
>
> Maurizio
>
> On 17/02/2020 17:35, Roland Illig wrote:
>> How would you explain to an average developer that breakpoints are not
>> reliable? Up to now, they have been very reliable to me, and after more
>> than 20 years of using Java, this is really the first time that the
>> breakpoints surprise me.
More information about the compiler-dev
mailing list