This is the mail archive of the gcc-patches@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]

C++ ICE 19991215


Mark

I'm hitting a 19991215 ICE when bootstrapping.

I think the method_vec assert and assignment in
finish_struct_methods () need to be reversed.

Graham 

Here's the relevant code extracted from
finish_struct_methods() in cp/class.c.

The assertion is checking a uninitialised method_vec!

finish_struct_methods (t)     
tree t;
{
  tree fn_fields;
  tree method_vec;
  tree ctor_name = constructor_name (t); 
  int slot, len;

  if (!TYPE_METHODS (t))
    {
      /* Clear these for safety; perhaps some parsing error could set
	 these incorrectly.  */ 
      TYPE_HAS_CONSTRUCTOR (t) = 0;
      TYPE_HAS_DESTRUCTOR (t) = 0;
      CLASSTYPE_METHOD_VEC (t) = NULL_TREE;
      return;
    }

  my_friendly_assert (method_vec != NULL_TREE, 19991215);
  method_vec = CLASSTYPE_METHOD_VEC (t);


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