Почему вызов не виртуальной функции-члена для удаленного указателя является неопределенным поведением?

Как видно из названия:

Почему вызов не виртуальной функции-члена для удаленного указателя является неопределенным поведением?

Обратите внимание, что Вопрос не спрашивает, является ли это неопределенным поведением, он спрашиваетПочему это неопределенное поведение.

Рассмотримследующая программа:

#include<iostream>
class Myclass
{
    //int i
    public:
      void doSomething()
      {
          std::cout<<"Inside doSomething";
          //i = 10;
      }
};

int main()
{
    Myclass *ptr = new Myclass;
    delete ptr;

    ptr->doSomething();

    return 0;
}

В приведенном выше коде компилятор фактически не разыменовываетthis&nbsp;при вызове функции-членаdoSomething(), Обратите внимание, что функция не является виртуальной функцией, и компиляторы преобразуют вызов функции-члена в обычный вызов функции, передавая это в качестве первого параметра функции (насколько я понимаю, это определяется реализацией). Они могут сделать это, потому что компилятор может точно определить, какую функцию вызывать во время компиляции. Практически, вызов функции-члена через удаленный указатель не разыменовываетthis,this&nbsp;разыменовывается только в том случае, если к какому-либо члену обращаются внутри тела функции.i)
Если член не доступен в функции, нет никакой цели, что приведенный выше код должен фактически вызывать неопределенное поведение.

Так почему же стандартный мандат, согласно которому вызов не виртуальной функции-члена через удаленный указатель, является неопределенным поведением, хотя на самом деле он может достоверно сказать, что разыменованиеthis&nbsp;должно быть утверждение, которое должно вызывать неопределенное поведение? Это просто для простоты для пользователей языка, что стандарт просто обобщает его, или есть некоторая более глубокая семантика, вовлеченная в этот мандат?

Мне кажется, что, возможно, поскольку именно реализация определяется тем, как компиляторы могут вызывать функцию-член, это может быть причиной того, что стандарт не может обеспечить фактическую точку, в которой возникает UB.

Может кто-нибудь подтвердить?