[PATCH] Remove unnecessary parentheses around declarator
Brian Inglis
Brian.Inglis@SystematicSw.ab.ca
Fri Jul 23 02:14:41 GMT 2021
On 2021-07-22 15:41, Maxim Blinov wrote:
> riscv64-unknown-elf-g++-11.1.0 regression suite reports the following
> failures for
>
> $ make check-gcc-c++ RUNTESTFLAGS='dg.exp=Wstringop-overflow-6.C'
>
> ```
> FAIL: g++.dg/warn/Wstringop-overflow-6.C -std=gnu++14 (test for excess errors)
> FAIL: g++.dg/warn/Wstringop-overflow-6.C -std=gnu++17 (test for excess errors)
> FAIL: g++.dg/warn/Wstringop-overflow-6.C -std=gnu++2a (test for excess errors)
> UNSUPPORTED: g++.dg/warn/Wstringop-overflow-6.C -std=gnu++98
> ```
>
> The "excess errors" being
>
> ```
> output is In file included from /home/maxim/prj/riscv-upstream/install/riscv64-unknown-elf/include/wchar.h:6,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/cwchar:44,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/bits/postypes.h:40,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/iosfwd:40,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/ios:38,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/ostream:38,
> from /home/maxim/prj/riscv-upstream/build/gcc-stage2/riscv64-unknown-elf/libstdc++-v3/include/iostream:39,
> from /home/maxim/prj/riscv-upstream/gcc-11.1.0/gcc/testsuite/g++.dg/warn/Wstringop-overflow-6.C:6:
> /home/maxim/prj/riscv-upstream/install/riscv64-unknown-elf/include/sys/reent.h:685:11: warning: unnecessary parentheses in declaration of '_sig_func' [-Wparentheses]
> ```
> ---
> newlib/libc/include/sys/reent.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
> index 6e55e1c1f..34aff863a 100644
> --- a/newlib/libc/include/sys/reent.h
> +++ b/newlib/libc/include/sys/reent.h
> @@ -677,7 +677,7 @@ struct _reent
> # endif
>
> /* signal info */
> - void (**(_sig_func))(int);
> + void (**_sig_func)(int);
>
> /* These are here last so that __FILE can grow without changing the offsets
> of the above members (on the off chance that future binary compatibility
>
Such "unnecessary" parentheses are often specified to force functions to
be called and disallow macro substitution.
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]
More information about the Newlib
mailing list