Thread (6 messages) 6 messages, 4 authors, 2016-09-08

Re: [PATCH] qed: add missing header dependencies

flat view

From: Arnd Bergmann <arnd@arndb.de>
Date: 2016-09-07 12:57:57
Also in: lkml

On Wednesday, September 7, 2016 12:31:03 PM CEST Yuval Mintz wrote:
quoted
quoted
While I obviously have no strong objection for including
qed_selftest.h from qed_selftest.c, I'm not sure I understand which C
standard dictates this requirement.
Why should a function definition [not call] be preceded by a prototype?

- When a function is defined in one file and used in another, you want
  both files to include the same header that has the declaration to
  ensure that the types are identical. There are cases where the
  prototype is changed after the fact in an incompatible way, causing
  silent data corruption on some configurations but maybe not on others.
O.k., motivation is clear.
But this really isn't enforced by the ansi-c standard, right?
No, ansi-c doesn't enforce this, and even the regular kernel build
flags don't enable the warning in question, we only get it when
either building with "make C=1" using sparse, or "make W=1" to
enable extra warnings from gcc.

The warning is however really useful, and I hope that we go through
all drivers in the kernel and eliminate these warnings in order
to turn them on by default for all drivers.
Acked-by: Yuval Mintz <redacted>
Thanks,

	Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help