x86/fpu/math-emu: Fix function cast warning
authorArnd Bergmann <arnd@arndb.de>
Mon, 22 Mar 2021 21:48:19 +0000 (22:48 +0100)
committerIngo Molnar <mingo@kernel.org>
Mon, 22 Mar 2021 23:08:02 +0000 (00:08 +0100)
commit279d56abc67ed7568168cb31bf1c7d735efc89a7
tree891e7ae36f9ae40330a4cd52e2b8d20c88c5adbd
parent396a66aa1172ef2b78c21651f59b40b87b2e5e1e
x86/fpu/math-emu: Fix function cast warning

Building with 'make W=1', gcc points out that casting between
incompatible function types can be dangerous:

  arch/x86/math-emu/fpu_trig.c:1638:60: error: cast between incompatible function types from ‘int (*)(FPU_REG *, u_char)’ {aka ‘int (*)(struct fpu__reg *, unsigned char)’} to ‘void (*)(FPU_REG *, u_char)’ {aka ‘void (*)(struct fpu__reg *, unsigned char)’} [-Werror=cast-function-type]
   1638 |         fprem, fyl2xp1, fsqrt_, fsincos, frndint_, fscale, (FUNC_ST0) fsin, fcos
        |                                                            ^

This one seems harmless, but it is easy enough to work around it by
adding an intermediate function that adjusts the return type.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20210322214824.974323-1-arnd@kernel.org
arch/x86/math-emu/fpu_trig.c