>For my money, closures, pattern matching, and templates (not any implementation in particular) are easy enough to reason about and much better than the corresponding bugs they address
Then write C++ only using closures, pattern matching and templates outside of the C feature set.