hfst / hfst-ospell

HFST spell checker library and command line tool
Apache License 2.0
13 stars 9 forks source link

C++14 (C++1y) should be the highest supported standard. #41

Closed lembacon closed 5 years ago

lembacon commented 6 years ago

hfst-ospell currently requires libxml++2, libxml++2 uses std::auto_ptr which was deprecated since C++11 and has been removed as of C++17.

TinoDidriksen commented 5 years ago

Not necessary. You can build hfst-ospell without any XML library support using --without-libxmlpp --without-tinyxml2, in which case it falls back to bare minimum string parsing of the required fields.

TinoDidriksen commented 4 years ago

Bitrot is a very real reason to always use newest available version. If it suddenly stops building with a newer standard, the code must be fixed for when that standard becomes default. It keeps the code maximally portable.

Also, newer distros use newer C++ standards throughout their packages, which affects the ABI. If hfst-ospell can't build with newer standards, it can't be used as a library against newer ABIs.

Bitrot, ABI issues, deprecations, and more, get caught this way. It yields better code in the long run. All projects should test against multiple configurations.

osimola commented 4 years ago

Are you serious? Bitrot is the exact reason hfstospell can't be even built with standards-compliant compiler without patching build rules or disabling functionality.

osimola commented 4 years ago

I'd also like to see any sources for the idea that ABI would change for same compiler between language versions.