Bug 9720

Summary: failure when compiling bits/resource.h with -pedantic-errors and without _GNU_SOURCE
Product: glibc Reporter: Kees Cook <kees>
Component: libcAssignee: Ulrich Drepper <drepper.fsp>
Status: RESOLVED FIXED    
Severity: normal CC: glibc-bugs
Priority: P2 Flags: fweimer: security-
Version: 2.8   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:

Description Kees Cook 2009-01-08 03:24:53 UTC
#include <stdlib.h>
#include <sys/wait.h>

int main(){
return EXIT_SUCCESS;
}

cc test.c -o test -pedantic-errors
In file included from /usr/include/sys/resource.h:25,
                 from /usr/include/sys/wait.h:32,
                 from test.c:2:
/usr/include/bits/resource.h:161: error: comma at end of enumerator list

...
  RUSAGE_CHILDREN = -1,
#define RUSAGE_CHILDREN RUSAGE_CHILDREN

#ifdef __USE_GNU
  /* The calling thread.  */
  RUSAGE_THREAD = 1
...

The change to sysdeps/unix/sysv/linux/bits/resource.h was:

revision 1.20
date: 2008/05/01 05:37:45;  author: drepper;  state: Exp;  lines: +9 -1
Define RUSAGE_THREAD and RUSAGE_LWP.
Comment 1 Sourceware Commits 2009-01-08 10:16:28 UTC
Subject: Bug 9720

CVSROOT:	/cvs/glibc
Module name:	libc
Changes by:	jakub@sourceware.org	2009-01-08 10:16:12

Modified files:
	.              : ChangeLog 
	sysdeps/unix/sysv/linux/bits: resource.h 
	sysdeps/unix/sysv/linux/sparc/bits: resource.h 

Log message:
	[BZ #9720]
	* sysdeps/unix/sysv/linux/bits/resource.h (enum __rusage_who): Avoid
	comma after RUSAGE_CHILDREN if not -D_GNU_SOURCE.
	* sysdeps/unix/sysv/linux/sparc/bits/resource.h (enum __rusage_who):
	Likewise.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/libc/ChangeLog.diff?cvsroot=glibc&r1=1.11439&r2=1.11440
http://sourceware.org/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/bits/resource.h.diff?cvsroot=glibc&r1=1.20&r2=1.21
http://sourceware.org/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/sparc/bits/resource.h.diff?cvsroot=glibc&r1=1.10&r2=1.11

Comment 2 Ulrich Drepper 2009-01-09 03:48:55 UTC
Jakub checked in a patch.