So I run into a gotcha today:
‚Äčimport groovy.transform.CompileStatic

class Foo {
    Closure c = { println "right closure" }
    Closure wrap = { 
        println "wrapping closure"
        c() // stack overflow invoke wrap() instead of c()

    def run(){

new Foo().run()‚Äč
So this example throws stack overflow exception if CompileStatic is used.
It would run correctly with c.call() or without CompileStatic.

Bug? Did found some things with stack overflow in Jira but nothing that looked the same.


View this message in context: Bug with closure() and compile static ?
Sent from the Groovy Users mailing list archive at Nabble.com.