A palavra-chave `defer` em C: Uma investida para prevenir vazamentos de memória

Um novo recurso está chegando ao C: `defer`. Ele funciona como um mecanismo de 'desfazer' de propósito geral, garantindo que um conjunto de instruções seja executado independentemente de como um bloco de código sai, crucial para limpeza de recursos como liberar memória ou desbloquear mutexes. `defer` se baseia em extensões de compilador existentes e recursos semelhantes em outras linguagens. O artigo detalha a funcionalidade do `defer`, o escopo e as diferenças de construções semelhantes em Go, com exemplos ilustrando seu uso. O autor incentiva os fornecedores de compiladores a implementar `defer` rapidamente para melhorar a segurança e a manutenibilidade do código C, prevenindo vazamentos de memória como os vistos em CVE-2021-3744.