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

            Bug ID: 109723
           Summary: [14 regression] ICE in instantiate_decl, at
                    cp/pt.cc:27066 when building opencv-4.7.0
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sjames at gcc dot gnu.org
  Target Milestone: ---

Created attachment 54987
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=54987&action=edit
bimef.cpp.ii.xz

This may be a dupe of PR109645 or PR109658, not sure, but I figure it's worth
the test case anyway even if it is.

Hit this when building opencv-4.7.0 with gcc 14.

---

```
FAILED:
modules/intensity_transform/CMakeFiles/opencv_intensity_transform.dir/src/bimef.cpp.o
/usr/bin/aarch64-unknown-linux-gnu-g++ -DCVAPI_EXPORTS -D_USE_MATH_DEFINES
-D__OPENCV_BUILD=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS
-D__STDC_LIMIT_MACROS -I/var/tmp/portage/me
dia-libs/opencv-4.7.0/work/opencv_contrib-4.7.0/modules/intensity_transform/include
-I/var/tmp/portage/media-libs/opencv-4.7.0/work/opencv-4.7.0_build-.arm64/modules/intensity_transform

-I/var/tmp/portage/media-libs/opencv-4.7.0/work/opencv-4.7.0/modules/core/include
-I/var/tmp/portage/media-libs/opencv-4.7.0/work/opencv-4.7.0/modules/imgproc/include
-isystem /var/tmp
/portage/media-libs/opencv-4.7.0/work/opencv-4.7.0_build-.arm64 -isystem
/usr/include/eigen3  -O2 -pipe -mcpu=native   -fsigned-char -W -Wall
-Wreturn-type -Wnon-virtual-dtor -Waddress
-Wsequence-point -Wformat -Wformat-security -Wmissing-declarations -Wundef
-Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized
-Wsuggest-override -Wno-delete-non-virtual-d
tor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow
-fdiagnostics-show-option -pthread -fomit-frame-pointer -ffunction-sections
-fdata-sections  -fvisibility=hidden -fvisibil
ity-inlines-hidden -fopenmp -std=c++11 -fPIC -MD -MT
modules/intensity_transform/CMakeFiles/opencv_intensity_transform.dir/src/bimef.cpp.o
-MF modules/intensity_transform/CMakeFiles/ope
ncv_intensity_transform.dir/src/bimef.cpp.o.d -o
modules/intensity_transform/CMakeFiles/opencv_intensity_transform.dir/src/bimef.cpp.o
-c /var/tmp/portage/media-libs/opencv-4.7.0/work/o
pencv_contrib-4.7.0/modules/intensity_transform/src/bimef.cpp
[...]
/var/tmp/portage/media-libs/opencv-4.7.0/work/opencv-4.7.0/modules/core/include/opencv2/core/utility.hpp:645:27:
internal compiler error: in instantiate_decl, at cp/pt.cc:27066
  645 |                     this->rowCall2(row, COLS);
      |                     ~~~~~~^~~~~~~~
0x9d5eb7 instantiate_decl(tree_node*, bool, bool)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:27066
0x8356df mark_used(tree_node*, int)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/decl2.cc:5875
0x9b7aeb tsubst_baselink
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:16910
0x9a0443 tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:21415
0x99e1eb tsubst_copy_and_build(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:21022
0x9ae4cb tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19878
0x9aff37 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:18855
0x9af3cb tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19058
0x9af79f tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19207
0x9b214b tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19176
0x9afb57 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:18827
0x9af79f tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19207
0x9be0c7 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:18813
0x9be0c7 instantiate_body
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:26889
0x9d5667 instantiate_decl(tree_node*, bool, bool)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:27182
0x9afef3 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19369
0x9afb57 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:18827
0x9af79f tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:19207
0x9be0c7 tsubst_expr(tree_node*, tree_node*, int, tree_node*)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:18813
0x9be0c7 instantiate_body
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:26889
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
```

---

```
$ g++ -O2 bimef.cpp.ii -c
[...]
0x9d5eb7 instantiate_decl(tree_node*, bool, bool)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/pt.cc:27066
0x8356df mark_used(tree_node*, int)
       
/usr/src/debug/sys-devel/gcc-14.0.0.9999/gcc-14.0.0.9999/gcc/cp/decl2.cc:5875
[...]
```

$ gcc --version
gcc (Gentoo 14.0.0.9999 p, commit 490c1c096ca1d3a1f4a84801a46231d64c07ba49)
14.0.0 20230503 (experimental) 6cff5f3da7f263bb11cf48e6011931422b62b364
Copyright (C) 2023 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```

Reply via email to