[Bug libstdc++/66145] [5/6/7 Regression] std::ios_base::failure objects thrown from libstdc++.so use old ABI
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66145 --- Comment #19 from Victor Mataré --- > I'm not suggesting anything radical or novel, just the standard way to use > iostreams. I'd call that "the legacy way" or the "C-like pattern". Call it "predominant" or "established" if you wish. But The Standard also defines an intuitive, modern, exception-driven error handling, and I (probably along with every other developer who dislikes leaky abstractions) really don't see why I shouldn't be using it. Obviously the transition issues after the inheritance change were foreseeable, so I'd expect the C++11 standard or any accompanying document to mention it. Or does the standardization and the resulting guidance deliberately exclude deployment issues such as this? Maybe anyone with more insight into the standardization process knows anything about this?
[Bug libstdc++/66145] [5/6/7 Regression] std::ios_base::failure objects thrown from libstdc++.so use old ABI
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66145 --- Comment #20 from Victor Mataré --- (In reply to Victor Mataré from comment #19) > > I'm not suggesting anything radical or novel, just the standard way to use > > iostreams. > [...] > Maybe anyone with more insight into the standardization process knows > anything about this? Addendum: Maybe one (probably not the best) solution could be to let the linker throw a warning or an error, and to let the distributors sort it out. Btw, if this triggers a bug somewhere in a larger, existing codebase, it might be hard to track down for developers, so I think we should at least have a warning kinda soonish.