X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; q=dns; s= default; b=YTEVr2F0b38uWX8hE7Bh7az43/Z3aKHvmCf5SxcVVoEM/fSvgbZ2t BdE9MCeVVzYcr6hecRLv8ukdGGlQ9XH524iPIfxiu6Wb9EpCBOEXvepk3p6t14JW S/X3fsY9SMnfemQJfwBf3qoTZ6v2STdht5T3knTN4NRbwM103Blov4= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:to:subject:message-id:reply-to :references:mime-version:content-type:in-reply-to; s=default; bh=RbxOLLfYcdQFUOdfTH/yhYNU5Q0=; b=uQkIG2CulLRoAMJLdRj0q5FHlvKG lbxGui41OVS8WUt6465pI1li5AG3CVZUQw8ikj2FT+POHQ+V8SiLtYnQdcFWc3of nME4JVnQMavLJ7FutA/27+aYdmuLq8MUaIbC+j+hVqbtMFmUQ3f5ulv3hdnMkEqa diNATtdgHfZGVgg= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Spam-SWARE-Status: No, score=-1.8 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.1 Date: Tue, 21 May 2013 18:08:46 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: Inconsistency with coreutils: _Static_assert() Message-ID: <20130521160846.GP2406@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <97bfaa4aab229c706de5732905c96b44 AT denis-excoffier DOT org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <97bfaa4aab229c706de5732905c96b44@denis-excoffier.org> User-Agent: Mutt/1.5.21 (2010-09-15) On May 21 17:59, Denis Excoffier wrote: > Hello, > > I compile coreutils-8.21 under Cygwin (Windows XP). I'm using > gcc-4.8.0 with no problem, except that under _any_ snapshot > posterior to > plain 1.7.18, i obtain the following (with plain 1.7.18, or under > gcc-4.5.3 it works perfectly): > > --------------- > ... > depbase=`echo src/chroot.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\ > gcc -std=gnu99 -I. -I./lib -Ilib -I./lib -Isrc -I./src -g -O2 > -MT src/chroot.o -MD -MP -MF $depbase.Tpo -c -o src/chroot.o > src/chroot.c &&\ > mv -f $depbase.Tpo $depbase.Po > In file included from /usr/include/sys/stdio.h:14:0, > from /usr/include/stdio.h:62, > from ./lib/stdio.h:43, > from src/chroot.c:21: > src/chroot.c: In function 'set_additional_groups': > ./lib/verify.h:181:8: error: expected specifier-qualifier-list > before 'typedef' > _Static_assert (R, DIAGNOSTIC); \ > ^ > ./lib/verify.h:166:16: note: in expansion of macro '_GL_VERIFY_TYPE' > (!!sizeof (_GL_VERIFY_TYPE (R, DIAGNOSTIC))) > ^ > ./lib/verify.h:230:25: note: in expansion of macro '_GL_VERIFY_TRUE' > # define verify_true(R) _GL_VERIFY_TRUE (R, "verify_true (" #R ")") > ^ > src/system.h:247:35: note: in expansion of macro 'verify_true' > #define X2NREALLOC(P, PN) ((void) verify_true (sizeof *(P) != 1), \ > ^ > src/chroot.c:103:16: note: in expansion of macro 'X2NREALLOC' > gids = X2NREALLOC (gids, &n_gids_allocated); > ^ > Makefile:6662: recipe for target 'src/chroot.o' failed > make: *** [src/chroot.o] Error 1 > --------------- > > I have narrowed the problem down to /usr/include/sys/cdefs.h, where > (line 271) you have _Static_assert defined: > #define _Static_assert(x, y) __Static_assert(x, __COUNTER__) > > This definition occurs even under GCC 4.6.0 (and later) where > _Static_assert() indeed works. As a consequence, it no longer works as > expected in coreutils-8.21/lib/verify.h (lines 24 and 181). Sorry, but I don't grok this sentence. Since the cdefs.h version works as expected, it does not work in coreutils' verify.h? Who exactly is wrong, cdefs.h or verify.h? And *what* exactly is wrong with the definition? Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple