|
|
@@ -29,4 +29,28 @@
|
|
|
</note>
|
|
|
</mark>
|
|
|
|
|
|
+ <mark library="iterator" test="interoperable_fail" toolset="*">
|
|
|
+ <note author="D. Abrahams">
|
|
|
+ This failure is caused by a compiler bug. Templated operators
|
|
|
+ which combine different iterators built with iterator_facade or
|
|
|
+ iterator_adaptor be present in an overload set even when those
|
|
|
+ iterators are not interoperable. The usual result is that error
|
|
|
+ messages generated by illegal use of these operators will be of
|
|
|
+ lower quality.
|
|
|
+ </note>
|
|
|
+ </mark>
|
|
|
+
|
|
|
+ <mark library="iterator" test="is_convertible_fail" toolset="*">
|
|
|
+ <note author="D. Abrahams">
|
|
|
+ This failure is caused by a compiler bug.
|
|
|
+ <code>is_convertible<T,U>::value</code> may be true for unrelated
|
|
|
+ iterators <code>T</code> and <code>U</code>
|
|
|
+ (including many of the Boost specialized adaptors) which use
|
|
|
+ <code>enable_if_convertible</code> to restrict the applicability
|
|
|
+ of converting constructors, even when <code>T</code> is not
|
|
|
+ convertible to <code>U</code> because instantiating the
|
|
|
+ conversion will cause a compilation failure.
|
|
|
+ </note>
|
|
|
+ </mark>
|
|
|
+
|
|
|
</explicit-failures-markup>
|