On Wed, May 19, 2021 at 10:26:22AM +1000, Michael Ellerman wrote: > Guenter Roeck <linux@xxxxxxxxxxxx> writes: > > Ah, sorry. I wasn't aware that the following is valid C code > > > > void f1() > > { > > return f2(); > > ^^^^^^ > > } > > > > as long as f2() is void as well. Confusing, but we live and learn. > > It might be valid, but it's still bad IMHO. > > It's confusing to readers, and serves no useful purpose. And it actually explicitly is undefined behaviour in C90 already (3.6.6.4 in C90, 6.8.6.4 in C99 and later). Segher