I’ve always found C++'s “trend” of handling normal or non-exceptional system errors with exceptions lackluster (and I’m being charitable). Overall trimming things down to (basically) passing around a couple integers and telling the user to check their manual is much better, much less error prone, and much more efficient and deterministic.


First: it’s not new, it’s been around since C++03.
Second… it’s not even that great. It’s more characters to type and you have to deal with
stds and colons.(void)is a classic and works everywhere.But hey, at least it’s not
static_cast<void>(...).