There are many problems with C++ and the embedded community which mean they don't get along so well. Here are some resources that might help explain the problems and their solutions.
- 🎥 C++Now 2018: Michael Caisse “Modern C++ in Embedded Systems”
- 🎥 CppCon 2016: Dan Saks “
extern c: Talking to C Programmers about C++” - Really great talk about embedded mindset - 🎥 ACCU2018: Valentin Galea The Badlands of C++: Professional Game Development - Game developers feel your pain!
- NDC2018: Bjarne Stroustrup What can C++ do for embedded systems developers? What could it do better? - Problem? What Problem!?
- 🌏 SG14 forum - the hub for SG14 organization and discussion
- 💻 GitHub repo - a fairly random assortment of code projects
- 🌏 Krister Walfridsson’s blog - this guy isn't embedded but he knows about porting GCC to new platforms
- 🎪 emBO++ in Bochum, Germany
- 🎪 Meeting Embedded in Berlin, Germany
- 📰 P0829 Freestanding proposal - fix the existing subset of C++ aimed at OS-less platforms
- 📰 P1105 Leaving no room for a lower-level language: A C++ Subset - make non-zero-overhead C++ featues optional at compile time
- 📰 P0709 Zero-overhead deterministic exceptions: Throwing values - fix exceptions at the language level
- 📰 P1026 A call for a Data Persistence (iostream v2) study group - support memory that isn't lost when a system is switched off
- 📰 P1031 Low level file i/o library - support raw-metal access to file systems as provided by UNIX, Microsoft etc.
- 📰 P0762 Concerns about
expected<T, E>from the Boost.Outcome peer review - 📰 P0824 Summary of SG14 discussion on <system_error>: towards exception-less error handling
- 📰 P1028 SG14 status_code and standard error object for P0709 Zero-overhead deterministic exceptions
- 📰 P0784 Standard containers and
constexpr- compile-time heap allocation and container support - 📰 P1040
std::embed- pulling in data files into the compilation process
- 📖 Practical Guide to Bare Metal C++ - Useful for learning tools but lacking in help with modern features