Fix problem parsing symbol version strings when they are preceeded by whitespace.

Add test to catch this problem in the future.
This commit is contained in:
Nick Clifton 2003-04-29 11:52:37 +00:00
parent 1bae87b9e6
commit eba874d8d0
6 changed files with 36 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2003-04-29 Nick Clifton <nickc@redhat.com>
* config/obj-elf.c (obj_elf_symver): Skip whitespace before the
start of a version name.
2003-04-28 Chris Demetriou <cgd@broadcom.com>
* configure.in (mips-*-*n*bsd*): Replace with...

View File

@ -1269,6 +1269,7 @@ obj_elf_symver (ignore)
}
++input_line_pointer;
SKIP_WHITESPACE ();
name = input_line_pointer;
/* Temporarily include '@' in symbol names. */

View File

@ -1,3 +1,9 @@
2003-04-29 Nick Clifton <nickc@redhat.com>
* gas/elf/elf.exp: Invoke symver test.
* gas/elf/symver.s: New test case.
* gas/elf/symver.d: Expected output.
2003-04-24 Nick Clifton <nickc@redhat.com>
* gas/ppc/astest2.s: Add tests for conditional branches with

View File

@ -53,4 +53,5 @@ if { ([istarget "*-*-elf*"]
run_dump_test "section0"
run_dump_test "section1"
run_list_test "section2" "$target_machine" "-al"
run_dump_test "symver"
}

View File

@ -0,0 +1,17 @@
#objdump: --syms
#name: ELF symbol versioning
#
# The #... and #pass are there to match extra symbols inserted by
# some toolchains, eg the mips-elf port will add .reginfo and .ptrd
dump.o: file format .*
SYMBOL TABLE:
0+000 l.*d.*\.text.*0+000.*
0+000 l.*d.*\.data.*0+000.*
0+000 l.*d.*\.bss.*0+000.*
#...
0+000 l.*O.*\.data.*0+004 x
0+000 l.*O.*\.data.*0+004 x@VERS\.0
#pass

View File

@ -0,0 +1,6 @@
.data
.type x,@object
.size x,4
x:
.word 12
.symver x, x@VERS.0