<?xml version="1.0" encoding="utf-8"?>
<explicit-failures-markup>
    <!-- spirit (v2) -->
    <library name="spirit">
      <mark-unusable>
        <toolset name="sun-5.7"/>
        <toolset name="sun-5.8"/>
        <toolset name="sun-5.9"/>
        <toolset name="sun-5.10"/>
        <toolset name="vacpp*"/>
        <toolset name="borland-*"/>
        <toolset name="cray-8.0"/>
        <toolset name="msvc-7.1*"/>
        <toolset name="clang-*-3.1*11*"/>
        <toolset name="gcc-mngw-gnu-4.3c+"/>
      </mark-unusable>
      <test name="karma_*" category="Karma" />
      <test name="lex_*" category="Lex" />
      <test name="qi_*" category="Qi" />
      <test name="support_*" category="Support" />
      <test name="x3_*" category="X3" />
    </library>

    <!-- spirit (v2) repository -->
    <library name="spirit/repository">
      <mark-unusable>
        <toolset name="borland-cb2009"/>
        <toolset name="borland-cb2010"/>
        <toolset name="msvc-7.1*"/>
        <toolset name="clang-*-3.1*11*"/>
        <toolset name="gcc-mngw-gnu-4.3c+"/>
      </mark-unusable>
      <test name="karma_*" category="Karma" />
      <test name="qi_*" category="Qi" />
    </library>

    <!-- spirit (classic) -->
    <library name="spirit/classic">
        <mark-unusable>
            <toolset name="msvc-6.5*"/>
            <toolset name="borland-5.5*"/>
            <toolset name="borland-5.6*"/>
            <toolset name="borland-5.8*"/>
            <toolset name="msvc-7.0"/>
            <toolset name="gcc-2.95.3-linux"/>
            <toolset name="gcc-2.95.3-stlport-4.5.3-linux"/>
            <toolset name="gcc-2.95.3-stlport-4.6.2-linux"/>
            <toolset name="sunpro-5_3-sunos"/>

            <note>
                <p>
                Historically, Spirit supported a lot of compilers, including (to some
                extent) poorly conforming compilers such as VC6. Spirit v1.6.x will be
                the last release that will support older poorly conforming compilers.
                Starting from Spirit v1.8.0, ill conforming compilers will not be
                supported. If you are still using one of these older compilers, you can
                still use Spirit v1.6.x.
                </p>
                <p>
                The reason why Spirit v1.6.x worked on old non-conforming compilers is
                that the authors laboriously took the trouble of searching for
                workarounds to make these compilers happy. The process takes a lot of
                time and energy, especially when one encounters the dreaded ICE or
                "Internal Compiler Error". Sometimes searching for a single workaround
                takes days or even weeks. Sometimes, there are no known workarounds. This
                stifles progress a lot. And, as the library gets more progressive and
                takes on more advanced C++ techniques, the difficulty is escalated to
                even new heights.
                </p>
                <p>
                Spirit v1.6.x will still be supported. Maintenance and bug fixes will
                still be applied. There will still be active development for the back-
                porting of new features introduced in Spirit v1.8.0 (and Spirit 1.9.0)
                to lesser able compilers; hopefully, fueled by contributions from the
                community. For instance, there is already a working AST tree back-port
                for VC6 and VC7 by Peder Holt.
                </p>
            </note>
        </mark-unusable>
        <mark-expected-failures>
            <test name="action_tests*"/>
            <toolset name="iw-7_1-vc6"/>
            <note author="Aleksey Gurtovoy" refid="4"/>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="ast_calc_tests*"/>
            <test name="closure_tests*"/>
            <test name="multi_pass_compile_tests"/>
            <test name="repeat_ast_tests*"/>
            <toolset name="intel-8.0-linux"/>
            <toolset name="intel-8.1-linux"/>
            <note author="Aleksey Gurtovoy">
                This failure is caused by a compiler bug that manifests itself in the
                particular environment/hardware configuration the test has been run in.
                You may or may not experience this issue in your local setup.
            </note>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="escape_char_parser_tests*"/>
            <toolset name="intel-7.1-linux"/>
            <toolset name="intel-7.1-stdlib-default-linux"/>
            <note author="Aleksey Gurtovoy" refid="19"/>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="escape_char_parser_tests*"/>
            <toolset name="iw-7_1-vc6*"/>
            <note author="Aleksey Gurtovoy" refid="28"/>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="chset_tests*"/>
            <toolset name="iw-7_1-vc6-stlp-4_5_3"/>
            <note author="Aleksey Gurtovoy" refid="28"/>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="int_numerics"/>
            <test name="karma_pattern*"/>
            <test name="karma_sequence"/>
            <test name="rule"/>
            <test name="sequence"/>
            <toolset name="acc"/>
            <note author="Boris Gubenko" refid="47"/>
        </mark-expected-failures>
        <mark-expected-failures>
            <test name="lexertl3"/>
            <test name="lexertl4"/>
            <test name="lexertl5"/>
            <toolset name="gcc-3.4.6_linux_ia64"/>
            <note author="Boris Gubenko">
                With GCC 3.4.6 the test fails with ICE: internal compiler error.
                The footprint is similar to that in GCC Bugzilla Bug 34950
                except 34950 is a regression introduced in GCC 4.2.3. In any
                case, whatever the problem is, the GCC 4.x series does not seem
                to have it: the test compiles just fine with GCC 4.x compiler.
            </note>
        </mark-expected-failures>
    </library>
</explicit-failures-markup>
