Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Closed
wants to merge 1 commit into from

Conversation

lembacon
Copy link

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.

`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
Copy link
Member

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
Copy link
Member

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
Copy link

osimola commented Oct 25, 2019

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
Copy link

osimola commented Oct 25, 2019

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants