PATCH: Allow bootstrap with Sun Studio 12 cc

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Wed Feb 24 13:59:00 GMT 2010


When trying to bootstrap mainline on Solaris 11/x86 with Sun Studio 12
cc, I ran into a couple of errors:

"/vol/gcc/src/hg/trunk/solaris/gcc/cfg.c", line 741: reference to static identifier "first_block_aux_obj" in extern inline function
"/vol/gcc/src/hg/trunk/solaris/gcc/cfg.c", line 742: reference to static identifier "block_aux_obstack" in extern inline function
[...]
"/vol/gcc/src/hg/trunk/solaris/gcc/cfg.c", line 804: reference to static identifier "first_edge_aux_obj" in extern inline function
"/vol/gcc/src/hg/trunk/solaris/gcc/cfg.c", line 805: reference to static identifier "edge_aux_obstack" in extern inline function
[...]

The following patch fixes this and allows the bootstrap to finish.

Ok for mainline?

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University


2010-02-10  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

	* cfg.c (alloc_aux_for_block): Remove inline.
	(alloc_aux_for_edge): Likewise.

diff -r d8d980e6a7c4 -r 85c2ff670d5b gcc/cfg.c
--- a/gcc/cfg.c	Thu Feb 11 23:16:03 2010 +0100
+++ b/gcc/cfg.c	Thu Feb 11 23:19:25 2010 +0100
@@ -1,6 +1,6 @@
 /* Control flow graph manipulation code for GNU compiler.
    Copyright (C) 1987, 1988, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+   1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -734,7 +734,7 @@
 /* Allocate a memory block of SIZE as BB->aux.  The obstack must
    be first initialized by alloc_aux_for_blocks.  */
 
-inline void
+void
 alloc_aux_for_block (basic_block bb, int size)
 {
   /* Verify that aux field is clear.  */
@@ -797,7 +797,7 @@
 /* Allocate a memory edge of SIZE as BB->aux.  The obstack must
    be first initialized by alloc_aux_for_edges.  */
 
-inline void
+void
 alloc_aux_for_edge (edge e, int size)
 {
   /* Verify that aux field is clear.  */



More information about the Gcc-patches mailing list