Re: [Boost-bugs] [Boost C++ Libraries] #2037: concept_check fails with types declared in unnamed namespace

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #2037: concept_check fails with types declared in unnamed namespace
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-09-07 14:27:46


#2037: concept_check fails with types declared in unnamed namespace
------------------------------+---------------------------------------------
 Reporter: Stephan | Owner: jsiek
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: concept_check
  Version: Boost 1.40.0 | Severity: Problem
 Keywords: |
------------------------------+---------------------------------------------
Changes (by himmes@…):

  * version: Boost 1.35.0 => Boost 1.40.0
  * milestone: Boost 1.36.0 => To Be Determined

Comment:

 Just got this error when using a boost::circular_buffer<unsigned char>.

 With gcc: gcc version 4.2.1 (Apple Inc. build 5646)


 {{{
 /Users/roman/dev/libs/boost_1_40_0/boost/concept_check.hpp: At global
 scope:
 /Users/roman/dev/libs/boost_1_40_0/boost/concept_check.hpp: In
 instantiation of
 â€˜boost::SGIAssignable<cryptotec::sam::audio::<unnamed>::Storage<320> >’:
 /Users/roman/dev/libs/boost_1_40_0/boost/concept_check.hpp:180:
 instantiated from
 â€˜boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
>’
 /Users/roman/dev/libs/boost_1_40_0/boost/concept/detail/has_constraints.hpp:40:
 instantiated from ‘const bool
 boost::concept::not_satisfied<boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
> >::value’
 /Users/roman/dev/libs/boost_1_40_0/boost/concept/detail/has_constraints.hpp:43:
 instantiated from
 â€˜boost::concept::not_satisfied<boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
> >’
 /Users/roman/dev/libs/boost_1_40_0/boost/mpl/if.hpp:67: instantiated
 from
 â€˜boost::mpl::if_<boost::concept::not_satisfied<boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
> >,
 boost::concept::constraint<boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
> >,
 boost::concept::requirement<boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
> > >’
 /Users/roman/dev/libs/boost_1_40_0/boost/concept/detail/general.hpp:19:
 instantiated from ‘boost::concept::requirement_<void
 (*)(boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
>)>’
 /Users/roman/dev/libs/boost_1_40_0/boost/circular_buffer/base.hpp:72:
 instantiated from
 â€˜boost::circular_buffer<cryptotec::sam::audio::<unnamed>::Storage<320>,
 std::allocator<cryptotec::sam::audio::<unnamed>::Storage<320> > >’
 audioio/duplex_audio.cpp:321: instantiated from here
 /Users/roman/dev/libs/boost_1_40_0/boost/concept_check.hpp:182: error:
 â€˜boost::concept::requirement<Model>::failed [with Model =
 boost::concept::usage_requirements<boost::SGIAssignable<cryptotec::sam::audio::<unnamed>::Storage<320>
> >]’ is not a valid template argument for type ‘void (*)()’ because
 function ‘static void boost::concept::requirement<Model>::failed() [with
 Model =
 boost::concept::usage_requirements<boost::SGIAssignable<cryptotec::sam::audio::<unnamed>::Storage<320>
> >]’ has not external linkage
 /Users/roman/dev/libs/boost_1_40_0/boost/circular_buffer/base.hpp: In
 instantiation of
 â€˜boost::circular_buffer<cryptotec::sam::audio::<unnamed>::Storage<320>,
 std::allocator<cryptotec::sam::audio::<unnamed>::Storage<320> > >’:
 audioio/duplex_audio.cpp:321: instantiated from here
 /Users/roman/dev/libs/boost_1_40_0/boost/circular_buffer/base.hpp:72:
 error: ‘boost::concept::requirement<Model>::failed [with Model =
 boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
>]’ is not a valid template argument for type ‘void (*)()’ because
 function ‘static void boost::concept::requirement<Model>::failed() [with
 Model =
 boost::SGIAssignableConcept<cryptotec::sam::audio::<unnamed>::Storage<320>
>]’ has not external linkage
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/2037#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-02-16 18:50:01 UTC