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

            Bug ID: 123810
           Summary: internal compiler error: in members_cmp, at
                    cp/reflect.cc:6450
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: peppe at gcc dot gnu.org
            Blocks: 123615
  Target Milestone: ---

Hi,

The attached preprocessed source causes an ICE:



/home/peppe/projects/src/qt6/qtbase/src/corelib/global/qtypeinfo.h:121:40:
internal compiler error: in members_cmp, at cp/reflect.cc:6450
  121 |         const auto members = members_of(tInfo, ctx);
      |                              ~~~~~~~~~~^~~~~~~~~~~~

0x2af05ef internal_error(char const*, ...)
        ../../gcc.git/gcc/diagnostic-global-context.cc:787
0xb51c0f fancy_abort(char const*, int, char const*)
        ../../gcc.git/gcc/diagnostics/context.cc:1812
0x89fa32 members_cmp
        ../../gcc.git/gcc/cp/reflect.cc:6450
0x2b96958 cmp1<sort_ctx>
        ../../gcc.git/gcc/sort.cc:151
0x2b969de netsort<sort_ctx>
        ../../gcc.git/gcc/sort.cc:171
0x2b969de mergesort<sort_ctx>
        ../../gcc.git/gcc/sort.cc:205
0x2b96bda mergesort<sort_ctx>
        ../../gcc.git/gcc/sort.cc:210
0x2b96bda mergesort<sort_ctx>
        ../../gcc.git/gcc/sort.cc:210
0x2b97011 gcc_qsort(void*, unsigned long, unsigned long, int (*)(void const*,
void const*))
        ../../gcc.git/gcc/sort.cc:268
0xe29845 vec<constructor_elt, va_gc, vl_embed>::qsort(int (*)(void const*, void
const*))
        ../../gcc.git/gcc/vec.h:1226
0xe29845 class_members_of
        ../../gcc.git/gcc/cp/reflect.cc:6628
0xe2b063 eval_members_of
        ../../gcc.git/gcc/cp/reflect.cc:6779
0xe2dd50 process_metafunction(constexpr_ctx const*, tree_node*, tree_node*,
bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/reflect.cc:7622
0xbb0845 cxx_eval_call_expression
        ../../gcc.git/gcc/cp/constexpr.cc:3867
0xbb41f0 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*,
value_cat, bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/constexpr.cc:9205
0xbbd3ca cxx_eval_store_expression
        ../../gcc.git/gcc/cp/constexpr.cc:8156
0xbb3ef4 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*,
value_cat, bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/constexpr.cc:9377
0xbb41ba cxx_eval_constant_expression(constexpr_ctx const*, tree_node*,
value_cat, bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/constexpr.cc:9918
0xbb4dc1 cxx_eval_constant_expression(constexpr_ctx const*, tree_node*,
value_cat, bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/constexpr.cc:9422
0xbb454a cxx_eval_constant_expression(constexpr_ctx const*, tree_node*,
value_cat, bool*, bool*, tree_node**)
        ../../gcc.git/gcc/cp/constexpr.cc:9474


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123615
[Bug 123615] (c++-reflection) - [meta-bug] reflection issue

Reply via email to