[optional] regression failures on Linux teeks

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

[optional] regression failures on Linux teeks

Boost - Dev mailing list
Hello all,

I see the following Boost.Option regression test failures on develop branch:
http://www.boost.org/development/tests/develop/developer/optional.html

=== error 1 ===

Test output: teeks99-02-dc3.7-14-Docker-64on64 - optional -
optional_test_conversions_from_U / clang-gnu-linux-3.7~c++14
Rev 05c2033df7b99d19f4939bf81ca2aeeec592993d / Fri, 03 Nov 2017 00:24:42 +0000
Compile [2017-11-03 01:39:15 UTC]: fail

  "clang++-3.7" -c -x c++ -Wno-c99-extensions -std=c++14 -O0 -g
-fno-inline -Wall -g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
"/var/boost/run/results/boost/bin.v2/libs/optional/test/optional_test_conversions_from_U.test/clang-gnu-linux-3.7~c++14/debug/threadapi-pthread/optional_test_conversions_from_U.o"
"../libs/optional/test/optional_test_conversions_from_U.cpp"

In file included from
../libs/optional/test/optional_test_conversions_from_U.cpp:12:
In file included from ../boost/optional/optional.hpp:64:
../boost/optional/detail/optional_config.hpp:152:48: error: expected
value in expression
#  if BOOST_WORKAROUND(BOOST_GCC, >= 50000) &&
                                               ^
1 error generated.

=== error 2 ===

Test output: teeks99-02-dc5-1z-lc-Docker-64on64 - optional -
optional_test_conversions_from_U / clang-gnu-linux-5.0~c++1z~lc
Rev 420dd51fb237f5e75cae0aeb01ec427717e4a748 / Sat, 04 Nov 2017 15:00:43 +0000
Compile [2017-11-04 15:49:56 UTC]: fail

  "clang++-5.0" -c -x c++ -Wno-c99-extensions -std=c++1z
-stdlib=libc++ -isystem/usr/include/libcxxabi -O0 -g -fno-inline -Wall
-g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
"/var/boost/run/results/boost/bin.v2/libs/optional/test/optional_test_conversions_from_U.test/clang-gnu-linux-5.0~c++1z~lc/debug/threadapi-pthread/optional_test_conversions_from_U.o"
"../libs/optional/test/optional_test_conversions_from_U.cpp"

In file included from
../libs/optional/test/optional_test_conversions_from_U.cpp:18:
In file included from ../boost/core/lightweight_test.hpp:25:
In file included from /usr/include/c++/v1/iostream:38:
In file included from /usr/include/c++/v1/ios:216:
In file included from /usr/include/c++/v1/__locale:15:
/usr/include/c++/v1/string:1942:14: error: expected ';' at end of declaration
    _NOEXCEPT
             ^
/usr/include/c++/v1/string:1947:9: error: expected unqualified-id
        _NOEXCEPT
        ^
/usr/include/c++/v1/__config:368:21: note: expanded from macro '_NOEXCEPT'
#  define _NOEXCEPT noexcept
                    ^
2 errors generated.

===

The first error only shows on develop, the second error shows up on
both develop and master regression tests.

Do you know what the issue is on this toolset/platform?

I am asking because Boost.Contract uses Boost.Option so it is showing
the same failures.

Thank you.
--Lorenzo

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
Hi Lorenzo,
Issue 1 is a bug in the implementation of Optional that I introduced a
couple of days ago. This has been now reverted, but we will still see the
error reports for the next couple of days in the test matrix.
Issue 2 seems to be the communication problem between the compiler and the
standard library, but I do not know anything specific.

Regards,
&rzej;

2017-11-05 2:02 GMT+01:00 Lorenzo Caminiti via Boost <[hidden email]>
:

