8.4 allows chaining on a new expression without wrapping it, which is a small improvement that invites a bigger mistake.
// 8.3
$name = (new ReflectionClass($object))->getShortName();
// 8.4
$name = new ReflectionClass($object)->getShortName();
// and where it reads worse
$total = new OrderTotals($lines, $rates, $currency)->withVat()->format();
// a construction, three arguments and two calls, and
// the eye has to find where the constructor ends.
The parentheses were noise on a one-call chain and were doing real work on a longer one, which is the usual shape of a syntax relaxation. Our convention is that it is fine for a single accessor and the object goes into a variable otherwise — a rule that a linter cannot express and that reviewers apply inconsistently.