LINUX.ORG.RU

История изменений

Исправление Psilocybe, (текущая версия) :

Если подумать с точки зрения семантики операций, то realloc изменение выделенного ранее куска памяти, то есть в случае успеха - должен быть не NULL указатель, а если память невозможно выделить, то вернуть NULL. В случае же размера 0 и простого освобождения памяти (то есть фактического free) так же будет возвращен NULL, что неотличимо от сбоя выделения новой памяти при размере >0.

Всё правильно сделали, что внесли данное поведение в UB.

Божественная сишечка становится всё лучше!

Исправление Psilocybe, :

Если подумать с точки зрения семантики операций, то realloc изменение выделенного ранее куска памяти, то есть в случае успеха - должен быть не NULL указатель, а если память невозможно выделить, то вернуть NULL. В случае же размера 0 и простого освобождения памяти (то есть фактического free) так же будет возвращен NULL, что неотличимо от сбоя выделения новой памяти при размере >0.

Всё правильно сделали, что внесли данное поведение в UB.

Исходная версия Psilocybe, :

Если подумать с точки зрения семантики операций, то realloc изменение выделенного ранее куска памяти, то есть в случае успеха - должен быть не NULL указатель, а если память невозможно выделить, то вернуть NULL. В случае же размера и простого освобождения памяти (то есть фактического free) так же будет возвращен NULL, что неотличимо от сбоя выделения новой памяти при размере >0.

Всё правильно сделали, что внесли данное поведение в UB.