[jira] [Commented] (GROOVY-9373) ASM: rework line numbers for blocks with fast-path, try/catch or return statement insertion

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Commented] (GROOVY-9373) ASM: rework line numbers for blocks with fast-path, try/catch or return statement insertion

Eric Milles (Jira)

    [ 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)