Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1262444 - FTBFS: ./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-expression before '(' token
Summary: FTBFS: ./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-exp...
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: boost
Version: rawhide
Hardware: ppc64le
OS: Linux
medium
high
Target Milestone: ---
Assignee: Jonathan Wakely
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: PPCTracker
TreeView+ depends on / blocked
 
Reported: 2015-09-11 17:08 UTC by Karsten Hopp
Modified: 2015-09-14 17:39 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-09-14 17:39:27 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Karsten Hopp 2015-09-11 17:08:22 UTC
Description of problem:
boost-1.59.0-3.fc24 fails to build on ppc64le (maybe on ppc64 too, but if aborted on LE first):

gcc.compile.c++ serial/boost/bin.v2/libs/test/build/gcc-5.1.1/release/debug-symbols-on/pch-off/threading-multi/execution_monitor.o
    "g++"  -g -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mcpu=power7 -mtune=power8 -fno-strict-aliasing -Wno-unused-local-typedefs -pthread -fPIC  -DBOOST_ALL_NO_LIB=1 -DBOOST_CHRONO_DYN_LINK=1 -DBOOST_SYSTEM_DYN_LINK=1 -DBOOST_SYSTEM_NO_DEPRECATED -DBOOST_TEST_DYN_LINK=1 -DBOOST_TIMER_DYN_LINK=1 -DNDEBUG  -I"." -c -o "serial/boost/bin.v2/libs/test/build/gcc-5.1.1/release/debug-symbols-on/pch-off/threading-multi/execution_monitor.o" "libs/test/src/execution_monitor.cpp"
In file included from /usr/include/fenv.h:114:0,
                 from /usr/include/c++/5.1.1/fenv.h:36,
                 from ./boost/detail/fenv.hpp:97,
                 from ./boost/test/execution_monitor.hpp:64,
                 from ./boost/test/impl/execution_monitor.ipp:31,
                 from libs/test/src/execution_monitor.cpp:16:
./boost/test/impl/execution_monitor.ipp: In function 'unsigned int boost::fpe::enable(unsigned int)':
./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-expression before '(' token
     ::feclearexcept(BOOST_FPE_ALL);
       ^
./boost/test/impl/execution_monitor.ipp: In function 'unsigned int boost::fpe::disable(unsigned int)':
./boost/test/impl/execution_monitor.ipp:1420:7: error: expected id-expression before '(' token
     ::feclearexcept(BOOST_FPE_ALL);
       ^

Version-Release number of selected component (if applicable):
boost-1.59.0-3.fc24

How reproducible:
always

Steps to Reproduce:
1.ppc-koji build --scratch f24 boost-1.59.0-3.fc24.src.rpm
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Jonathan Wakely 2015-09-12 10:14:58 UTC
It's just missing a #include <fenv.h>

I'll prepare a patch.

Comment 2 Jonathan Wakely 2015-09-14 13:06:33 UTC
The problem is not a missing include (although it should be including it anyway) but the fact that ppc64 has an optimized version of feclearexcept in <bits/fenvinline.h>, which is a macro that is not valid to use as the qualified name ::feclearexcept.

Comment 3 Jonathan Wakely 2015-09-14 17:39:27 UTC
Should be fixed in boost-1.59.0-4.fc24


Note You need to log in before you can comment on or make changes to this bug.