> Hello all,
>
> I see the following Boost.Option regression test failures on develop
> branch:
> http://www.boost.org/development/tests/develop/developer/optional.html
>
> === error 1 ===
>
> Test output: teeks99-02-dc3.7-14-Docker-64on64 - optional -
> optional_test_conversions_from_U / clang-gnu-linux-3.7~c++14
> Rev 05c2033df7b99d19f4939bf81ca2aeeec592993d / Fri, 03 Nov 2017 00:24:42
> +0000
> Compile [2017-11-03 01:39:15 UTC]: fail
>
>   "clang++-3.7" -c -x c++ -Wno-c99-extensions -std=c++14 -O0 -g
> -fno-inline -Wall -g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
> "/var/boost/run/results/boost/bin.v2/libs/optional/test/
> optional_test_conversions_from_U.test/clang-gnu-linux-3.
> 7~c++14/debug/threadapi-pthread/optional_test_conversions_from_U.o"
> "../libs/optional/test/optional_test_conversions_from_U.cpp"
>
> In file included from
> ../libs/optional/test/optional_test_conversions_from_U.cpp:12:
> In file included from ../boost/optional/optional.hpp:64:
> ../boost/optional/detail/optional_config.hpp:152:48: error: expected
> value in expression
> #  if BOOST_WORKAROUND(BOOST_GCC, >= 50000) &&
>                                                ^
> 1 error generated.
>
> === error 2 ===
>
> Test output: teeks99-02-dc5-1z-lc-Docker-64on64 - optional -
> optional_test_conversions_from_U / clang-gnu-linux-5.0~c++1z~lc
> Rev 420dd51fb237f5e75cae0aeb01ec427717e4a748 / Sat, 04 Nov 2017 15:00:43
> +0000
> Compile [2017-11-04 15:49:56 UTC]: fail
>
>   "clang++-5.0" -c -x c++ -Wno-c99-extensions -std=c++1z
> -stdlib=libc++ -isystem/usr/include/libcxxabi -O0 -g -fno-inline -Wall
> -g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
> "/var/boost/run/results/boost/bin.v2/libs/optional/test/
> optional_test_conversions_from_U.test/clang-gnu-linux-5.
> 0~c++1z~lc/debug/threadapi-pthread/optional_test_conversions_from_U.o"
> "../libs/optional/test/optional_test_conversions_from_U.cpp"
>
> In file included from
> ../libs/optional/test/optional_test_conversions_from_U.cpp:18:
> In file included from ../boost/core/lightweight_test.hpp:25:
> In file included from /usr/include/c++/v1/iostream:38:
> In file included from /usr/include/c++/v1/ios:216:
> In file included from /usr/include/c++/v1/__locale:15:
> /usr/include/c++/v1/string:1942:14: error: expected ';' at end of
> declaration
>     _NOEXCEPT
>              ^
> /usr/include/c++/v1/string:1947:9: error: expected unqualified-id
>         _NOEXCEPT
>         ^
> /usr/include/c++/v1/__config:368:21: note: expanded from macro '_NOEXCEPT'
> #  define _NOEXCEPT noexcept
>                     ^
> 2 errors generated.
>
> ===
>
> The first error only shows on develop, the second error shows up on
> both develop and master regression tests.
>
> Do you know what the issue is on this toolset/platform?
>
> I am asking because Boost.Contract uses Boost.Option so it is showing
> the same failures.
>
> Thank you.
> --Lorenzo
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/
> mailman/listinfo.cgi/boost
>

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On Sat, Nov 4, 2017 at 8:02 PM, Lorenzo Caminiti via Boost <
[hidden email]> wrote:

> Hello all,
>
> I see the following Boost.Option regression test failures on develop
> branch:
> http://www.boost.org/development/tests/develop/developer/optional.html
>
> === error 1 ===
>
> Test output: teeks99-02-dc3.7-14-Docker-64on64 - optional -
> optional_test_conversions_from_U / clang-gnu-linux-3.7~c++14
> Rev 05c2033df7b99d19f4939bf81ca2aeeec592993d / Fri, 03 Nov 2017 00:24:42
> +0000
> Compile [2017-11-03 01:39:15 UTC]: fail
>
>   "clang++-3.7" -c -x c++ -Wno-c99-extensions -std=c++14 -O0 -g
> -fno-inline -Wall -g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
> "/var/boost/run/results/boost/bin.v2/libs/optional/test/
> optional_test_conversions_from_U.test/clang-gnu-linux-3.
> 7~c++14/debug/threadapi-pthread/optional_test_conversions_from_U.o"
> "../libs/optional/test/optional_test_conversions_from_U.cpp"
>
> In file included from
> ../libs/optional/test/optional_test_conversions_from_U.cpp:12:
> In file included from ../boost/optional/optional.hpp:64:
> ../boost/optional/detail/optional_config.hpp:152:48: error: expected
> value in expression
> #  if BOOST_WORKAROUND(BOOST_GCC, >= 50000) &&
>                                                ^
> 1 error generated.
>
> === error 2 ===
>
> Test output: teeks99-02-dc5-1z-lc-Docker-64on64 - optional -
> optional_test_conversions_from_U / clang-gnu-linux-5.0~c++1z~lc
> Rev 420dd51fb237f5e75cae0aeb01ec427717e4a748 / Sat, 04 Nov 2017 15:00:43
> +0000
> Compile [2017-11-04 15:49:56 UTC]: fail
>
>   "clang++-5.0" -c -x c++ -Wno-c99-extensions -std=c++1z
> -stdlib=libc++ -isystem/usr/include/libcxxabi -O0 -g -fno-inline -Wall
> -g -fPIC -m64  -DBOOST_ALL_NO_LIB=1 -I".." -o
> "/var/boost/run/results/boost/bin.v2/libs/optional/test/
> optional_test_conversions_from_U.test/clang-gnu-linux-5.
> 0~c++1z~lc/debug/threadapi-pthread/optional_test_conversions_from_U.o"
> "../libs/optional/test/optional_test_conversions_from_U.cpp"
>
> In file included from
> ../libs/optional/test/optional_test_conversions_from_U.cpp:18:
> In file included from ../boost/core/lightweight_test.hpp:25:
> In file included from /usr/include/c++/v1/iostream:38:
> In file included from /usr/include/c++/v1/ios:216:
> In file included from /usr/include/c++/v1/__locale:15:
> /usr/include/c++/v1/string:1942:14: error: expected ';' at end of
> declaration
>     _NOEXCEPT
>              ^
> /usr/include/c++/v1/string:1947:9: error: expected unqualified-id
>         _NOEXCEPT
>         ^
> /usr/include/c++/v1/__config:368:21: note: expanded from macro '_NOEXCEPT'
> #  define _NOEXCEPT noexcept
>                     ^
> 2 errors generated.
>
> ===
>
> The first error only shows on develop, the second error shows up on
> both develop and master regression tests.
>
> Do you know what the issue is on this toolset/platform?
>
> I am asking because Boost.Contract uses Boost.Option so it is showing
> the same failures.
>
> Thank you.
> --Lorenzo


