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:
74f7951df6bc0eead9e8252fcbc426dfdc811a28 / Scott Murphy Heiberg 
<[email protected]>
Read the receiver, and read what @CompileStatic was given

isStaticallyCompiled asked only whether a @CompileStatic annotation was present,
never what it carried. @CompileDynamic is an @AnnotationCollector for
@CompileStatic(TypeCheckingMode.SKIP) and is expanded before canonicalization,
so a host marked dynamic arrived looking statically compiled while its bytecode
was not - and a static member of its enclosing class went unreported, failing at
runtime with exactly the NoSuchFieldError this check exists to turn into a
compile error. The innermost annotation now decides, by its value.

The extension-method set is keyed by receiver type instead of flattened, which
the last round accepted as an over-approximation. Both directions of getting it
wrong turn out to be real: the Object-receiver entries alone made `join` on a
List-typed anonymous class read as unreachable, and every DGM name regardless of
receiver let a moved property named text, first, last, count or lines slip
through on an unrelated class - those match DGM's getText/first/last/count/
getLines, and relatedNames expands a property read to its accessor names.
Measured: a moved method('getText') reached as `text` compiled clean and failed
with NoSuchFieldError, and is now reported. Note that getAllInterfaces() is
transitive over a class's own interfaces only and does not climb the superclass
chain, so it has to be asked of each superclass in turn.

Tests for the untested corrections from the previous round as well: the three
cases the answersAnything discriminator separates, and a @CompileStatic host
reaching its statics from inside a group, whose static compilation takes the
deferred path. Also reflows the javadoc line the static-member sentence 
stretched
to ~170 columns.

Report URL: https://github.com/apache/grails-core/actions/runs/34708412858

With regards,
GitHub Actions via GitBox

Reply via email to