Add a space between ? and [ p ? [0] : [1]
Cheers, Daniel Sun On 2022/09/08 13:39:21 Christopher Smith wrote: > The parser seems to be interpreting what you mean as a ternary as a > null-safe array index. > > On Thu, Sep 8, 2022, 08:37 o...@ocs.cz <o...@ocs.cz> wrote: > > > Hi there, > > > > I've just decided it's time to upgrade from Groovy 3 to Groovy 4... and > > immediately bumped into a problem, which looks like a parser bug in an > > extremely trivial scenario, which seems weird. > > > > Do I perhaps miss something? I've checked > > https://groovy-lang.org/releasenotes/groovy-4.0.html#Groovy4.0-breaking, > > but in vain :( > > > > === > > 2012 ocs /tmp> <q.groovy > > def p > > def x=p?[0]:[1] > > println "got $x" > > 2013 ocs /tmp> /usr/local/groovy-3.0.12/bin/groovy q > > got [1] > > 2014 ocs /tmp> /usr/local/groovy-4.0.4/bin/groovy q > > org.codehaus.groovy.control.MultipleCompilationErrorsException: startup > > failed: > > /private/tmp/q.groovy: 2: Unexpected input: ':' @ line 2, column 12. > > def x=p?[0]:[1] > > ^ > > > > 1 error > > > > 2015 ocs /tmp> > > === > > > > Thanks for any insight, > > OC > > > > >