Perhaps there should be a new rule which says that invoking a constructor with anything other than "new" or "parent::__contruct()"
should be illegal, in which case this situation would generate an error.
Now this would break a lot of code that $obj->__construct(); or
$this->__construct(); And I've seen a lot of it.
Surely, according to the principles of OO, a class constructor should ONLY be called when the class is constructed/instantiated into an object via the "new" verb? Google for "class constructor" and you will see all those links which say the same thing.