[
https://issues.apache.org/jira/browse/GROOVY-9373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17215448#comment-17215448
]
Eric Milles commented on GROOVY-9373:
-------------------------------------
The last time I had a look at this, there was not enough ASM API to determine
if a label is reachable or a branch is terminal. Without that, we would need
to walk the bytecode to make these determinations. I have a stash if you'd
like to see it pushed to a branch for inspection.
> ASM: rework line numbers for blocks with fast-path, try/catch or return
> statement insertion
> -------------------------------------------------------------------------------------------
>
> Key: GROOVY-9373
> URL: https://issues.apache.org/jira/browse/GROOVY-9373
> Project: Groovy
> Issue Type: Bug
> Affects Versions: 2.4.18, 2.5.9, 3.0.0-rc-3
> Reporter: Eric Milles
> Assignee: Eric Milles
> Priority: Major
>
> GROOVY-4063, GROOVY-4505, GROOVY-7647, GROOVY-8742, GROOVY-9076, GROOVY-9126
> and GROOVY-9199 present (possibly) conflicting concerns. Code coverage
> metrics are thrown off when line number information exists outside of the
> reachable paths in the bytecode. Debug break and step exhibit strange
> behaviors when the bytecode contains insufficient or duplicated line number
> information.
> Can the ASM changes in StatementWriter be reworked to address these concerns?
> See also https://github.com/jacoco/jacoco/issues/884
--
This message was sent by Atlassian Jira
(v8.3.4#803005)