diff options
author | Gunther Nikl <gnikl@users.sourceforge.net> | 2018-01-12 13:12:17 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2018-01-12 13:12:17 +0000 |
commit | b5b62006522c6d8d42028754bb1be165f00fe210 (patch) | |
tree | 09f40f43d8fdc20264a7313a4ce0f6cb0195bc5c | |
parent | 5ae5d3fd10c4bb520d767b25c59bf86db764adef (diff) | |
download | gdb-b5b62006522c6d8d42028754bb1be165f00fe210.zip gdb-b5b62006522c6d8d42028754bb1be165f00fe210.tar.gz gdb-b5b62006522c6d8d42028754bb1be165f00fe210.tar.bz2 |
Fix compile time warning building aout targeted architectures.
Occasionally I build an out-of-tree a.out target (m68k-amigaos). After
a system upgrade which included a newer compiler (clang 4) the build
produces warnings like this:
warning: macro expansion producing 'defined' has undefined behavior
[-Wexpansion-to-defined]
This is caused by the macro gas/config/aout_gnu.h:USE_EXTENDED_RELOC.
Since it is in a header file, the warning triggers for several files.
I am unsure what solution is preferable, thus I am suggesting two
patches:
a) keep the offending macro but define it explicitly to 0 and 1
b) replace the macro usage with its value where it is used.
Either patch removes the warning for clang. I did not check with a
recent GCC.
* gas/config/aout_gnu.h (USE_EXTENDED_RELOC): Explicitly
define to 0 and 1. Remove a dangling reference to "AMD 29000"
in a comment.
-rw-r--r-- | gas/ChangeLog | 6 | ||||
-rw-r--r-- | gas/config/aout_gnu.h | 7 |
2 files changed, 10 insertions, 3 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 0b45805..5887b36 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,9 @@ +2018-01-12 Gunther Nikl <gnikl@users.sourceforge.net> + + * gas/config/aout_gnu.h (USE_EXTENDED_RELOC): Explicitly + define to 0 and 1. Remove a dangling reference to "AMD 29000" + in a comment. + 2018-01-11 Igor Tsimbalist <igor.v.tsimbalist@intel.com> * testsuite/i386/avx512_4fmaps_vl-warn.l: Likewise. diff --git a/gas/config/aout_gnu.h b/gas/config/aout_gnu.h index 6d80d5d..f404d1e 100644 --- a/gas/config/aout_gnu.h +++ b/gas/config/aout_gnu.h @@ -32,8 +32,6 @@ */ -#define USE_EXTENDED_RELOC defined(TC_SPARC) - #if defined(TC_SPARC) enum reloc_type { @@ -62,6 +60,9 @@ enum reloc_type NO_RELOC }; +#define USE_EXTENDED_RELOC 1 +#else +#define USE_EXTENDED_RELOC 0 #endif /* TC_SPARC */ #define __GNU_EXEC_MACROS__ @@ -303,7 +304,7 @@ struct nlist /* The following enum and struct were borrowed from SunOS's /usr/include/sun4/a.out.h and extended to handle - other machines. It is currently used on SPARC and AMD 29000. + other machines. It is currently used on SPARC. reloc_ext_bytes is how it looks on disk. reloc_info_extended is how we might process it on a native host. */ |