Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
2.5.13, 3.0.6
-
None
-
None
Description
Missing inner class table entry is causing class resolution issues for older Eclipse IDE versions (2018-09 and earlier).
Consider the following:
class One { static class Two { static class Three { } } }
When compiled by groovyc, the inner class table for Three is like this:
Inner classes: [inner class info: #2 One$Two$Three, outer class info: #56 One$Two inner name: #143 Three, accessflags: 9 public static]
When compiled by javac, the inner class table for Three is like this:
Inner classes: [inner class info: #12 One$Two, outer class info: #22 One inner name: #13 Two, accessflags: 9 public static], [inner class info: #2 One$Two$Three, outer class info: #12 One$Two inner name: #15 Three, accessflags: 9 public static]
The extra entry that refers to the direct outer class is present for Two under groovyc, but not for Three (the twice nested class).
Attachments
Issue Links
- is related to
-
GROOVY-8863 Groovy compiler doesn't generate InnerClasses attribute for nested class names mentioned in the class file
- Closed