|
Boost : |
From: SourceForge.net (noreply_at_[hidden])
Date: 2006-06-20 20:51:56
Bugs item #1509662, was opened at 2006-06-20 19:51
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=107586&aid=1509662&group_id=7586
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: concept_check
Group: None
Status: Open
Resolution: None
Priority: 5
Submitted By: Cromwell Enage (expaler)
Assigned to: Jeremy Siek (jsiek)
Summary: GCC 3.4.x vs. BCCL classes derived from other BCCL classes
Initial Comment:
With the current CVS snapshot, GCC 3.4.x fails to
compile the following code:
#include <vector>
#include <iterator>
#include <boost/concept_check.hpp>
int main()
{
boost::function_requires<
boost::OutputIterator<
std::back_insert_iterator<
std::vector<int>
>
, int
>
>();
return 0;
}
The error trace is:
boost/concept_check.hpp: In instantiation of
`boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int>':
boost/concept/detail/has_constraints.hpp:32:
instantiated from
`boost::concept::not_satisfied<boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int> >'
boost/mpl/if.hpp:67: instantiated from
`boost::mpl::if_<boost::concept::not_satisfied<boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int> >,
boost::concept::constraint<boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int> >,
boost::concept::requirement<boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int> > >'
boost/concept/detail/general.hpp:47: instantiated
from `boost::concept::requirement_<void
(*)(boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int>)>'
boost/concept_check.hpp:41: instantiated from
`void boost::function_requires(Model*) [with Model =
boost::OutputIterator<std::back_insert_iterator<std::vector<int,
std::allocator<int> > >, int>]'
boost_concept_check.cpp:7: instantiated from here
boost/concept_check.hpp:462: error: base
`boost::Assignable<std::back_insert_iterator<std::vector<int,
std::allocator<int> > > >' with only non-default
constructor in class without a constructor
The fix is located in
<boost/concept/detail/concept_def.hpp>, but is not
applied universally in <boost/concept_check.hpp>. The
following patch corrects this deficiency, so the
program now compiles.
Cromwell D. Enage
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=107586&aid=1509662&group_id=7586
_______________________________________________
Boost-bugs mailing list
Boost-bugs_at_[hidden]
https://lists.sourceforge.net/lists/listinfo/boost-bugs
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk