The GitHub Actions job "Groovy Snapshot Canary Build" on grails-core.git/feat/beans-dsl-diagnostics-8.0.x has succeeded. Run started by GitHub user codeconsole (triggered by codeconsole).
Head commit for run: fbfe7a176a824840159b58f816a6e501b60f0fc1 / Scott Murphy Heiberg <[email protected]> Treat the body a nested anonymous class sits in as a ceiling The per-body decision stopped at the first anonymous class: one created inside a method body was re-entered with the class-level answer, recomputed from the outer CLASS chain, which never sees the method it was written in. A @CompileDynamic method of a @CompileStatic host therefore left every anonymous class in its body reading as statically compiled, on a descriptor and inside a group alike, and their references to an enclosing static went unreported and failed at runtime. Measured while fixing it, and not something the report covered: a @CompileStatic method on the NESTED class does not rescue it either - it still fails with NoSuchFieldError. So the enclosing body is a ceiling rather than a default, and a method's own annotation can only lower the answer beneath it, never raise it. Null says nothing encloses the class but the lifted bean method, where the chain alone decides and a method may still raise it, which is the round-5 behaviour the existing rows pin. The nested class also inherits baseOwn rather than the body's set, so the statics have to reach it through its own answer or not at all; passing the body's set would hand them over before that answer is consulted. walkBody returns the classes found in the body it walked instead of appending to one shared list, which is what lets each carry its own answer down. Report URL: https://github.com/apache/grails-core/actions/runs/34873485593 With regards, GitHub Actions via GitBox