It seems like there are a lot of failures in
the  teeks99-02-dc5-1z-lc-Docker-64on64 (clang 5, -std=c++1z
-stdlib=libc++) that aren't in the teeks99-02-dc5-1z-Docker-64on64 (clang
5, -std=c++1z)...and that is the only config that uses libc++, so I'm
guessing it is an issue with the libc++ install on that docker image.

I'll look at it when I get a chance...if anyone else has experience setting
up libc++ on ubuntu I'd be happy to take a pull request for the docker
image or command arguments:
https://github.com/teeks99/boost-cpp-docker/tree/master/clang-5
https://github.com/teeks99/boost-build/tree/master/Regression

Tom

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 5 November 2017 at 13:10, Andrzej Krzemienski via Boost
<[hidden email]> wrote:
> Hi Lorenzo,
> Issue 1 is a bug in the implementation of Optional that I introduced a
> couple of days ago. This has been now reverted, but we will still see the
> error reports for the next couple of days in the test matrix.
> Issue 2 seems to be the communication problem between the compiler and the
> standard library, but I do not know anything specific.

FWIW I'm getting an error on the develop branch using g++ 4.4 in C++0x mode:

../../boost/optional/optional.hpp:954: error:
‘boost::optional<T>::optional(boost::optional<T>&&)’ cannot be
defaulted
../../boost/optional/optional.hpp:1031: error: ‘boost::optional<T>&
boost::optional<T>::operator=(boost::optional<T>&&)’ cannot be
defaulted

g++ 4.6 doesn't have this issue.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
2017-11-05 19:54 GMT+01:00 Daniel James via Boost <[hidden email]>:

> On 5 November 2017 at 13:10, Andrzej Krzemienski via Boost
> <[hidden email]> wrote:
> > Hi Lorenzo,
> > Issue 1 is a bug in the implementation of Optional that I introduced a
> > couple of days ago. This has been now reverted, but we will still see the
> > error reports for the next couple of days in the test matrix.
> > Issue 2 seems to be the communication problem between the compiler and
> the
> > standard library, but I do not know anything specific.
>
> FWIW I'm getting an error on the develop branch using g++ 4.4 in C++0x
> mode:
>
> ../../boost/optional/optional.hpp:954: error:
> ‘boost::optional<T>::optional(boost::optional<T>&&)’ cannot be
> defaulted
> ../../boost/optional/optional.hpp:1031: error: ‘boost::optional<T>&
> boost::optional<T>::operator=(boost::optional<T>&&)’ cannot be
> defaulted
>
> g++ 4.6 doesn't have this issue


Thanks!
Apparently, this is the second compiler (in addition to MSVC 12) to expose
this property: defaulted functions work in general but not with move
operations. I will fix it, but ideally it should be fixed in Boost.Config.

Regards,
&rzej;

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
Andrzej Krzemienski wrote:

> Apparently, this is the second compiler (in addition to MSVC 12) to expose
> this property: defaulted functions work in general but not with move
> operations. I will fix it, but ideally it should be fixed in Boost.Config.

As I mentioned last time, this is because defaulted functions were added to
the standard before generated move functions (and hence, support for the
former is in gcc 4.4, the latter are in 4.6.)


_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
On 6 November 2017 at 07:54, Andrzej Krzemienski via Boost
<[hidden email]> wrote:
>
> Thanks!
> Apparently, this is the second compiler (in addition to MSVC 12) to expose
> this property: defaulted functions work in general but not with move
> operations. I will fix it, but ideally it should be fixed in Boost.Config.

Thanks for fixing it.

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Reply | Threaded
Open this post in threaded view
|

Re: [optional] regression failures on Linux teeks

Boost - Dev mailing list
In reply to this post by Boost - Dev mailing list
Hello Andrzej & all,

On Sun, Nov 5, 2017 at 5:10 AM, Andrzej Krzemienski via Boost
<[hidden email]> wrote:
> Issue 1 is a bug in the implementation of Optional that I introduced a
> couple of days ago. This has been now reverted, but we will still see the
> error reports for the next couple of days in the test matrix.
> Issue 2 seems to be the communication problem between the compiler and the
> standard library, but I do not know anything specific.

It looks like these couple of issues with Boost.Optional development
regression tests were all fixed. I don't see these errors in
Boost.Contract regression tests anymore.

Thanks a lot!
--Lorenzo

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost