Opened 6 months ago

Last modified 6 months ago

#69719 closed defect

draco @1.5.7: error: no type named 'invoke_result' in namespace 'std' — at Version 1

Reported by: Nicob73 Owned by: nilason (Nicklas Larsson)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: highsierra Cc:
Port: draco

Description (last modified by ryandesign (Ryan Carsten Schmidt))

:info:build [ 34%] Building CXX object CMakeFiles/draco_scene.dir/src/draco/scene/scene.cc.o
:info:build /usr/bin/clang++ -DDRACO_CMAKE=1 -DDRACO_FLAGS_SRCDIR=\"/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7\" -DDRACO_FLAGS_TMPDIR=\"/tmp\" -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build -I/opt/local/include/eigen3 -I/opt/local/include/ghc -I/opt/local/include -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -std=gnu++1z -arch x86_64 -mmacosx-version-min=10.13 -fPIC -Wno-deprecated-declarations -MD -MT CMakeFiles/draco_scene.dir/src/draco/scene/scene.cc.o -MF CMakeFiles/draco_scene.dir/src/draco/scene/scene.cc.o.d -o CMakeFiles/draco_scene.dir/src/draco/scene/scene.cc.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/scene/scene.cc
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/core/draco_test_utils.cc:15:
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/core/draco_test_utils.h:28:
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/io/scene_io.h:26:
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/scene/scene.h:28:
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/scene/instance_array.h:25:
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7/src/draco/scene/trs_matrix.h:21:
:info:build In file included from /opt/local/include/eigen3/Eigen/Geometry:11:
:info:build In file included from /opt/local/include/eigen3/Eigen/Core:162:
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:504:25: error: no type named 'invoke_result' in namespace 'std'
:info:build   typedef typename std::invoke_result<F, ArgTypes...>::type type1;
:info:build           ~~~~~~~~~~~~~~^~~~~~~~~~~~~
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:504:38: error: expected member name or ';' after declaration specifiers
:info:build   typedef typename std::invoke_result<F, ArgTypes...>::type type1;
:info:build   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:505:31: error: use of undeclared identifier 'type1'
:info:build   typedef typename remove_all<type1>::type type;
:info:build                               ^
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:505:39: error: non-friend class member 'type' cannot have a qualified name
:info:build   typedef typename remove_all<type1>::type type;
:info:build                                     ~~^
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:505:39: error: typedef declarator cannot be qualified
:info:build   typedef typename remove_all<type1>::type type;
:info:build                                     ~~^
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:505:43: error: expected ';' at end of declaration list
:info:build   typedef typename remove_all<type1>::type type;
:info:build                                           ^
:info:build                                           ;
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:616:20: error: no template named 'invoke_result' in namespace 'std'; did you mean '::Eigen::internal::invoke_result'?
:info:build   typedef typename std::invoke_result<F, ArgTypes...>::type type1;
:info:build                    ^~~~~~~~~~~~~~~~~~
:info:build                    ::Eigen::internal::invoke_result
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:615:8: note: '::Eigen::internal::invoke_result' declared here
:info:build struct invoke_result {
:info:build        ^
:info:build /opt/local/include/eigen3/Eigen/src/Core/util/Meta.h:616:56: error: no type named 'type' in 'invoke_result<F, ArgTypes...>'
:info:build   typedef typename std::invoke_result<F, ArgTypes...>::type type1;
:info:build           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~
:info:build /Library/Developer/CommandLineTools/usr/bin/make  -f CMakeFiles/draco_gtest_main.dir/build.make CMakeFiles/draco_gtest_main.dir/depend
:info:build make[2]: Entering directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build'
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build && /opt/local/bin/cmake -E cmake_depends "Unix Makefiles" /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/draco-1.5.7 /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_archivers_draco/draco/work/build/CMakeFiles/draco_gtest_main.dir/DependInfo.cmake "--color="
:info:build 8 errors generated.

Conflict with eigen3 port

Change History (1)

comment:1 Changed 6 months ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)
Keywords: highsierra added
Owner: set to nilason
Status: newassigned
Summary: MacPorts 2.9.3 on macOS 10.13.2 draco 1.5.7 failed to builddraco @1.5.7: error: no type named 'invoke_result' in namespace 'std'

Any particular reason you're stuck on macOS 10.13.2? You should install 10.13.6 and all the security updates.

A quick search suggests std::invoke_result is C++17 but the port specifies that its requirement is C++14.

Note: See TracTickets for help on using tickets.