[gnu.g++.bug] failed assertion GNU C++ 1.36.2

tiemann@arkesden.eng.sun.com (Michael Tiemann) (12/01/89)

This fixes the failed assertion problem reported by Joe Sacco:

    arkesden% diff -c2 cplus-typeck.c~ cplus-typeck.c
    *** cplus-typeck.c~	Wed Nov 29 09:27:27 1989
    --- cplus-typeck.c	Thu Nov 30 16:52:40 1989
    ***************
    *** 4195,4199 ****
	    && TYPE_NEEDS_DESTRUCTOR (TREE_TYPE (TREE_VALUE (list))))
	  TREE_VALUE (list) = cleanup_after_call (TREE_VALUE (list));
    !   else if (TREE_CODE (TREE_VALUE (list)) == VAR_DECL)
	  TREE_VALUE (list) = decl_constant_value (TREE_VALUE (list));

    --- 4195,4200 ----
	    && TYPE_NEEDS_DESTRUCTOR (TREE_TYPE (TREE_VALUE (list))))
	  TREE_VALUE (list) = cleanup_after_call (TREE_VALUE (list));
    !   else if (TREE_READONLY (TREE_VALUE (list))
    ! 	   && TREE_CODE (TREE_VALUE (list)) == VAR_DECL)
	  TREE_VALUE (list) = decl_constant_value (TREE_VALUE (list));

    arkesden% 

Michael