[
https://issues.apache.org/jira/browse/GROOVY-11060?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17723520#comment-17723520
]
Eric Milles commented on GROOVY-11060:
--------------------------------------
Thanks. The extra bit of context is helpful. Sometimes minimal to trigger the
error is too minimal to understand intent/usage. I take it the docs for list
literals, spread arguments and static compilation are sparse for this case. In
general, spread arguments are not well supported by static compilation –
de-spreading is a {{ScriptBytecodeAdapter}} operation (which indicates run-time
behavior).
> SC internal error when spreading inside list literal
> ----------------------------------------------------
>
> Key: GROOVY-11060
> URL: https://issues.apache.org/jira/browse/GROOVY-11060
> Project: Groovy
> Issue Type: Bug
> Components: Static compilation
> Affects Versions: 4.0.12
> Reporter: Christopher Smith
> Priority: Major
>
> Spreading a list inside brackets causes a {{SpreadExpression should not be
> visited here}} during class generation. (The business instance of this is
> trying to use a list of URL patterns for Spring {{antMatchers}}.)
> {code}
> @CompileStatic
> class Bug {
> public static final List<String> A = ['a1', 'a2']
> static void varargs(String... strings) {
> println Arrays.toString(strings)
> }
> public static void main(String... args) {
> varargs([
> *A
> ] as String[])
> }
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)