Greetings, I dug a little bit further: Dumping the whole preprocessor showed that this header
https://github.com/boostorg/statechart/blob/586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7/include/boost/statechart/detail/memory.hpp [https://opengraph.githubassets.com/9d35b6dae7d7fc9fc5e1a7e0567ea104b695c6a2ac9e49279b367265f22a0b32/boostorg/statechart]<https://github.com/boostorg/statechart/blob/586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7/include/boost/statechart/detail/memory.hpp> statechart/include/boost/statechart/detail/memory.hpp at 586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7 · boostorg/statechart<https://github.com/boostorg/statechart/blob/586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7/include/boost/statechart/detail/memory.hpp> Boost.org statechart module. Contribute to boostorg/statechart development by creating an account on GitHub. github.com that defines statechart::null was included after fifo_worker.hpp for some reason which did not see the null. Including memory.hpp before fifo_worker.hpp did solve the problem for the moment. [https://opengraph.githubassets.com/9d35b6dae7d7fc9fc5e1a7e0567ea104b695c6a2ac9e49279b367265f22a0b32/boostorg/statechart]<https://github.com/boostorg/statechart/blob/586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7/include/boost/statechart/detail/memory.hpp> statechart/include/boost/statechart/detail/memory.hpp at 586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7 · boostorg/statechart<https://github.com/boostorg/statechart/blob/586445b824c5cf0e7e6ce4ff2df620fda5d0f0d7/include/boost/statechart/detail/memory.hpp> Boost.org statechart module. Contribute to boostorg/statechart development by creating an account on GitHub. github.com ________________________________ From: Boost-users <boost-users-boun...@lists.boost.org> on behalf of Robert Jones via Boost-users <boost-users@lists.boost.org> Sent: Friday, July 5, 2024 3:24 PM To: boost-users@lists.boost.org <boost-users@lists.boost.org> Cc: Robert Jones <robertgbjo...@gmail.com> Subject: Re: [Boost-users] error: template argument for template type parameter must be a type template< class Allocator = std::allocator< none > > On Fri, 5 Jul 2024 at 15:48, Phil Phil via Boost-users <boost-users@lists.boost.org<mailto:boost-users@lists.boost.org>> wrote: I try to port a c++ project to a new environment with clang++-17, libcxx 17 and std=c++17 for x64 Linux. Also, I switched form boost 1.65 to 1.84. Now I start getting errors in boost itself: /workspace/usr/include/boost/statechart/fifo_worker.hpp:55:45: error: template argument for template type parameter must be a type 55 | template< class Allocator = std::allocator< none > > I'm not sure if this answers your issue, but from §12.3.4 (p197) of C++ Templates<https://www.amazon.co.uk/Templates-Complete-Guide-David-Vandevoorde/dp/0321714121/ref=sr_1_1?crid=1SNPB9AQYKH7U&dib=eyJ2IjoiMSJ9.b0YMM1EtQwSigfaRYI6qiFrhXcDLFPGBOmBMQHDFPla2BvLWwCfWPBW0N6KeBwdupdfKDTYnGanIFme0azAt_QwDrPREL7tv3tPhs9z5ObvZ6kEpj9NRTPz1JOZYsrexKH0Fe_oOcoFIFNQtsiaJuT831tbIkY5n7SMEj-mNhhH-DlkR3EogCv4DjhARxByEAXE0OowZbvC2WiKPbvnnZ7PtWKzuRX7c3CampkYGHlo.SMnSkcLgYS4TkN1uSxVXGy2ACu9xaT-LcNLkg6fK5yo&dib_tag=se&keywords=templates+c%2B%2B&qid=1720192741&sprefix=templates+c%2B%2B%2Caps%2C89&sr=8-1>, Prior to C++17, default template template arguments of a template template argument were ignored (but if the template template parameter has default arguments, they are considered during the instantiation of the template). HTHs, Rob
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org https://lists.boost.org/mailman/listinfo.cgi/boost-users