[binutils-gdb/binutils-2_37-branch] PR28106, build of 2.37 fails on FreeBSD and Clang
Alan Modra
amodra@sourceware.org
Tue Jul 20 12:04:56 GMT 2021
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=10b4dbbf281397e2827820c715c39559c7f7a29d
commit 10b4dbbf281397e2827820c715c39559c7f7a29d
Author: Alan Modra <amodra@gmail.com>
Date: Tue Jul 20 18:46:57 2021 +0930
PR28106, build of 2.37 fails on FreeBSD and Clang
https://en.cppreference.com/w/cpp/types/NULL says NULL might be
defined as nullptr.
https://en.cppreference.com/w/cpp/language/reinterpret_cast says
reinterpret_cast can't be used on nullptr.
PR gold/28106
PR gold/27815
* gc.h (gc_process_relocs): Use static_cast in Section_id constructor.
(cherry picked from commit b97bd976233ee4d43c2fe18f6356e62779cbe82d)
Diff:
---
gold/ChangeLog | 6 ++++++
gold/gc.h | 4 ++--
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 79207900dfc..deb0aa504b5 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,9 @@
+2021-07-20 Alan Modra <amodra@gmail.com>
+
+ PR gold/28106
+ PR gold/27815
+ * gc.h (gc_process_relocs): Use static_cast in Section_id constructor.
+
2021-07-18 Nick Clifton <nickc@redhat.com>
* 2.37 release.
diff --git a/gold/gc.h b/gold/gc.h
index 6ebd81f3fd0..4a1368f5abe 100644
--- a/gold/gc.h
+++ b/gold/gc.h
@@ -247,7 +247,7 @@ gc_process_relocs(
if (is_ordinary)
(*secvec).push_back(Section_id(src_obj, dst_indx));
else
- (*secvec).push_back(Section_id(reinterpret_cast<Relobj*>(NULL), 0));
+ (*secvec).push_back(Section_id(static_cast<Relobj*>(NULL), 0));
// If the target of the relocation is an STT_SECTION symbol,
// make a note of that by storing -1 in the symbol vector.
if (lsym.get_st_type() == elfcpp::STT_SECTION)
@@ -329,7 +329,7 @@ gc_process_relocs(
if (is_ordinary && dst_obj != NULL)
(*secvec).push_back(Section_id(dst_obj, dst_indx));
else
- (*secvec).push_back(Section_id(reinterpret_cast<Relobj*>(NULL), 0));
+ (*secvec).push_back(Section_id(static_cast<Relobj*>(NULL), 0));
(*symvec).push_back(gsym);
(*addendvec).push_back(std::make_pair(
static_cast<long long>(symvalue),
More information about the Binutils-cvs
mailing list