I've just read the PEP, and the new grammar is just
decorator: '@' namedexpr_test NEWLINE
with the only parentheses requirement being tuple displays.
Does that mean that the following is valid?
class Spam: def __add__(self, other): return self def __call__(self, f): return f
@ Spam() + Spam() def func(): pass
That looks hella weird XD