This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

gold patch committed: Build fixes for clang


I got a report of some warnings building gold with clang.  This patch
fixes them.  Committed to mainline.

Ian


2012-04-25  Ian Lance Taylor  <iant@google.com>

	* arm.cc (Target_arm::do_is_defined_by_abi): Make sym a const
	pointer.
	(Stub_addend_reader::operator()): Declare Arm_relocate_functions
	as a class, not a struct.
	(Target_arm::scan_span_for_cortex_a8_erratum): Likewise.
	(Target_arm::apply_cortex_a8_workaround): Likewise.
	* gc.h: Declare Reloc_types as a struct, not a class.
	* object.h: Declare Symbols_data as a struct.
	* reloc.h: Declare Read_relocs_data as a struct.
	* target.h: Declare Relocate_info as a struct.


Index: arm.cc
===================================================================
RCS file: /cvs/src/src/gold/arm.cc,v
retrieving revision 1.149
diff -u -r1.149 arm.cc
--- arm.cc	19 Mar 2012 23:54:07 -0000	1.149
+++ arm.cc	26 Apr 2012 00:04:40 -0000
@@ -2314,7 +2314,7 @@
  
   // Return whether SYM is defined by the ABI.
   bool
-  do_is_defined_by_abi(Symbol* sym) const
+  do_is_defined_by_abi(const Symbol* sym) const
   { return strcmp(sym->name(), "__tls_get_addr") == 0; }
 
   // Return whether there is a GOT section.
@@ -6993,7 +6993,7 @@
     const unsigned char* view,
     const typename Reloc_types<elfcpp::SHT_REL, 32, big_endian>::Reloc&) const
 {
-  typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
+  typedef class Arm_relocate_functions<big_endian> RelocFuncs;
   
   switch (r_type)
     {
@@ -11709,7 +11709,7 @@
 	  // Check if we have an offending branch instruction.
 	  uint16_t upper_insn = (insn >> 16) & 0xffffU;
 	  uint16_t lower_insn = insn & 0xffffU;
-	  typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
+	  typedef class Arm_relocate_functions<big_endian> RelocFuncs;
 
 	  if (cortex_a8_reloc != NULL
 	      && cortex_a8_reloc->reloc_stub() != NULL)
@@ -11812,7 +11812,7 @@
   Valtype lower_insn = elfcpp::Swap<16, big_endian>::readval(wv + 1);
   off_t branch_offset = stub_address - (insn_address + 4);
 
-  typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
+  typedef class Arm_relocate_functions<big_endian> RelocFuncs;
   switch (stub->stub_template()->type())
     {
     case arm_stub_a8_veneer_b_cond:
Index: gc.h
===================================================================
RCS file: /cvs/src/src/gold/gc.h,v
retrieving revision 1.15
diff -u -r1.15 gc.h
--- gc.h	24 May 2011 21:41:10 -0000	1.15
+++ gc.h	26 Apr 2012 00:04:40 -0000
@@ -1,6 +1,6 @@
 // gc.h -- garbage collection of unused sections
 
-// Copyright 2009, 2010 Free Software Foundation, Inc.
+// Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
 // Written by Sriraman Tallam <tmsriram@google.com>.
 
 // This file is part of gold.
@@ -40,7 +40,7 @@
 class Sized_relobj_file;
 
 template<int sh_type, int size, bool big_endian>
-class Reloc_types;
+struct Reloc_types;
 
 class Output_section;
 class General_options;
Index: object.h
===================================================================
RCS file: /cvs/src/src/gold/object.h,v
retrieving revision 1.116
diff -u -r1.116 object.h
--- object.h	21 Mar 2012 19:02:21 -0000	1.116
+++ object.h	26 Apr 2012 00:04:40 -0000
@@ -1,6 +1,7 @@
 // object.h -- support for an object file for linking in gold  -*- C++ -*-
 
-// Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+// Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012
+// Free Software Foundation, Inc.
 // Written by Ian Lance Taylor <iant@google.com>.
 
 // This file is part of gold.
@@ -47,7 +48,7 @@
 class Dynobj;
 class Object_merge_map;
 class Relocatable_relocs;
-class Symbols_data;
+struct Symbols_data;
 
 template<typename Stringpool_char>
 class Stringpool_template;
Index: reloc.h
===================================================================
RCS file: /cvs/src/src/gold/reloc.h,v
retrieving revision 1.36
diff -u -r1.36 reloc.h
--- reloc.h	21 Mar 2012 19:02:21 -0000	1.36
+++ reloc.h	26 Apr 2012 00:04:40 -0000
@@ -38,7 +38,7 @@
 class General_options;
 class Object;
 class Relobj;
-class Read_relocs_data;
+struct Read_relocs_data;
 class Symbol;
 class Layout;
 class Output_data;
Index: target.h
===================================================================
RCS file: /cvs/src/src/gold/target.h,v
retrieving revision 1.64
diff -u -r1.64 target.h
--- target.h	19 Mar 2012 23:54:07 -0000	1.64
+++ target.h	26 Apr 2012 00:04:40 -0000
@@ -1,6 +1,7 @@
 // target.h -- target support for gold   -*- C++ -*-
 
-// Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+// Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012
+// Free Software Foundation, Inc.
 // Written by Ian Lance Taylor <iant@google.com>.
 
 // This file is part of gold.
@@ -49,7 +50,7 @@
 class Sized_relobj_file;
 class Relocatable_relocs;
 template<int size, bool big_endian>
-class Relocate_info;
+struct Relocate_info;
 class Reloc_symbol_changes;
 class Symbol;
 template<int size>

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