Safe C++: Language Extensions for Memory Safety
The C++ Alliance has partnered with Sean Baxter to develop Safe C++ Extensions, enhancing memory safety and introducing a Safe Standard Library, while inviting community feedback for refinement.
Read original articleThe C++ Alliance has announced a partnership with engineer Sean Baxter to develop the Safe C++ Extensions proposal, which aims to enhance memory safety in the C++ programming language. This initiative responds to the growing demand for secure and reliable software, addressing common memory-related errors that developers face. The Safe C++ Extensions will introduce new features while maintaining the language's performance and flexibility. A significant aspect of this proposal is the Safe Standard Library, which will offer memory-safe implementations of essential data structures and algorithms, ensuring that safety is prioritized in new code development. The C++ Alliance and Baxter are inviting feedback from developers, researchers, and stakeholders to refine the proposal and ensure it meets the needs of the C++ community. Interested parties can access the latest draft and participate in discussions through the official Safe C++ website and the C++ Language Slack Workspace.
- The C++ Alliance partners with Sean Baxter to enhance memory safety in C++.
- The Safe C++ Extensions aim to prevent common memory-related errors.
- A new Safe Standard Library will provide memory-safe data structures and algorithms.
- Feedback from the community is sought to refine the proposal.
- The initiative emphasizes the importance of secure coding practices in software development.
Related
CISA and Partners Guidance for Memory Safety in Critical Open Source Projects
CISA, FBI, and Australian Cyber Security Centre collaborate on memory safety guidance for open source projects. Emphasizes risk understanding, roadmap creation, and collaboration with the open source community for enhanced cybersecurity.
New Features in C++26
The ISO released new C++ standards on a three-year cycle, with C++26 proposals open until January 2025. Updates include hazard pointers, user-space RCU support, debugging headers, and template enhancements for improved functionality.
Cppfront: Midsummer Update
Herb Sutter updated on cppfront, an experimental C++ project enhancing safety and simplicity. Recent releases include new syntax features and improvements, with plans for regular updates and community involvement.
Safer C++
Alex Gaynor advocates transitioning from C/C++ to memory-safe languages in security-critical contexts, proposing improvements in C++ safety through bounds checking, smart pointers, and a dual strategy for teams.
Safer C++
Alex Gaynor advocates transitioning from C/C++ to memory-safe languages in security-critical contexts, proposing improvements in C++ safety while acknowledging challenges and recommending a dual strategy for enhancement and migration.
Many other "safe" C++ extensions just add basic bounds checking, and end at "we have smart pointers, what else do you want!?!??!?"
auto get_x/(a, b)(const int^/a x, const int^/b y) -> const int^/a {
return x;
}
I like the new `choice` type. It looks like a c++ flavored rust enum. template<class T+, class E+>
choice expected {
[[safety::unwrap]] ok(T),
err(E);
T unwrap(self) noexcept safe {
return match(self) -> T {
.ok(t) => rel t;
.err(e) => panic("{} is err".format(expected~string));
};
}
};
Perhaps LLVM supporting improved memory safety (e.g. for Swift) is helpful as well.
Related
CISA and Partners Guidance for Memory Safety in Critical Open Source Projects
CISA, FBI, and Australian Cyber Security Centre collaborate on memory safety guidance for open source projects. Emphasizes risk understanding, roadmap creation, and collaboration with the open source community for enhanced cybersecurity.
New Features in C++26
The ISO released new C++ standards on a three-year cycle, with C++26 proposals open until January 2025. Updates include hazard pointers, user-space RCU support, debugging headers, and template enhancements for improved functionality.
Cppfront: Midsummer Update
Herb Sutter updated on cppfront, an experimental C++ project enhancing safety and simplicity. Recent releases include new syntax features and improvements, with plans for regular updates and community involvement.
Safer C++
Alex Gaynor advocates transitioning from C/C++ to memory-safe languages in security-critical contexts, proposing improvements in C++ safety through bounds checking, smart pointers, and a dual strategy for teams.
Safer C++
Alex Gaynor advocates transitioning from C/C++ to memory-safe languages in security-critical contexts, proposing improvements in C++ safety while acknowledging challenges and recommending a dual strategy for enhancement and migration.