C++ e a linguagem C têm sido alvo de críticas pela Casa Branca, que em fevereiro pediu aos desenvolvedores que parassem de usar essas linguagens por questões de segurança de memória. O fundador do C++, Bjarne Stroustrup, respondeu defendendo a linguagem. A proposta Safe C++ Extensions visa virar a maré para C++. Um componente-chave do plano é a Safe Standard Library, que forneceria aos desenvolvedores implementações seguras de memória de estruturas de dados e algoritmos essenciais, de acordo com Falco. O objetivo da proposta é avançar um superconjunto de C++ com um “subconjunto rigorosamente seguro”, afirma a proposta. O código C++ neste contexto seguro exibiria as mesmas garantias de segurança fortes que o código escrito em Rust, diz.
A proposta Safe C++ Extensions contrasta ISO C++ com Safe C++. “Em ISO C++, bugs de solidez geralmente ocorrem porque o chamador e o chamado não sabem quem deve impor pré-condições, então nenhum deles sabe. Em Safe C++, há uma convenção apoiada pelo compilador, eliminando essa confusão e melhorando a qualidade do software.”
Na introdução à proposta, a C++ Alliance reconhece problemas com a linguagem. “Grande parte da infraestrutura crítica do país depende de software escrito em C e C++, linguagens que são muitoinsegurodeixando esses sistemas mais vulneráveis a explorações por adversários.” No entanto, os desenvolvedores do Safe C++ seriam proibidos de escrever operações que podem resultar em comportamentos indefinidos que comprometam a segurança vitalícia, a segurança de tipo ou a segurança de thread.
