[Bug gold/5986] New: build failure with gcc 4.3.0

2008-03-25 Thread cryptooctoploid at gmail dot com
if g++ -DHAVE_CONFIG_H -I. -I.././gold -I. -I.././gold -I.././gold/../include
-I.././gold/../elfcpp -DLOCALEDIR="\"/usr/share/locale\""
-DBINDIR="\"/usr/bin\"" -DTOOLBINDIR="\"/usr/x86_64-unknown-linux-gnu/bin\""   
-W -Wall   -Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -march=k8
-pipe -MT dynobj.o -MD -MP -MF ".deps/dynobj.Tpo" -c -o dynobj.o dynobj.cc; \
then mv -f ".deps/dynobj.Tpo" ".deps/dynobj.Po"; else rm -f
".deps/dynobj.Tpo"; exit 1; fi
In file included from dynobj.cc:30:
script.h: In member function ‘bool
gold::Version_script_info::symbol_is_local(const char*) const’:
script.h:152: error: invalid use of incomplete type ‘const struct
std::basic_string, std::allocator >’
/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.0/include/g++-v4/bits/stringfwd.h:56:
error: declaration of ‘const struct std::basic_string, std::allocator >’
script.h:153: error: invalid use of incomplete type ‘const struct
std::basic_string, std::allocator >’
/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.0/include/g++-v4/bits/stringfwd.h:56:
error: declaration of ‘const struct std::basic_string, std::allocator >’
script.h: At global scope:
script.h:247: error: field ‘name_’ has incomplete type
script.h: In constructor ‘gold::Symbol_assignment::Symbol_assignment(const
char*, size_t, gold::Expression*, bool, bool)’:
script.h:206: error: class ‘gold::Symbol_assignment’ does not have any field
named ‘name_’
script.h: At global scope:
script.h:282: error: field ‘message_’ has incomplete type
script.h: In constructor
‘gold::Script_assertion::Script_assertion(gold::Expression*, const char*, 
size_t)’:
script.h:267: error: class ‘gold::Script_assertion’ does not have any field
named ‘message_’
script.h: At global scope:
script.h:376: error: field ‘entry_’ has incomplete type
make[4]: *** [dynobj.o] Error 1
make[4]: Leaving directory `/home/markus/binutils/src/gold'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/markus/binutils/src/gold'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/markus/binutils/src/gold'
make[1]: *** [all-gold] Error 2
make[1]: Leaving directory `/home/markus/binutils/src'
make: *** [all] Error 2

-- 
   Summary: build failure with gcc 4.3.0
   Product: binutils
   Version: 2.19 (HEAD)
Status: NEW
  Severity: normal
  Priority: P2
 Component: gold
AssignedTo: ian at airs dot com
ReportedBy: cryptooctoploid at gmail dot com
CC: bug-binutils at gnu dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=5986

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils


[Bug ld/3290] Linker creates dynamic debug symbols in DSO

2008-03-25 Thread jakub at redhat dot com

--- Additional Comments From jakub at redhat dot com  2008-03-25 15:06 
---
Do we need to do this even when info->relocatable?  PGI apparently uses
(or used?) global symbols in .debug_info sections and referenced them from
within object's .debug_info section.  With this change, ld -r
on one or more *.o files which define such global symbols will make those
symbols STB_LOCAL and so a final link fails.  IMHO either the debug symbols
should be made global, but hidden, or made local only when not ld -r.

--- bfd/elflink.c   2 Mar 2008 22:26:09 -   1.299
+++ bfd/elflink.c   25 Mar 2008 15:01:19 -
@@ -4294,7 +4294,7 @@ elf_link_add_object_symbols (bfd *abfd, 
dynsym = TRUE;
}
 
- if (definition && (sec->flags & SEC_DEBUGGING))
+ if (definition && (sec->flags & SEC_DEBUGGING) && !info->relocatable)
{
  /* We don't want to make debug symbol dynamic.  */
  (*bed->elf_backend_hide_symbol) (info, h, TRUE);

works for me.

-- 


http://sourceware.org/bugzilla/show_bug.cgi?id=3290

--- You are receiving this mail because: ---
You are on the CC list for the bug, or are watching someone who is.


___
bug-binutils mailing list
bug-binutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-binutils