bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug libctf/25120] Portability issues in binutils 2.33 due to libctf


From: cvs-commit at gcc dot gnu.org
Subject: [Bug libctf/25120] Portability issues in binutils 2.33 due to libctf
Date: Fri, 26 Jun 2020 15:00:00 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=25120

--- Comment #21 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Nick Alcock <nix@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=e755667f94f2579056fb5210eed525dafebb96f3

commit e755667f94f2579056fb5210eed525dafebb96f3
Author: Nick Alcock <nick.alcock@oracle.com>
Date:   Fri Dec 13 15:19:17 2019 +0000

    libctf, elfcpp, gold: do not assume that <byteswap.h> contains bswap_*

    At least one C library (uclibc-ng) defines some of these only when
    the compiler is GCC.  We might as well test for all three cases and
    handle any of them being missing.

    Very similar code exists in libctf and split between elfcpp and gold:
    fix both.

    (Also sync up elfcpp with a change made to libctf swap.h a few months
    ago: since there is no out-of-line definition of the bswap replacements,
    they should be declared static inline, not just inline, to prevent the
    linker generating out-of-line references to them.)

            PR libctf/25120
    libctf/
            * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls.
            * swap.h (bswap_16): Do not assume that presence of <byteswap.h>
            means this is declared.
            (bswap_32): Likewise.
            (bswap_64): Likewise.
            (bswap_identity_64): Remove, unused.
            * configure: Regenerated.
            * config.h.in: Likewise.
    gold/
            * configure.ac: Check for bswap_16, bswap_32, and bswap_64 decls.
            * configure: Regenerated.
            * config.h.in: Likewise.
    elfcpp/
            * elfcpp_swap.h (bswap_16): Do not assume that presence of
            <byteswap.h> means this is declared.  Make static inline, matching
            recent change to libctf, since there is no non-inline definition
            of these functions.
            (bswap_32): Likewise.
            (bswap_64): Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]