Речь вот о чем. В MSVC есть флажок, который задавит любой use after free на корню. Он буквально делает, что delete p просто занулит p.
я сильно сомневаюсь что
1. линтами в плюсах можно отключить всё плохое без ложноположительных и ложноотрицательных сценариев 2. что много кто знает как эти линты правильно настроить чтобы оно так работало 3. что многие согласятся жить с этими линтами с такими настройками
1. линтами в плюсах можно отключить всё плохое без ложноположительных и ложноотрицательных сценариев 2. что много кто знает как эти линты правильно настроить чтобы оно так работало 3. что многие согласятся жить с этими линтами с такими настройками
Майкрософт. У них компилятор свой. Со своими расширениями. Зачем мне whole program analysis если я могу просто запретить всю работу с невладеемыми указателями без атрибута unsafe?
Майкрософт. У них компилятор свой. Со своими расширениями. Зачем мне whole program analysis если я могу просто запретить всю работу с невладеемыми указателями без атрибута unsafe?
Чтобы понять ответ на этот вопрос, нужно посмотреть "идиоматическую" реализацию двусвязного списка в Rust, который заменяет указатели индексами массива, это же совсем другое, совершенно точно невозможно в велосипедной арене сделать use after free