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

            Bug ID: 107558
           Summary: [10/11/12/13 Regression] ICE in
                    fld_incomplete_type_of, at ipa-free-lang-data.cc:258
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: gs...@t-online.de
  Target Milestone: ---

Started with r9, between 20200508 and 20200612, reduced from file
llvm-project-llvmorg-14.0.6/clang/test/OpenMP/nvptx_lambda_capturing.cpp :


$ cat z1.cc
template <typename T>
int foo(const T &t) {
  #pragma omp target parallel
  t();
  return 0;
}
struct S {
  int a = 15;
  int foo() {
    auto &&L = [&]() { return a; };
#pragma omp target
    L();
#pragma omp target parallel
    L();
    return a + ::foo(L);
  }
} s;
int main(int argc, char **argv) {
  int &b = argc;
  int &&c = 1;
  int *d = &argc;
  int a;
  auto &&L = [&]() { return argc + b + c + reinterpret_cast<long int>(d) + a;
};
#pragma omp target firstprivate(argc) map(to : a)
  L();
#pragma omp target parallel
  L();
  return argc + s.foo();
}


$ cat z2.cc
  int a = 15;
  int foo() {
    auto &&L = [&]() { return a; };
#pragma omp target parallel
    L();
}


$ gcc-13-20221106 -c z2.cc -fopenmp -flto -fmerge-all-constants
z2.cc: In function 'int foo()':
z2.cc:6:1: warning: no return statement in function returning non-void
[-Wreturn-type]
    6 | }
      | ^
during IPA pass: *free_lang_data
z2.cc: At global scope:
z2.cc:6:1: internal compiler error: in fld_incomplete_type_of, at
ipa-free-lang-data.cc:258
0x1aa1387 fld_incomplete_type_of
        ../../gcc/ipa-free-lang-data.cc:257
0x1aa26dd fld_simplified_type
        ../../gcc/ipa-free-lang-data.cc:344
0x1aa26dd free_lang_data_in_decl
        ../../gcc/ipa-free-lang-data.cc:653
0x1aa26dd free_lang_data_in_cgraph
        ../../gcc/ipa-free-lang-data.cc:1068
0x1aa26dd free_lang_data
        ../../gcc/ipa-free-lang-data.cc:1109
0x1aa26dd execute
        ../../gcc/ipa-free-lang-data.cc:1176

Reply via email to