[C++ PATCH,committed] Fix mangle4.C breakage

Kriang Lerdsuwanakij lerdsuwa@users.sourceforge.net
Tue Oct 21 17:36:00 GMT 2003


Hi

This patch fixes the g++.dg/abi/mangle4.C regression I broke in my
previous patch.  A piece of code inside #if/#endif block fails to
handle the error_mark_node returned by push_template_decl.  This
code wasn't used on my i686-pc-linux-gnu, and hence the failure slip
through.

Tested on i686-pc-linux-gnu.  Committed to trunk as obvious.

--Kriang


2003-10-22  Kriang Lerdsuwanakij  <lerdsuwa@users.sourceforge.net>

	* decl.c (start_decl): Exit if push_template_decl returns
	error_mark_node.

diff -cprN gcc-main-save/gcc/cp/decl.c gcc-main-new/gcc/cp/decl.c
*** gcc-main-save/gcc/cp/decl.c	Tue Oct 21 21:16:00 2003
--- gcc-main-new/gcc/cp/decl.c	Tue Oct 21 21:45:22 2003
*************** start_decl (tree declarator, 
*** 3788,3793 ****
--- 3788,3795 ----
  
    if (processing_template_decl)
      tem = push_template_decl (tem);
+   if (tem == error_mark_node)
+     return error_mark_node;
  
  #if ! defined (ASM_OUTPUT_BSS) && ! defined (ASM_OUTPUT_ALIGNED_BSS)
    /* Tell the back-end to use or not use .common as appropriate.  If we say



More information about the Gcc-patches mailing list