[Boost-bugs] [ boost-Bugs-1509662 ] GCC 3.4.x vs. BCCL classes derived from other BCCL classes

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@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/boost-bugs
participants (1)
-
SourceForge.net