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++/33959] [4.1/4.2/4.3 Regression] ICE in instantiate_class_template, at cp/pt.c:6649



------- Comment #3 from cppljevans at suddenlink dot net  2007-10-31 18:49 -------
When that following main is used instead of the one posted earlier,
the error no longer occurs.

<-- cut here --
  int
main(void)
{
    typedef gram_tree<vars> gt;
    gt::productions prods;
  #define INST_SEQ
  #ifdef INST_SEQ
    gt::expr_sequence inst_seq;
  #endif
    prods[vars::e]=prods[vars::e] >>
    #ifdef INST_SEQ
      inst_seq
    #else
      prods[vars::e] 
    #endif
      ;

    return 0;
}

>-- cut here --

IOW, the pt.c insource comment mentioned in my first post
really means what it says, i.e. the above code instantiates 
the outer class, expr_sequence, and the ice no longer occurs.  

Maybe the gcc_assert that's in pt.c on line 6651
and that was mentioned in my first post should be removed?


-- 


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


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