On 26/05/2016 17:30, Fleshgrinder wrote:
  class O {
    public int $x;
  }
  echo (new O)->x; // null + E_NOTICE

As I'm sure has already been pointed out (I haven't followed the whole thread) this defeats a large advantage of typed properties - I now can't read from the property without checking if it's null, so I can't do this:

class O {
   public \DateTimeImmutable $d;
}
echo (new O)->d->format('Y-m-d H:i:s');

There's no ? on the type def, so I ought to be able to trust the type. A TypeError makes more sense here, because it is a programming error for it to be in this state.

Regards,
Rowan Collins
[IMSoP]

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to