pan requires c++11 specified (on MacOS at least)
when building pan with a current clang++ compiler (on MacOS, at least) that defaults to -std=c++17, there are very many warnings of this type:
/Users/Shared/source/pan/pan/tasks/queue.h:266:77: warning: 'override' keyword is a C++11 extension [-Wc++11-extensions]
void on_set_item_moved (TaskSet&, Task*&, int index, int old_index) override;
^
/Users/Shared/source/pan/pan/tasks/queue.h:187:20: warning: 'on_pool_has_nntp_available' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
virtual void on_pool_has_nntp_available (const Quark& server);
^
/Users/Shared/source/pan/pan/tasks/nntp-pool.h:72:16: note: overridden virtual function is here
virtual void on_pool_has_nntp_available(const Quark& server) = 0;
^
In file included from /Users/Shared/source/pan/pan/gui/server-ui.cc:20:
In file included from /Users/Shared/source/pan/pan/gui/server-ui.h:26:
/Users/Shared/source/pan/pan/tasks/queue.h:188:20: warning: 'on_pool_error' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
virtual void on_pool_error (const Quark& server, const StringView& message);
and finally the build errors like this:
/Users/Shared/source/pan/pan/data-impl/headers.cc:491:38: error: expected ';' at end of declaration
Article_Count const article_qty{line};
^
;
/Users/Shared/source/pan/pan/data-impl/headers.cc:923:26: error: expected ';' at end of declaration
const Article_Count n{it->second.size()};
^
;
/Users/Shared/source/pan/pan/gui/post-ui.cc:1380:30: error: no member named 'bind' in namespace 'std'
std::bind(&PostUI::spawn_editor_dead, this, _1, _2),
~~~~~^
These warnings and these build errors stop if the standard is set to c++11, perhaps like this:
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")