Why is -Wold-style-definition off by default?

Martin Sebor msebor@gmail.com
Wed Nov 1 23:59:00 GMT 2017

On 10/30/2017 06:20 AM, Antons Suspans wrote:
> Hello!
> Why is -Wold-style-definition off by default and not implied by -Wall,
> -Wextra? The following code might be a marginal example, which is
> compiled without warning about missing prototype and unchecked args
> (gcc-5.3.0 -Wall -Wextra ex.c).

I recently wondered the same thing.  Functions without a prototype
have been deprecated since C99.  As the C committee is starting to
work on C2X it will consider removing (a subset of) deprecated features.
I think it would make sense to include the option in -Wall now, well
ahead of C2X being finalized (it arguably should been done years ago).
If you'd like to see such a change I suggest opening a request in Bugzilla.


> void f(x)
> 	int x;
> { }
> int main(void) {
> 	f(1.0);
> 	return 0;
> }
> Thanks,
> Antons

More information about the Gcc-help mailing list