On Sat, Apr 2, 2011 at 12:17 PM, Xavier Chantry <chantry.xavier@gmail.com> wrote:
I am just curious, what do we need this flag for ?
Searching commits, it wasn't too hard to find this, although I don't know the full context or relevance. Not sure if it was just a GCC bug at the time? commit d8e88aa0175fd950d007578ea0690952f49247f1 Author: Dan McGee <dan@archlinux.org> Date: Tue Jun 5 17:32:09 2007 -0400 Fix compilation with GCC 4.2.0 'inline' keyword in C99 is not correctly recognized, so compilation fails on the warning it spits. This fixes this. Signed-off-by: Dan McGee <dan@archlinux.org> I also see this in the GCC 4.2.0 release notes, which is surely what I was referring to at the time: In the next release of GCC, 4.3, -std=c99 or -std=gnu99 will direct GCC to handle inline functions as specified in the C99 standard. In preparation for this, GCC 4.2 will warn about any use of non-static inline functions in gnu99 or c99 mode. This new warning may be disabled with the new gnu_inline function attribute or the new -fgnu89-inline command-line option. Also, GCC 4.2 and later will define one of the preprocessor macros __GNUC_GNU_INLINE__ or __GNUC_STDC_INLINE__ to indicate the semantics of inline functions in the current compilation.
Anyway it looks like we could use -std=gnu89 alternatively ? ... which brings to another topic that was brought recently on the ML : I tried to build with that and got a lot of warnings :) ../../lib/libalpm/alpm.h:396:29: warning: commas at the end of enumerator lists are a C99-specific feature [-pedantic] pacman.c:1201:8: warning: ISO C90 forbids mixing declarations and code [-Wdeclaration-after-statement] util.c:797:8: warning: variable declaration in for loop is a C99-specific feature [-pedantic]
How many are there; did you just trim the list down? If it is easy to fix then we might think about doing so. -Dan