История изменений
Исправление hateyoufeel, (текущая версия) :
Так-то оно так, но в этом конкретном случае я не до конца понимаю какую практическую пользу из конкретно этого UB можно извлечь в принципе.
Как и от большей части UB, практической пользы абсолютный ноль. Это C, его разумом не понять. Он нужен в основном во имя страданий.
Как компилятор вообще хоть что-то может предполагать о free(), учитывая что я могу подсунуть свою в runtime?
Легко. В стандарте языка написано, что он может, значит он может.
Исходная версия hateyoufeel, :
Так-то оно так, но в этом конкретном случае я не до конца понимаю какую практическую пользу из конкретно этого UB можно извлечь в принципе.
Как и от большей части UB, практической пользы абсолютный ноль. Это C, его разумом не понять.
Как компилятор вообще хоть что-то может предполагать о free(), учитывая что я могу подсунуть свою в runtime?
Легко. В стандарте языка написано, что он может, значит он может.