[
https://issues.apache.org/jira/browse/GROOVY-8289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Paul King resolved GROOVY-8289.
-------------------------------
Resolution: Fixed
Assignee: Paul King
Fix Version/s: 2.4.13
Proposed PR merged.
> STC and default value in ctor is causing debugging error
> --------------------------------------------------------
>
> Key: GROOVY-8289
> URL: https://issues.apache.org/jira/browse/GROOVY-8289
> Project: Groovy
> Issue Type: Bug
> Components: bytecode
> Affects Versions: 2.4.12
> Reporter: Eric Milles
> Assignee: Paul King
> Fix For: 2.4.13
>
> Attachments: C1.txt, C2.txt, C3.txt
>
>
> When debugging in the IDE, there is a curious behavior where it looks like
> step requests are not being respected. One thing I have found is that JDWP
> requests to the JVM process are failing to resolve the variable "this" in
> certain cases. I need some help from someone who knows the bytecode better
> than myself to figure out where the problem lies.
> Original issue: https://github.com/groovy/groovy-eclipse/issues/312
> I have narrowed it down to a small bit of code with static compilation
> enabled.
> {code}
> @groovy.transform.CompileStatic
> class C {
> String string
> C(String s = null) { string = s }
> static void main(args) {
> def c = new C('') // put breakpoint on this line, run as Java app, and
> step
> println c
> }
> }
> {code}
> Debug stepping fails when executing the constructor for C. If I use {{new
> C(string:'')}}, the generated default constructor is used instead and
> debugging works fine. So I think it has something to do with the one-arg
> constructor's bytecode.
> I dumped the class file using javap and have attached them. {{C1.txt}} is
> for the code above. {{C2.txt}} is the above with the named args constructor
> used instead. I'm not sure if the local args table for the single-argument
> constructor is bad and that is why "this" cannot be resolved.
> There are several similar bugs reported for other tools and whatnots when
> looking for "JDWP error code 35". Hopefully, these help point to something
> in the bytecode that can be corrected.
> http://bugs.java.com/bugdatabase/view_bug.do?bug_id=5005668
> https://bugs.openjdk.java.net/browse/JDK-4992932
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)