../src/agge/parallel.cpp:21:68: error: arithmetic on a pointer to an incomplete type 'agge::parallel::thread'
../src/agge/parallel.cpp:22:12: error: allocation of incomplete type 'agge::parallel::thread'
../src/agge/parallel.cpp:39:11: error: subscript of pointer to incomplete type 'agge::parallel::thread'
../src/agge/parallel.cpp:40:11: error: subscript of pointer to incomplete type 'agge::parallel::thread'
../src/agge/parallel.cpp:44:11: error: subscript of pointer to incomplete type 'agge::parallel::thread'
../src/agge/parallel.cpp:52:11: error: subscript of pointer to incomplete type 'agge::parallel::thread'
../agge/memory.h:33:11: error: invalid application of 'sizeof' to an incomplete type 'agge::parallel::thread'
../agge.text/font.h:51:16: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
../agge.text/font.h:48:47: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
../agge.text/font.h:51:16: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
../agge.text/font.h:48:47: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
../agge.text/font.h:51:16: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
../agge.text/font.h:48:47: error: implicit instantiation of undefined template 'std::__1::basic_string<wchar_t, std::__1::char_traits<wchar_t>, std::__1::allocator<wchar_t> >'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1991:29: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1996:23: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:2003:16: error: static_cast from 'pointer' (aka 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *> *') to '__next_pointer' (aka 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font> >, void *> *> *'), which are not related by inheritance, is not allowed
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1991:29: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1996:23: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:2003:16: error: static_cast from 'pointer' (aka 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *> *') to '__next_pointer' (aka 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::weak_ptr<agge::font::accessor> >, void *> *> *'), which are not related by inheritance, is not allowed
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1991:29: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:1996:23: error: cannot initialize object parameter of type 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *> *>' with an expression of type 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *>'
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/__hash_table:2003:16: error: static_cast from 'pointer' (aka 'std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *> *') to '__next_pointer' (aka 'std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<agge::font::key, std::__1::pair<agge::font *, unsigned int> >, void *> *> *'), which are not related by inheritance, is not allowed
This is using a fairly up to date clang
-suite on MacOS. Might I suggest adding the -Wall -Wextra -Werror
and -std=c++11
(or appropriate standard) flags in your CMakeLists.txt for applicable platforms? It'll help the robustnest of the code.