]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
PR28106, build of 2.37 fails on FreeBSD and Clang
authorAlan Modra <amodra@gmail.com>
Tue, 20 Jul 2021 09:16:57 +0000 (18:46 +0930)
committerAlan Modra <amodra@gmail.com>
Tue, 20 Jul 2021 12:04:32 +0000 (21:34 +0930)
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)

gold/ChangeLog
gold/gc.h

index 79207900dfc2c9c2550004dd4606694693763d59..deb0aa504b5eaaf24ac890734ab0db01a70c05c5 100644 (file)
@@ -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.
index 6ebd81f3fd0eebfd3459c96fa5c0dbd0451c2e46..4a1368f5abe4d54171de76e31df574477a504916 100644 (file)
--- 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),