If two statements are separated by newline (not SEMI), the second had
better not look like the latter half of an expression. If it does, issue a warning.
Also, if the expression starts with a closure, it needs to
have an explicit parameter list, in order to avoid the appearance of a
compound statement. This is a hard error.
These rules are different from Java's "dumb expression" restriction.
Unlike Java, Groovy blocks can end with arbitrary (even dumb) expressions,
as a consequence of optional 'return' and 'continue' tokens.
To make the programmer's intention clear, a leading closure must have an
explicit parameter list, and must not follow a previous statement separated
only by newlines.