Re: [PATCH/committed 2/2] sim: mn10300: enable -Werror

Simon Marchi via Gdb-patches
2021-06-16T18:01:57Z

On 2021-06-16 1:52 p.m., Mike Frysinger wrote:
> On 16 Jun 2021 11:47, Simon Marchi wrote:
>> On 2021-06-16 11:35 a.m., Simon Marchi via Gdb-patches wrote:
>>> On 2021-06-14 11:47 p.m., Mike Frysinger via Gdb-patches wrote:
>>>> Now that all warnings are fixed in this port, enable -Werror by default.
>>>
>>> I get:
>>>
>>> $ gcc --version
>>> gcc (GCC) 11.1.0
>>> $ ccache gcc -DHAVE_CONFIG_H -DWITH_TARGET_WORD_BITSIZE=32 -DWITH_TARGET_WORD_MSB=31 -DWITH_TARGET_BYTE_ORDER=BFD_ENDIAN_LITTLE -DWITH_HW=1 -DHAVE_DV_SOCKSER -DDEFAULT_INLINE=0 -DWITH_RESERVED_BITS=1 -Wall -Wdeclaration-after-statement -Wpointer-arith -Wpointer-sign -Wno-unused -Wunused-value -Wunused-function -Wno-switch -Wno-char-subscripts -Wmissing-prototypes -Wdeclaration-after-statement -Wempty-body -Wmissing-parameter-type -Wold-style-declaration -Werror -I. -I/home/simark/src/binutils-gdb/sim/mn10300 -I../common -I/home/simark/src/binutils-gdb/sim/mn10300/../common -I../../include -I/home/simark/src/binutils-gdb/sim/mn10300/../../include -I../../bfd -I/home/simark/src/binutils-gdb/sim/mn10300/../../bfd -I../../opcodes -I/home/simark/src/binutils-gdb/sim/mn10300/../../opcodes -I../.. -I/home/simark/src/binutils-gdb/sim/mn10300/../../gnulib/import -I../../gnulib/import -DPOLL_QUIT_INTERVAL=0x20 -g3 -O0 -fsanitize=address -fmax-errors=1 -fdiagnostics-color=always -c -o idecode.o -MT idecode.o -MMD -MP -MF .deps/idecode.Tpo idecode.c
>>> In file included from /home/simark/src/binutils-gdb/sim/mn10300/sim-main.h:47,
>>> from /home/simark/src/binutils-gdb/sim/mn10300/../common/sim-inline.c:33,
>>> from idecode.c:26:
>>> /home/simark/src/binutils-gdb/sim/mn10300/mn10300_sim.h:189:1: error: ‘dw2u64’ defined but not used [-Werror=unused-function]
>>> 189 | dw2u64 (dword data)
>>> | ^~~~~~
>>
>> This fixes it for me, I guess that INLINE is undefined at this point.
>> I don't see any reason not to use "inline".
>
> looks like the failure only comes up with -O0:
>
> #if defined (__GNUC__) && defined (__OPTIMIZE__)
> #define INLINE __inline__
> #else
> #define INLINE /*inline*/
> #endif
>
> we could use INLINE2 here instead as it doesn't check OPTIMIZE.
> -mike
>

OK, I'll let you fix it.

Simon