From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14303 invoked by alias); 26 Aug 2009 18:27:38 -0000 Received: (qmail 14268 invoked by uid 22791); 26 Aug 2009 18:27:36 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,SPF_PASS X-Spam-Check-By: sourceware.org Received: from mail-ew0-f226.google.com (HELO mail-ew0-f226.google.com) (209.85.219.226) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 26 Aug 2009 18:27:31 +0000 Received: by ewy26 with SMTP id 26so461132ewy.29 for ; Wed, 26 Aug 2009 11:27:28 -0700 (PDT) Received: by 10.210.136.17 with SMTP id j17mr8215118ebd.61.1251311246764; Wed, 26 Aug 2009 11:27:26 -0700 (PDT) Received: from yakj.usersys.redhat.com (nat-pool-brq.redhat.com [62.40.79.66]) by mx.google.com with ESMTPS id 10sm2589eyd.30.2009.08.26.11.27.23 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 26 Aug 2009 11:27:24 -0700 (PDT) Message-ID: <4A957E86.5090902@gnu.org> Date: Wed, 26 Aug 2009 20:32:00 -0000 From: Paolo Bonzini User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.1) Gecko/20090814 Fedora/3.0-2.6.b3.fc11 Lightning/1.0pre Thunderbird/3.0b3 MIME-Version: 1.0 To: Dave Korn CC: Ralf Wildenhues , NightStrike , gcc@gcc.gnu.org, davek@gcc.gnu.org, Mook - , Kai Tietz Subject: Re: r150960 changed ltmain.sh and broke the build References: <4A950CFE.7060709@gmail.com> <4A950C2A.8040204@gnu.org> <4A9510BA.1030704@gmail.com> <20090826174825.GD9074@gmx.de> <4A957BEB.3020806@gmail.com> In-Reply-To: <4A957BEB.3020806@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org X-SW-Source: 2009-08/txt/msg00484.txt.bz2 >> Patterns should not include the separator (unless escaped), even >> as part of a character class. In conformance with Posix, the Cray >> `sed' rejects `s/[^/]*$//': use `s,[^/]*$,,'. >> [...] >> Portable `sed' regular expressions should use `\' only to escape >> characters in the string `$()*.0123456789[\^n{}'. > > > Ah, I didn't read those two conditions as applying simultaneously. Since > the second condition essentially says that you must only ever escape a special > character to make it non-meaningful or a normal character to make it special, > maybe the first condition say something a bit more like ... > >> Patterns should not include the separator (not even escaped, unless >> you fancy having to use a semantically significant metacharacter for >> your separator), even as part of a ... No. The problem is exactly when you use a semantically significant metacharacter for your separator. \* => unportable, a\* may become either a* or a\* \> => unportable, a\> may become either a> or a\> \$ => unportable, a\$ may become either a$ or a\$ \, => unportable, part of \{a,b\} \| => unportable, a\|b may become either a|b or a\|b and the latter may be parsed as alternation \/ => in theory unportable in practice it would be insane to introduce a special sequence \/ \@ \: etc. => in theory unportable, in practice they should be fine. All of these are forbidden by the wording in Autoconf manual. One could add / to the list in the second paragraph, and saying something like "only / should be used as a separator if you wish to escape it, to avoid inadvertent introduction or escaping of regular expression operators". Or even better, it should be left as is. Paolo