Subject: Re: [Boost-bugs] [Boost C++ Libraries] #12969: Problem linking print_helper_t<nullptr_t> under Clang
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2017-11-17 10:13:48
#12969: Problem linking print_helper_t<nullptr_t> under Clang
-------------------------------------+-------------------------------------
Reporter: Tony Lewis | Owner: Raffi Enficiaud
<TonyELewis@â¦> |
Type: Bugs | Status: assigned
Milestone: To Be Determined | Component: test
Version: Boost 1.64.0 | Severity: Problem
Resolution: | Keywords:
| test,link,print_helper_t,nullptr,nullptr_t,1_64_0_b2
-------------------------------------+-------------------------------------
Comment (by Tony E Lewis <TonyELewis@â¦>):
AFAUI, what's going on is:
* I'm building my code in C++14 mode, which causes the Boost Test code to
provide a specialisation of `print_log_value<>` for `nullptr_t` with a
declaration (but not definition) of its `operator()`.
* I'm linking against Boost libraries that were built without any
standard specified. In GCC 7.2.0 means ~C++14 but in Clang 4.0.1 means
~C++03. So the Clang-built library I'm linking against doesn't provide any
definition of `print_log_value<std::nullptr_t>::operator()`.
I can work around this. However it may make things a bit simpler to
either:
* provide an inline definition of
`print_log_value<std::nullptr_t>::operator()` in the `.hpp` rather than in
a separate `.ipp`, or failing that
* not specialise `print_log_value<>` for `nullptr_t` at all and leave it
for users to do themselves if they wish.
-- Ticket URL: <https://svn.boost.org/trac10/boost/ticket/12969#comment:2> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-11-17 10:20:02 UTC