Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to compile, gcc 7.5.0 #62

Open
MonkeyDied opened this issue Jul 16, 2023 · 0 comments
Open

Failed to compile, gcc 7.5.0 #62

MonkeyDied opened this issue Jul 16, 2023 · 0 comments

Comments

@MonkeyDied
Copy link

MonkeyDied commented Jul 16, 2023

Found errors of the form parameter packs not expanded with ‘...’ and operand of fold expression has no unexpanded parameter packs when compiling things from widget/tuple.hpp. The function causing the error is template <std::size_t... Is> [[nodiscard]] auto indexed_init_children(std::index_sequence<Is...>, typename Widget_t::Parameters... p)

I am using a Ubuntu 18.04 system with gcc 7.5.0.
I checked that, from https://gcc.gnu.org/projects/cxx-status.html#cxx17, the only feature in C++17 not implemented in gcc 7 is P0512R0, something related to Template argument deduction for class templates.

I wonder if this failure is due to the unimplemented feature P0512R0 in gcc 7 ?
If that is the case, is there a workaround to help me out ?

Sampled error messages
[build] /usr/bin/x86_64-linux-gnu-g++-7 -I.../TermOx/include -I.../TermOx/external/signals-light/include -I.../TermOx/external/Escape/include -g -Wall -Wextra -Wpedantic -std=gnu++1z -MD -MT src/CMakeFiles/TermOx.dir/widget/widgets/color_select.cpp.o -MF src/CMakeFiles/TermOx.dir/widget/widgets/color_select.cpp.o.d -o src/CMakeFiles/TermOx.dir/widget/widgets/color_select.cpp.o -c .../TermOx/src/widget/widgets/color_select.cpp
[build] In file included from .../TermOx/include/termox/widget/bordered.hpp:13:0,
[build] from .../TermOx/include/termox/widget/pipe.hpp:18,
[build] from .../TermOx/src/widget/widgets/color_select.cpp:8:
[build] .../TermOx/include/termox/widget/tuple.hpp: In lambda function:
[build] .../TermOx/include/termox/widget/tuple.hpp:83:27: error: parameter packs not expanded with ‘...’:
[build] if constexpr (std::is_constructible_v<
[build] ^~~
[build] .../TermOx/include/termox/widget/tuple.hpp:83:27: note: ‘Widget_t’
[build] .../TermOx/include/termox/widget/tuple.hpp:85:50: error: parameter packs not expanded with ‘...’:
[build] return std::make_unique<Widget_t>(std::move(p));
[build] ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
[build] .../TermOx/include/termox/widget/tuple.hpp:85:50: note: ‘__p’
[build] .../TermOx/include/termox/widget/tuple.hpp:85:50: note: ‘Widget_t’
[build] .../TermOx/include/termox/widget/tuple.hpp:87:50: error: parameter packs not expanded with ‘...’:
[build] return std::make_unique<Widget_t>();
[build] ~~~~~~~~~~~~~~~~~~~~~~~~~~^~
[build] .../TermOx/include/termox/widget/tuple.hpp:87:50: note: ‘Widget_t’
[build] .../TermOx/include/termox/widget/tuple.hpp: In member function ‘auto ox::Tuple<Layout_t, Widget_t>::indexed_init_children(std::index_sequence<__indices ...>, typename Widget_t::Parameters ...)’:
[build] .../TermOx/include/termox/widget/tuple.hpp:89:10: error: operand of fold expression has no unexpanded parameter packs
[build] ...);
[build] ^~~

@MonkeyDied MonkeyDied changed the title Failed to compile, gcc 7.5 Failed to compile, gcc 7.5.0, Jul 16, 2023
@MonkeyDied MonkeyDied changed the title Failed to compile, gcc 7.5.0, Failed to compile, gcc 7.5.0 Jul 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant