This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/59318] New: ICE on invalid C++ code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59318

            Bug ID: 59318
           Summary: ICE on invalid C++ code
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: hjl.tools at gmail dot com

[hjl@gnu-6 pr59311]$ cat x.ii
#pragma GCC visibility push(default)

namespace std
{

  template<class _E>
    class initializer_list
    {
    public:
      typedef _E value_type;
    };

}

#pragma GCC visibility pop

struct A
{
  int i;
  A(std::initializer_list<int>) { }
};

int x = 4;
int main(int argc, char **argv)
{
  { int i[x] = { 42, 42, 42, 42 }; }
  {
    A a[x] = { argc };
    if (a[1].i != 42)
      __builtin_abort ();
  }
}
[hjl@gnu-6 pr59311]$ make x.s
/export/build/gnu/gcc-x32/build-x86_64-linux/gcc/xgcc
-B/export/build/gnu/gcc-x32/build-x86_64-linux/gcc/ -std=c++1y -m32 -S x.ii
x.ii: In function âint main(int, char**)â:
x.ii:28:21: error: conversion from âintâ to non-scalar type âAâ requested
     A a[x] = { argc };
                     ^
x.ii:28:21: internal compiler error: Segmentation fault
0xd1bbee crash_signal
    /export/gnu/import/git/gcc/gcc/toplev.c:336
0x57d296 contains_struct_check(tree_node*, tree_node_structure_enum, char
const*, int, char const*)
    /export/gnu/import/git/gcc/gcc/tree.h:2821
0x593382 convert_like_real
    /export/gnu/import/git/gcc/gcc/cp/call.c:6059
0x596b0b build_over_call
    /export/gnu/import/git/gcc/gcc/cp/call.c:6947
0x592ae7 convert_like_real
    /export/gnu/import/git/gcc/gcc/cp/call.c:5964
0x59363e convert_like_real
    /export/gnu/import/git/gcc/gcc/cp/call.c:6089
0x59f55f perform_implicit_conversion_flags(tree_node*, tree_node*, int, int)
    /export/gnu/import/git/gcc/gcc/cp/call.c:9023
0x59f5f1 perform_implicit_conversion(tree_node*, tree_node*, int)
    /export/gnu/import/git/gcc/gcc/cp/call.c:9035
0x72d132 ocp_convert(tree_node*, tree_node*, int, int, int)
    /export/gnu/import/git/gcc/gcc/cp/cvt.c:861
0x73c92f expand_default_init
    /export/gnu/import/git/gcc/gcc/cp/init.c:1605
0x73d40c expand_aggr_init_1
    /export/gnu/import/git/gcc/gcc/cp/init.c:1774
0x73c2cc build_aggr_init(tree_node*, tree_node*, int, int)
    /export/gnu/import/git/gcc/gcc/cp/init.c:1525
0x7439a9 build_vec_init(tree_node*, tree_node*, tree_node*, bool, int, int)
    /export/gnu/import/git/gcc/gcc/cp/init.c:3737
0x73c10c build_aggr_init(tree_node*, tree_node*, int, int)
    /export/gnu/import/git/gcc/gcc/cp/init.c:1506
0x5bc2b5 build_aggr_init_full_exprs
    /export/gnu/import/git/gcc/gcc/cp/decl.c:5583
0x5bce86 check_initializer
    /export/gnu/import/git/gcc/gcc/cp/decl.c:5719
0x5c01a2 cp_finish_decl(tree_node*, tree_node*, bool, tree_node*, int)
    /export/gnu/import/git/gcc/gcc/cp/decl.c:6388
0x6db07f cp_parser_init_declarator
    /export/gnu/import/git/gcc/gcc/cp/parser.c:16743
0x6d2198 cp_parser_simple_declaration
    /export/gnu/import/git/gcc/gcc/cp/parser.c:11134
0x6d1f88 cp_parser_block_declaration
    /export/gnu/import/git/gcc/gcc/cp/parser.c:11015
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [x.s] Error 1
[hjl@gnu-6 pr59311]$

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]