[ANNOUNCE]: clang compiling ports

Stephen Montgomery-Smith stephen at missouri.edu
Mon Jun 20 19:09:25 UTC 2011

On 06/20/2011 12:59 PM, Chuck Swiger wrote:
> On Jun 20, 2011, at 9:35 AM, Stephen Montgomery-Smith wrote:
>> What I would like is a primer on how to suppress all the warnings and errors created by K&R code.
> OK:
>     http://clang.llvm.org/docs/UsersManual.html#cl_diagnostics

Yes, I did see that.

> Of course, you can only suppress warnings; you cannot suppress actual errors.
> clang doesn't currently support -traditional aka pure K&R C.  It's possible that compiling with -ansi aka -std=c89 might help-- at least you should get -Wno-implicit-function-declaration and maybe -Wno-implicit-int.
>> Also, why is this an error:
>> error: non-void function 'top_button_cross' should return a value [-Wreturn-type]
>> when most everything else is a warning.  (See http://pointyhat.freebsd.org/errorlogs/amd64-errorlogs/e.9-exp.20110616185105/xppaut-5.99.log.)
> top_button_cross() probably should be declared as returning void.  What's presumably happening is that it gets a default return type of int since it doesn't otherwise specify a return type, and then fails to have an explicit return, which is an error.

Is a return with no value, from a function of type int, meant to be an 
error in K&R code?

If so, I will change the code so that "return" becomes "return 0".

Otherwise, I think the clang compiler should be changed so that this is 
a warning, not an error.  Or at least an error that can be switched off 
with -Wno-return-type.

I will say that I have no desire to put ansii patches into working K&R code.


More information about the freebsd-ports mailing list