Почему интерпритатор PHP не ругается при вызове не статической функции без создания экземпляра класса?
Если включить отображение ошибок E_ALL, то вы увидите:Strict standards: Non-static method A::b() should not be called statically
E_STRICT - это не столько ошибки, сколько советы по правильному кодированию, для предотвращения последующей несовместимости скрипта
А вы уверены что должно быть runtime error а не notice/warning?