Hi Eduardo, On Mon, Jan 1, 2018 at 7:21 PM, Eduardo Valentin <edubez...@gmail.com> wrote: > On Sun, Nov 19, 2017 at 12:04:27PM +0100, Geert Uytterhoeven wrote: >> With gcc-4.1.2: >> >> drivers/thermal/hisi_thermal.c: In function ‘hisi_thermal_probe’: >> drivers/thermal/hisi_thermal.c:530: warning: type qualifiers ignored on >> function return type >> >> Remove the "const" keyword to fix this. > > Interesting. > > I intentionally asked Daniel to include the modifier because sparse > pointed this to me: > > This patch adds this issue to hisi driver (sparse) > > drivers/thermal/hisi_thermal.c:398:24: warning: incorrect type in assignment > (different modifiers) > drivers/thermal/hisi_thermal.c:398:24: expected int ( *platform_probe )( > ... ) > drivers/thermal/hisi_thermal.c:398:24: got void const *
Sparse doesn't like assigning void pointers to function pointers without a cast. > which makes sense to me to be const, given that it is receiving the return > of a function which returns a const void *. > nclude/linux/of_device.h:extern const void *of_device_get_match_data(const > struct device *dev); That const applies to what is returned by of_device_get_match_data() (a const void *), not to what is returned by the returned function (an int). Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds