vc6 linker workarounds

[SVN r21896]
This commit is contained in:
Dave Abrahams
2004-01-24 18:28:48 +00:00
parent 010f715950
commit 5f870d780d
2 changed files with 27 additions and 19 deletions

View File

@ -77,6 +77,7 @@ int main()
boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::SinglePassIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::SinglePassIteratorConcept<Iter> >();
} }
#if !BOOST_WORKAROUND(BOOST_MSVC, == 1200) // Causes Internal Error in linker.
{ {
typedef boost::iterator_archetype< typedef boost::iterator_archetype<
dummyT dummyT
@ -84,12 +85,14 @@ int main()
, boost::single_pass_traversal_tag , boost::single_pass_traversal_tag
> BaseIter; > BaseIter;
typedef boost::filter_iterator<one_or_four, BaseIter> Iter; typedef boost::filter_iterator<one_or_four, BaseIter> Iter;
boost::function_requires< boost::InputIteratorConcept<Iter> >(); boost::function_requires< boost::InputIteratorConcept<Iter> >();
boost::function_requires< boost::OutputIteratorConcept<Iter, dummyT> >(); boost::function_requires< boost::OutputIteratorConcept<Iter, dummyT> >();
boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::WritableIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::WritableIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::SinglePassIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::SinglePassIteratorConcept<Iter> >();
} }
#endif
{ {
typedef boost::iterator_archetype< typedef boost::iterator_archetype<
const dummyT const dummyT
@ -101,6 +104,8 @@ int main()
boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::ReadableIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::ForwardTraversalConcept<Iter> >(); boost::function_requires< boost_concepts::ForwardTraversalConcept<Iter> >();
} }
#if !BOOST_WORKAROUND(BOOST_MSVC, == 1200) // Causes Internal Error in linker.
{ {
typedef boost::iterator_archetype< typedef boost::iterator_archetype<
dummyT dummyT
@ -134,6 +139,7 @@ int main()
boost::function_requires< boost_concepts::WritableLvalueIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::WritableLvalueIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::ForwardTraversalConcept<Iter> >(); boost::function_requires< boost_concepts::ForwardTraversalConcept<Iter> >();
} }
#endif
// Run-time tests // Run-time tests

View File

@ -66,6 +66,7 @@ int main()
boost::function_requires< boost_concepts::BidirectionalTraversalConcept<Iter> >(); boost::function_requires< boost_concepts::BidirectionalTraversalConcept<Iter> >();
} }
#endif #endif
#if !BOOST_WORKAROUND(BOOST_MSVC, == 1200) // Causes Internal Error in linker.
{ {
typedef boost::iterator_archetype< typedef boost::iterator_archetype<
dummyT dummyT
@ -100,6 +101,7 @@ int main()
boost::function_requires< boost_concepts::WritableLvalueIteratorConcept<Iter> >(); boost::function_requires< boost_concepts::WritableLvalueIteratorConcept<Iter> >();
boost::function_requires< boost_concepts::BidirectionalTraversalConcept<Iter> >(); boost::function_requires< boost_concepts::BidirectionalTraversalConcept<Iter> >();
} }
#endif
// Test reverse_iterator // Test reverse_iterator
{ {