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]

Bug fix missed in gcc-2.95.2


	On October 4th, Mark Mitchtell posted a fix to bug-gcc
for a problem that I reported on September 1st.  It looks like
that fix was not integrated into gcc-2.95.2, or perhaps was
clobbered by a subsequent patch, since the relevant line in
gcc/cp/pt.c has moved significantly in the file.  Anyhow,
the internal compiler error that I reported still occurs in gcc-2.95.2,
and Mark's fix still seems to fix it (although I made the change
by hand here, because the relevant section of code has moved
up about 9000 lines the file).

	I have attached Mark's fix below.  Is there anything else I
need to do to get this fix applied?   (This fix was not deliberately
left out, right?)

Adam J. Richter     __     ______________   4880 Stevens Creek Blvd, Suite 104
adam@yggdrasil.com     \ /                  San Jose, California 95129-1034
+1 408 261-6630         | g g d r a s i l   United States of America
fax +1 408 261-6631      "Free Software For The Rest Of Us."

>From mitchell@codesourcery.com Mon Oct  4 02:50:48 1999
To: adam@yggdrasil.com
Cc: bug-gcc@gnu.org
Subject: Re: egcs-19990824: g++ -g -O generating bad assembly on x86
 linux glibc-2.1.1
In-Reply-To: <199909010704.AAA27356@adam.yggdrasil.com>
References: <199909010704.AAA27356@adam.yggdrasil.com>
X-Mailer: Mew version 1.94b25 on Emacs 20.3 / Mule 4.0 (HANANOEN)
X-URL: http://www.codesourcery.com
Organization: CodeSourcery, LLC
From: Mark Mitchell <mark@codesourcery.com>
Mime-Version: 1.0
Content-Type: Text/Plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Date: Mon, 04 Oct 1999 02:38:31 -0700
Sender: Mark Mitchell <mitchell@codesourcery.com>
X-Dispatcher: imput version 990425(IM115)
Lines: 70


Here's the fix for this problem.

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com

Index: testsuite/g++.old-deja/g++.pt/memtemp92.C
===================================================================
RCS file: memtemp92.C
diff -N memtemp92.C
*** /dev/null	Sat Dec  5 20:30:03 1998
--- memtemp92.C	Mon Oct  4 02:22:11 1999
***************
*** 0 ****
--- 1,30 ----
+ // Build don't link:
+ // Origin: "Adam J. Richter" <adam@yggdrasil.com>
+ 
+ template <class Style, class Base>
+ class theme_map {
+ };
+ 
+ class QWidget {
+ protected:
+   virtual void *harmony_get_list_for_signal(const char *) const;
+ 
+ public:
+   static theme_map<int, QWidget> ContentsThemes;
+ 
+ protected:
+   virtual void updateDrawingObjects (void)
+     {
+       update_dro (QWidget::ContentsThemes);
+     }
+ 
+   template <class S, class B>
+   void update_dro (theme_map<S, B>& themes)
+     {
+     }
+ };
+ 
+ void *QWidget::harmony_get_list_for_signal(const char *sig) const
+ {
+   	return 0;
+ }
Index: cp/pt.c
===================================================================
RCS file: /egcs/carton/cvsfiles/egcs/gcc/cp/pt.c,v
retrieving revision 1.371
diff -c -p -r1.371 pt.c
*** pt.c	1999/10/03 18:57:07	1.371
--- pt.c	1999/10/04 09:17:59
*************** instantiate_decl (d)
*** 9555,9561 ****
    code_pattern = DECL_TEMPLATE_RESULT (td);
  
    if (TREE_CODE (d) == FUNCTION_DECL)
!     pattern_defined = (DECL_INITIAL (code_pattern) != NULL_TREE);
    else
      pattern_defined = ! DECL_IN_AGGR_P (code_pattern);
  
--- 9555,9561 ----
    code_pattern = DECL_TEMPLATE_RESULT (td);
  
    if (TREE_CODE (d) == FUNCTION_DECL)
!     pattern_defined = (DECL_SAVED_TREE (code_pattern) != NULL_TREE);
    else
      pattern_defined = ! DECL_IN_AGGR_P (code_pattern);
  


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