Boost logo

Boost :

Subject: Re: [boost] [VC++ 14.0 preview] New failures in develop regression tests
From: Antony Polukhin (antoshkka_at_[hidden])
Date: 2014-12-03 04:32:42


2014-11-17 21:15 GMT+04:00 Beman Dawes <bdawes_at_[hidden]>:
<...>
>
> Several libraries are showing new test failures. Please check out the test
> results to see if your library has started to fail. If it is your problem,
> fix it or at least create a ticket for yourself:-)
>
> If it is a Microsoft problem, consider submitting a bug report and posting
> a notice on the Boost list so that other developers are aware of the
> problem. Also post a link to the bug report on
> https://connect.microsoft.com
>

Looks like Variadic templates are still broken in VC++. Following code
works on Сlang and GCC:

template <typename... Ts, int... Is>
std::string operator()(const std::tuple<Ts...>& tup, indices<Is...>)
{
    std::ostringstream ost;
    ost << "( ";
    (void) (int []){0, (ost << printer()( std::get<Is>(tup) ), 0)... };
    ost << ") ";
    return ost.str();
}

But VC++ 14.0 gives a compilation error:

..\libs\variant\test\recursive_variant_test.cpp(88): error C2059:
syntax error: '{'

See
https://github.com/boostorg/variant/blob/develop/test/recursive_variant_test.cpp#L88
for a full test case.

Another failure is in
https://github.com/boostorg/variant/blob/develop/test/variant_reference_test.cpp

..\libs\variant\test\variant_reference_test.cpp(88): error C2784:
'boost::add_reference<T>::type wknd_get(boost::variant<T,> &,int)'

Unfortunately could not report those issues to https://connect.microsoft.com,
web site does not respond.

> At my request, Tom Kent has kindly added VC++ 14.0 (toolset msvc-14.0) to
> his develop branch tests.
>

Great thanks to both of you!

-- 
Best regards,
Antony Polukhin

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk