mateidavid/zstr

-Wdefaulted-function-deleted warning on Clang 8

smeenai opened this issue · 0 comments

The istreambuf and ostreambuf classes are given defaulted move constructors and assignment operators. However, they both inherit from std::streambuf, which is not move constructible (see https://cplusplus.github.io/LWG/issue911 for some discussion), so the default declarations don't actually accomplish anything. Clang 8 flags this via the -Wdefaulted-function-deleted warning (which is turned into an error by -Werror).

One fix would be to remove the default declarations, since they don't accomplish anything (and I can put up a PR for this if it's deemed acceptable). Another would be to add proper move constructors and assignment operators, but that's beyond the scope of my current familiarity with the library.