Some architectures (ARM) use __bss_start__ instead of __bss_start.
Signed-off-by: Mark Wielaard <mjw(a)redhat.com>
---
src/ChangeLog | 5 +++++
src/elflint.c | 1 +
2 files changed, 6 insertions(+)
diff --git a/src/ChangeLog b/src/ChangeLog
index 7d7b66f..6e219e6 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,8 @@
+2013-02-24 Mark Wielaard <mjw(a)redhat.com>
+
+ * elflint.c (check_symtab): Add __bss_start__ to the list of symbols
+ allowed to have out of section values because of GNU ld bugs.
+
2013-02-06 Mark Wielaard <mjw(a)redhat.com>
* elflint.c (check_symtab): Add __bss_start and __TMC_END__ to the
diff --git a/src/elflint.c b/src/elflint.c
index bc5ed33..acd458b 100644
--- a/src/elflint.c
+++ b/src/elflint.c
@@ -782,6 +782,7 @@ section [%2d] '%s': symbol %zu: function in COMMON section is
nonsense\n"),
&& strcmp (name, "__fini_array_start") != 0
&& strcmp (name, "__fini_array_end") != 0
&& strcmp (name, "__bss_start") != 0
+ && strcmp (name, "__bss_start__") != 0
&& strcmp (name, "__TMC_END__") != 0))
ERROR (gettext ("\
section [%2d] '%s': symbol %zu: st_value out of bounds\n"),
--
1.8.1.2
Show replies by date