syntax: allow stmt/expr macro invocations to be delimited by [].

this is useful for macros like vec! which construct containers

rebase of #12947 because I'm impatient.