I wish there was a way to get the compiler to treat this as a build error rather than a warning. ckfw/session.c references this function without a prototype. This can wreak havoc on some architectures depending on the type assumptions made by the compiler. Patch forthcoming.
Created attachment 219398 [details] [diff] [review] declare function
GCC has the -Werror-implicit-function-declaration flag, which is what you wanted. In fact I was planning to suggest that we use this flag.
I second that motion! use -Werror-implicit-function-declaration, at least on 64-bit builds.
Thanks for the review, Wan-Teh. I agree that we should use that gcc flag on all the platforms that have it. Has it been available in gcc for a long time or is it a recent addition ? Checking in ckfw.h; /cvsroot/mozilla/security/nss/lib/ckfw/ckfw.h,v <-- ckfw.h new revision: 1.9; previous revision: 1.8 done Checking in crypto.c; /cvsroot/mozilla/security/nss/lib/ckfw/crypto.c,v <-- crypto.c new revision: 1.3; previous revision: 1.2 done
Julien, I found -Werror-implicit-function-declaration documented in the oldest version of GCC (2.95.3) on the GCC documentation site: http://gcc.gnu.org/onlinedocs/ See http://gcc.gnu.org/onlinedocs/gcc-2.95.3/gcc_2.html#SEC8, search for "-Werror-implicit-function-declaration". So it should be safe to just use this flag whenever we compile with GCC.