Re: Арифметика указателей UB в throw_realloc_debug()
Vitaliy Aksyonov написал(а) к Nil A в Oct 23 09:26:16 по местному времени:
Привет, Nil!
17 Oct 23 08:53, ты писал(а) мне:
NA>>> Во-первых, зачем по-умолчанию включены отладки GTНROW_LOG и
NA>>> GTНROW_DEBUG? Я иногда видел какие-то трейсы про память пишутся
NA>>> в golded.log, но реально, хоть что-то когда-нибудь присылал сюда
NA>>> в эху, или куда-то, какие-то отладочные трейсы памяти?
VA>> Подозреваю, это сделали, чтобы было проще собирать отчеты об
VA>> ошибках. Коряво, конечно. Для релизной сборки это все должно быть
VA>> отключено. Оно и на производительность влияет не самым
VA>> благоприятным образом.
VA>> Мало того, realloc совсем не обязательно должен выделять память в
VA>> новом месте. В случае с уменьшением куска, это вполне может быть
VA>> тот же кусок. Другое дело, что в таком виде это вряд ли
VA>> используется.
NA> Этот GTНROW_DEBUG ловит только аллокации в куче и какие-то минимальные
NA> заезды, тогда как тулы, в лице ASAN билдов, и valgrind, ловят и заезды
NA> на стеке тоже, коих в этот эхотаге $(grep strcpy) и маленькая тележка
NA> ;-)
Я это прекрасно понимаю. :) Плюс текущего подхода, что не надо распространять сборку с санитайзером и все равно есть шанс поймать подобные ошибки у пользователя. Часто бывает, что ошибка воспроизводится только при крайне специфичных условиях. А вообще, конечно, надо этот легаси выпиливать.
Best regards,
Vitaliy Aksyonov.
... Федерация Исключительного Дружеского Общения.
--- GoldED+/LNX 1.1.5-b20231007
|