Diese Person hat vermutlich nicht die entsprechenden Docs zu dem Feature gelesen und verstanden, dass die if condition keine 100%ige Entsprechung eines klassichen if-then Kontrukts ist, in dessen True und False Zweigen man auf dieselbe Variable zuweist. Denn in letzterem Fall können bei der Zuweisung implizite und unterschiedliche(!) Typkonvertierungen passieren.
Dahingegen ist der neue "if operator" typisiert, der ganze Ausdruck liefert also einen Typ zurück und deshalb müssen die Ausdrücke in den True und False Zweigen zusammen passen. Bei der Konvertierung im klassischen if-then ist die Typkonvertierung vom Zuweisungsziel abhängig, dies interessiert beim Feststellen des Typs des "if operator" Ausdrucks nicht. Gefällt nicht jedem, dass hier das Zuweisungsziel komplett ignoriert wird (mich eingeschlossen), ist aber nunmal so.