[ https://issues.apache.org/jira/browse/GROOVY-8289?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paul King closed GROOVY-8289. ----------------------------- > 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 > Priority: Major > 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 (v7.6.3#76005)