Bug 1262444 - FTBFS: ./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-expression before '(' token
FTBFS: ./boost/test/impl/execution_monitor.ipp:1383:7: error: expected id-exp...
Product: Fedora
Classification: Fedora
Component: boost (Show other bugs)
ppc64le Linux
medium Severity high
: ---
: ---
Assigned To: Jonathan Wakely
Fedora Extras Quality Assurance
Depends On:
Blocks: PPCTracker
  Show dependency treegraph
Reported: 2015-09-11 13:08 EDT by Karsten Hopp
Modified: 2015-09-14 13:39 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2015-09-14 13:39:27 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Karsten Hopp 2015-09-11 13:08:22 EDT
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
./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

Version-Release number of selected component (if applicable):

How reproducible:

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

Actual results:

Expected results:

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

I'll prepare a patch.
Comment 2 Jonathan Wakely 2015-09-14 09:06:33 EDT
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 13:39:27 EDT
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.