[test] Compilation errors on MinGW 4.8.1
Hi, When I try to compile Boost.Test (develop) tests or any other tests using execution_monitor on MinGW-GCC 4.8.1 I get the following errors: ..\..\../boost/test/execution_monitor.hpp:364:27: error: 'FE_DIVBYZERO' was not declared in this scope BOOST_FPE_DIVBYZERO = FE_DIVBYZERO, ^ ..\..\../boost/test/execution_monitor.hpp:365:27: error: 'FE_INEXACT' was not declared in this scope BOOST_FPE_INEXACT = FE_INEXACT, ^ ..\..\../boost/test/execution_monitor.hpp:366:27: error: 'FE_INVALID' was not declared in this scope BOOST_FPE_INVALID = FE_INVALID, ^ ..\..\../boost/test/execution_monitor.hpp:367:27: error: 'FE_OVERFLOW' was not declared in this scope BOOST_FPE_OVERFLOW = FE_OVERFLOW, ^ ..\..\../boost/test/execution_monitor.hpp:368:27: error: 'FE_UNDERFLOW' was not declared in this scope BOOST_FPE_UNDERFLOW = FE_UNDERFLOW, ^ ..\..\../boost/test/execution_monitor.hpp:370:27: error: 'FE_ALL_EXCEPT' was not declared in this scope BOOST_FPE_ALL = FE_ALL_EXCEPT, ^ When I use MinGW-GCC 4.8.0 shipped with Qt5 everything is ok. I though I'll let you know since AFAIS this toolset isn't tested. If you decided to take a look at this and needed a guinea pig I'd be here. Regards, Adam
Hi Adam, Am Dienstag, 10. Juni 2014, 22:59:56 schrieb Adam Wulkiewicz:
Hi,
When I try to compile Boost.Test (develop) tests or any other tests using execution_monitor on MinGW-GCC 4.8.1 I get the following errors:
Which MinGW exactly? Things are building fine here with 4.9.0 and were compiling with 4.8.x before I upgraded to 4.9.
When I use MinGW-GCC 4.8.0 shipped with Qt5 everything is ok.
Qt ships MinGW-w64.
I though I'll let you know since AFAIS this toolset isn't tested.
No, we have http://www.boost.org/development/tests/develop/MinGW-w64-4-8 jc-bell.html which was green on all tests for Boost.Test. http://www.boost.org/development/tests/develop/developer/test.html
If you decided to take a look at this and needed a guinea pig I'd be here.
Seems something is wrong with your setup and/or MinGW-Version. Seems that at least 4.8.0 and 4.8.2 were working correct. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! * voice: ++49 4257 300 ! Fährstraße 1 * fax : ++49 4257 300 ! 31609 Balge/Sebbenhausen * jhunold@gmx.eu ! Germany
On Wednesday 11 June 2014 08:12:58 Jürgen Hunold wrote:
Hi Adam,
Am Dienstag, 10. Juni 2014, 22:59:56 schrieb Adam Wulkiewicz:
Hi,
When I try to compile Boost.Test (develop) tests or any other tests
using execution_monitor on MinGW-GCC 4.8.1 I get the following errors: Which MinGW exactly? Things are building fine here with 4.9.0 and were compiling with 4.8.x before I upgraded to 4.9.
When I use MinGW-GCC 4.8.0 shipped with Qt5 everything is ok.
Qt ships MinGW-w64.
I though I'll let you know since AFAIS this toolset isn't tested.
No, we have http://www.boost.org/development/tests/develop/MinGW-w64-4-8 jc-bell.html
which was green on all tests for Boost.Test.
http://www.boost.org/development/tests/develop/developer/test.html
If you decided to take a look at this and needed a guinea pig I'd be here.
Seems something is wrong with your setup and/or MinGW-Version. Seems that at least 4.8.0 and 4.8.2 were working correct.
There is legacy MinGW (the one that generates 32-bit binaries) and MinGW-w64. The problem is with the former one, I've seen it too. I think inclusion of fenv.h gets messed up somehow, I didn't dig much further. It's possible that it's a bug in MinGW.
Andrey Semashev wrote:
On Wednesday 11 June 2014 08:12:58 Jürgen Hunold wrote:
Hi Adam,
Am Dienstag, 10. Juni 2014, 22:59:56 schrieb Adam Wulkiewicz:
Hi,
When I try to compile Boost.Test (develop) tests or any other tests using execution_monitor on MinGW-GCC 4.8.1 I get the following errors: Which MinGW exactly? Things are building fine here with 4.9.0 and were compiling with 4.8.x before I upgraded to 4.9.
When I use MinGW-GCC 4.8.0 shipped with Qt5 everything is ok. Qt ships MinGW-w64.
I though I'll let you know since AFAIS this toolset isn't tested. No, we have http://www.boost.org/development/tests/develop/MinGW-w64-4-8 jc-bell.html
which was green on all tests for Boost.Test.
http://www.boost.org/development/tests/develop/developer/test.html
If you decided to take a look at this and needed a guinea pig I'd be here. Seems something is wrong with your setup and/or MinGW-Version. Seems that at least 4.8.0 and 4.8.2 were working correct. There is legacy MinGW (the one that generates 32-bit binaries) and MinGW-w64. The problem is with the former one, I've seen it too. I think inclusion of fenv.h gets messed up somehow, I didn't dig much further. It's possible that it's a bug in MinGW. Yes, I was talking about this one: http://www.mingw.org/
Regards, Adam
Hi Adam, Am Mittwoch, 11. Juni 2014, 11:44:12 schrieb Adam Wulkiewicz:
There is legacy MinGW (the one that generates 32-bit binaries) and MinGW-w64. The problem is with the former one, I've seen it too. I think inclusion of fenv.h gets messed up somehow, I didn't dig much further. It's possible that it's a bug in MinGW.
Yes, I was talking about this one: http://www.mingw.org/
Old mingw has too many missing features. That is the reason why Qt switched to http://mingw-w64.sourceforge.net/ as it has an almost complete header set for both 32- and 64-windows. I'm not suprised at all that Boost fails to compile on mingw, that is the reason I switched to mingw-w64 years ago. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! * voice: ++49 4257 300 ! Fährstraße 1 * fax : ++49 4257 300 ! 31609 Balge/Sebbenhausen * jhunold@gmx.eu ! Germany
On Wed, Jun 11, 2014 at 11:24 AM, Andrey Semashev
On Wednesday 11 June 2014 08:12:58 Jürgen Hunold wrote:
Hi Adam,
Am Dienstag, 10. Juni 2014, 22:59:56 schrieb Adam Wulkiewicz:
Hi,
When I try to compile Boost.Test (develop) tests or any other tests
using execution_monitor on MinGW-GCC 4.8.1 I get the following errors:
There is legacy MinGW (the one that generates 32-bit binaries) and MinGW-w64. The problem is with the former one, I've seen it too. I think inclusion of fenv.h gets messed up somehow, I didn't dig much further. It's possible that it's a bug in MinGW.
Yes, this looks like a bug in MinGW. Including
On Thu, Jun 12, 2014 at 11:08 PM, Andrey Semashev
On Wed, Jun 11, 2014 at 11:24 AM, Andrey Semashev
wrote: On Wednesday 11 June 2014 08:12:58 Jürgen Hunold wrote:
Hi Adam,
Am Dienstag, 10. Juni 2014, 22:59:56 schrieb Adam Wulkiewicz:
Hi,
When I try to compile Boost.Test (develop) tests or any other tests
using execution_monitor on MinGW-GCC 4.8.1 I get the following errors:
There is legacy MinGW (the one that generates 32-bit binaries) and MinGW-w64. The problem is with the former one, I've seen it too. I think inclusion of fenv.h gets messed up somehow, I didn't dig much further. It's possible that it's a bug in MinGW.
Yes, this looks like a bug in MinGW. Including
leads to inclusion of "C:\MinGW\lib\gcc\mingw32\4.8.1\include\c++\fenv.h" which has this code: #include
#if _GLIBCXX_HAVE_FENV_H # include_next #endif and
doesn't define _GLIBCXX_HAVE_FENV_H macro (it's commented). I defined the macro in my local c++config.h and it solved the problem. I wonder if we should try to work around it in boost/detail/fenv.hpp.
I've added a workaround for this. Let me know if it causes trouble.
participants (3)
-
Adam Wulkiewicz
-
Andrey Semashev
-
Jürgen Hunold