Hi I was provided a list of warning options for GCC to consider for future inclusion. I have a local build with all of them added and was looking to see if the warnings were appropriate and valid for us. I would like to get community thoughts on -Winit-self based on the case it flagged in JFFS2.
I reduced the code to this: ======================== #define uninitialized_var(x) x = x int jffs2_block_check_erase(void *, void *jeb, unsigned int *bad_offset); int jffs2_mark_erased_block(void *c, void *jeb) { unsigned int uninitialized_var(bad_offset); return jffs2_block_check_erase(c, jeb, &bad_offset); } ======================== sparc-rtems4.11-gcc -O2 -Wall -Winit-self -c warn.c warn.c: In function 'jffs2_mark_erased_block': warn.c:8:34: warning: 'bad_offset' is used uninitialized in this function [-Wuninitialized] unsigned int uninitialized_var(bad_offset); Essentially this warning is tripped by the programming idiom used to "inform" the compiler that this variable is intentionally uninitialized. The question for the community is: + Is this a case we would like to warn about? + Is this a programming idiom that is trusted enough that we should never use this warning? + Is there a GCC attribute that we should use instead and default to this when on a non-GCC compiler? Basically, do we turn this on or not? If yes, then how to fix the code warned about. If no, I would like some rationale. Thanks. -- Joel Sherrill, Ph.D. Director of Research & Development joel.sherr...@oarcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel