From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4696 invoked by alias); 11 Apr 2006 07:21:52 -0000 Received: (qmail 4663 invoked by uid 48); 11 Apr 2006 07:21:47 -0000 Date: Tue, 11 Apr 2006 07:21:00 -0000 Message-ID: <20060411072147.4662.qmail@sourceware.org> From: "eggert at gnu dot org" To: glibc-bugs-regex@sources.redhat.com In-Reply-To: <20050816000005.1201.eggert@gnu.org> References: <20050816000005.1201.eggert@gnu.org> Reply-To: sourceware-bugzilla@sourceware.org Subject: [Bug regex/1201] regex.h problem when compiling with g++ X-Bugzilla-Reason: CC Mailing-List: contact glibc-bugs-regex-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-regex-owner@sourceware.org X-SW-Source: 2006-04/txt/msg00009.txt.bz2 List-Id: ------- Additional Comments From eggert at gnu dot org 2006-04-11 07:21 ------- I don't know which versions of g++ you're talking about, but the abovementioned bug report from Bruno Haible says that no version of g++ in the 3.2.*, 3.3.*, 3.4.*, 4.0.[01] series supports the [__restrict] syntax, and I just now verified that g++ 4.1.0 does not support it either; please see the shell transcript below. Perhaps you confused __restrict with [__restrict]? This change talks about the latter, not the former. 586-penguin $ g++ -c t.cc t.cc:21: error: expected primary-expression before '__restrict__' t.cc:21: error: expected `]' before '__restrict__' t.cc:21: error: expected ',' or '...' before '__restrict__' 587-penguin $ gcc -c t.cc t.cc:21: error: expected primary-expression before '__restrict__' t.cc:21: error: expected `]' before '__restrict__' t.cc:21: error: expected ',' or '...' before '__restrict__' 588-penguin $ cp t.cc t.c; gcc -c t.c 589-penguin $ gcc --version | sed 1q gcc (GCC) 4.1.0 590-penguin $ g++ --version | sed 1q g++ (GCC) 4.1.0 591-penguin $ cat t.cc #ifndef __restrict # if ! (2 < __GNUC__ || (2 == __GNUC__ && 95 <= __GNUC_MINOR__)) # if defined restrict || 199901L <= __STDC_VERSION__ # define __restrict restrict # else # define __restrict # endif # endif #endif /* gcc 3.1 and up support the [restrict] syntax. */ #ifndef __restrict_arr # if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1) # define __restrict_arr __restrict # else # define __restrict_arr # endif #endif extern int regexec (const int *__restrict __preg, const char *__restrict __string, int __nmatch, int __pmatch[__restrict_arr], int __eflags); -- What |Removed |Added ---------------------------------------------------------------------------- Status|WAITING |NEW http://sourceware.org/bugzilla/show_bug.cgi?id=1201 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.