GNU attribute output on errors
Carlos O'Donell
carlos@redhat.com
Thu Jul 5 14:43:00 GMT 2018
More information about the Binutils mailing list
Thu Jul 5 14:43:00 GMT 2018
- Previous message (by thread): GNU attribute output on errors
- Next message (by thread): GNU attribute output on errors
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 07/04/2018 11:40 PM, Alan Modra wrote: > On Wed, Jul 04, 2018 at 02:49:16PM -0400, Carlos O'Donell wrote: >> My opinion is that you should never omit Tag_GNU_Power_ABI_FP. >> >> It has to be present to distinguish between: >> >> * Don't know? (Old toolchain, no tags). >> >> * Don't care (New toolchain, doesn't matter or both ABIs supported). >> >> The point is to be able to warn on the "Don't know" case so users can >> legitimately see and know which objects need to be recompiled in order to >> better diagnose ABI issues. >> >> Such old objects do exist, or they might be written in assembly, and just >> need to be analyzed and have markup added. > > No existing version of gcc always emits Tag_GNU_Power_ABI_FP. There > are other compilers to consider too. I am sympathetic to other compilers. > That is the cold hard reality that makes a linker warning on "don't > know" impractical. I don't suggest warning by default on the missing tag, but let me reiterate again my position: (1) gcc should always emit the tag. (2) we should have the capability to warn if the tag is missing. The goal here is for Fedora or RHEL to compile all of our objects with (1), thus with everything having markup we can tell developers to turn on the warning in (2) to get better float128 vs. doubledouble ABI warnings. We could clean up the false positives as we find them by fixing up whatever is not marked in the distro. This will help catch linking with old objects that lack the markup, or new objects compiled with compilers that don't markup, and should get double checked by hand. With the current system we silently link in old objects, or objects from other compilers without error and fail at runtime. So when we get a failure like this escalated from support, we literally have to manually inspect all objects from all vendors. When what we would really like is to ask them to compile with a special warning flag, and if anything shows up, tell them they need to review this potentially incompatible "Don't know" objects. Does that make my position clear? The ideal here is that once markup is enabled it should always be on and available. -- Cheers, Carlos.
- Previous message (by thread): GNU attribute output on errors
- Next message (by thread): GNU attribute output on errors
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list