public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/99201] New: ICE in tsubst_copy, at cp/pt.c:16581
@ 2021-02-22 14:59 kretz at kde dot org
  2021-02-22 15:22 ` [Bug c++/99201] [8/9/10/11 Regression] " mpolacek at gcc dot gnu.org
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: kretz at kde dot org @ 2021-02-22 14:59 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99201

            Bug ID: 99201
           Summary: ICE in tsubst_copy, at cp/pt.c:16581
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: kretz at kde dot org
  Target Milestone: ---

Testcase (reduced with C-Vise from valid code):

template <class, class... F> void test_values_2arg(int, int, F... fun_pack) {
  [] {}(fun_pack()...);
}
template <typename TestF, typename RefF> auto make_tester(TestF, RefF) {
  return [](auto...) {
    [](auto... vs) {
      if constexpr ([&] { reffun(vs...); })
        ;
    };
  };
}
void test() {
  auto __trans_tmp_1 = make_tester([] {}, [] {});
  test_values_2arg<int>({}, {}, __trans_tmp_1);
}


ice.cpp: In instantiation of 'make_tester<test()::<lambda()>,
test()::<lambda()> >::<lambda(auto:1 ...)> [with auto:1 = {}]':
ice.cpp:2:   required from 'void test_values_2arg(int, int, F ...) [with
<template-parameter-1-1> = int; F = {make_tester<test()::<lambda()>,
test()::<lambda()> >::<lambda(auto:1 ...)>}]'
ice.cpp:14:   required from here
ice.cpp:7: internal compiler error: in tsubst_copy, at cp/pt.c:16581
    7 |       if constexpr ([&] { reffun(vs...); })
      |                                  ^~
0x66f262 tsubst_copy
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:16581
0x804fae tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:20719
0x804e6b tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:19497
0x804e6b tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:20841
0x816cc4 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:19497
0x816cc4 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:19107
0x815dec tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132
0x815dec tsubst_pack_expansion(tree_node*, tree_node*, int, tree_node*)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:13148
0x806acd tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:20148
0x816cc4 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*, bool,
bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:19497
0x816cc4 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:19107
0x817cee tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132
0x817cee tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18177
0x818893 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132
0x818893 tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18147
0x8177da tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132
0x8177da tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18498
0x8177da tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132
0x8177da tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18498
0x81f84b tsubst_expr(tree_node*, tree_node*, int, tree_node*, bool)
        /home/mkretz/src/gcc-simd/gcc/cp/pt.c:18132

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2022-05-27  9:50 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-22 14:59 [Bug c++/99201] New: ICE in tsubst_copy, at cp/pt.c:16581 kretz at kde dot org
2021-02-22 15:22 ` [Bug c++/99201] [8/9/10/11 Regression] " mpolacek at gcc dot gnu.org
2021-02-22 15:34 ` jakub at gcc dot gnu.org
2021-02-22 15:36 ` kretz at kde dot org
2021-02-22 21:12 ` kretz at kde dot org
2021-02-23  8:20 ` rguenth at gcc dot gnu.org
2021-02-23  8:30 ` kretz at kde dot org
2021-02-23  9:35 ` [Bug c++/99201] [8/9/10/11 Regression] ICE in tsubst_copy, at cp/pt.c:16581 since r8-7613-g1456e764105702a0 marxin at gcc dot gnu.org
2021-04-04 15:54 ` jason at gcc dot gnu.org
2021-04-05 12:26 ` cvs-commit at gcc dot gnu.org
2021-04-05 13:30 ` [Bug c++/99201] [8/9/10 " jason at gcc dot gnu.org
2021-05-14  9:54 ` [Bug c++/99201] [9/10 " jakub at gcc dot gnu.org
2021-05-20 21:35 ` cvs-commit at gcc dot gnu.org
2021-06-01  8:19 ` rguenth at gcc dot gnu.org
2022-05-27  9:50 ` [Bug c++/99201] [9 " rguenth at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).