hpx: Phylanx fails with latest hpx
Expected Behavior
Expect Phylanx to compile with latest HPX
Actual Behavior
Phylanx Fails compilation with the following error listed below. I can confirm that it works up to the following commit dbbb94662ba0818cc5d6120f52e4a7b330075709 ( Merge pull request #3476 from STEllAR-GROUP/hide_credentials ). It looks to me the changes that were made to CMAKE recently is causing the issue. The buildbot link for the failing build is here: http://ktau.nic.uoregon.edu:8020/#/builders/8/builds/215
[ 12%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/assert_condition.cpp.o
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/patterns.cpp: In function ‘std::__cxx11::string phylanx::execution_tree::find_help(const string&)’:
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/patterns.cpp:68:30: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
for(int i=0;i<p.size();i++) {
~^~~~~~~~~
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp: In instantiation of ‘std::vector<phylanx::ast::expression> phylanx::execution_tree::compiler::compiler::extract_lambda_arguments(const std::pair<_FIter, _FIter>&, const phylanx::ast::tagged&) [with Iterator = std::_Rb_tree_iterator<std::pair<const std::__cxx11::basic_string<char>, phylanx::ast::expression> >]’:
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp:314:62: required from here
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp:201:41: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
if (count != 0 && count != size-1 &&
~~~~~~^~~~~~~~~
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp: In instantiation of ‘std::vector<phylanx::ast::expression> phylanx::execution_tree::compiler::compiler::extract_define_arguments(const std::pair<_FIter, _FIter>&, const phylanx::ast::tagged&) [with Iterator = std::_Rb_tree_iterator<std::pair<const std::__cxx11::basic_string<char>, phylanx::ast::expression> >]’:
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp:336:62: required from here
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/compiler/compiler.cpp:160:41: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
if (count != 0 && count != size-1 &&
~~~~~~^~~~~~~~~
[ 12%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/base_primitive.cpp.o
[ 12%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/call_function.cpp.o
[ 12%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/console_output.cpp.o
In file included from /var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/ast/parser/expression.cpp:8:0:
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/phylanx/ast/parser/expression_def.hpp: In instantiation of ‘phylanx::ast::parser::expression_base<Iterator>::expression_base(phylanx::ast::parser::error_handler<Iterator>&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’:
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/phylanx/ast/parser/expression_def.hpp:26:62: required from ‘phylanx::ast::parser::expression<Iterator>::expression(phylanx::ast::parser::error_handler<Iterator>&) [with Iterator = __gnu_cxx::__normal_iterator<const char*, std::__cxx11::basic_string<char> >]’
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/ast/parser/expression.cpp:13:39: required from here
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/phylanx/ast/parser/expression_def.hpp:126:28: error: suggest parentheses around comparison in operand of ‘|’ [-Werror=parentheses]
| '(' > expr > ')'
~~~~~~~~~~~^~~~~
[ 14%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/debug_output.cpp.o
[ 14%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/define_variable.cpp.o
[ 14%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/enable_tracing.cpp.o
[ 14%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/format_string.cpp.o
[ 17%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/function.cpp.o
[ 17%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/lambda.cpp.o
[ 17%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/node_data_helpers.cpp.o
[ 17%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/primitive_component.cpp.o
[ 19%] Building CXX object src/CMakeFiles/phylanx_component.dir/execution_tree/primitives/primitive_component_base.cpp.o
cc1plus: some warnings being treated as errors
make[2]: *** [src/CMakeFiles/phylanx_component.dir/execution_tree/patterns.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
cc1plus: some warnings being treated as errors
make[2]: *** [src/CMakeFiles/phylanx_component.dir/execution_tree/compiler/compiler.cpp.o] Error 1
/var/lib/buildbot/slaves/phylanx/x86_64-gcc7-release/build/src/execution_tree/primitives/base_primitive.cpp:64:21: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
static char const* const get_primitive_argument_type_name(std::size_t index)
^~~~~
cc1plus: some warnings being treated as errors
make[2]: *** [src/CMakeFiles/phylanx_component.dir/ast/parser/expression.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/phylanx_component.dir/all] Error 2
make: *** [all] Error 2
program finished with exit code 2
elapsedTime=80.792626
Steps to Reproduce the Problem
Build Phylanx against latest hpx
Specifications
- HPX Version: Master
- Platform (compiler, OS): Ubuntu 18.04 / gcc 7.3
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 15 (15 by maintainers)
Phylanx using Blaze top of master is still failing if HPX was built using C++17 mode. This is enforced onto Phylanx (see CircleCI for instance here: https://circleci.com/gh/STEllAR-GROUP/phylanx/8813) which is not desired.