Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
None
-
None
-
None
Description
Consider the following:
@groovy.transform.CompileStatic void test() { String.getMetaClass().methodName = { // ... } "foo".methodName() }
After executing this, the ClassInfo registry contains an entry java.lang.String: {theClass: java.lang.Class, ...}.
As additional Groovy code is executed, PojoMetaClassSite entries can fail cache check and create a new CallSite and it too fails cache check and so on until stack overflow.
Attachments
Issue Links
- relates to
-
GROOVY-10820 SC: static choice of Class vs Object extension for Type dot name
- Closed