From debbugs-submit-bounces@debbugs.gnu.org Sun May 06 06:40:40 2012 Received: (at submit) by debbugs.gnu.org; 6 May 2012 10:40:40 +0000 Received: from localhost ([127.0.0.1]:37872 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SQytE-0003Wt-CE for submit@debbugs.gnu.org; Sun, 06 May 2012 06:40:37 -0400 Received: from eggs.gnu.org ([208.118.235.92]:37883) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SQyt8-0003Wd-88 for submit@debbugs.gnu.org; Sun, 06 May 2012 06:40:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SQyrB-0001HZ-8H for submit@debbugs.gnu.org; Sun, 06 May 2012 06:38:26 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:39314) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SQyrB-0001HS-2u for submit@debbugs.gnu.org; Sun, 06 May 2012 06:38:25 -0400 Received: from eggs.gnu.org ([208.118.235.92]:45899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SQyr9-0002ng-FV for bug-automake@gnu.org; Sun, 06 May 2012 06:38:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SQyr7-0001GT-NB for bug-automake@gnu.org; Sun, 06 May 2012 06:38:22 -0400 Received: from mail-bk0-f41.google.com ([209.85.214.41]:54738) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SQyr3-0001DH-Dl; Sun, 06 May 2012 06:38:17 -0400 Received: by bkcjm19 with SMTP id jm19so3927786bkc.0 for ; Sun, 06 May 2012 03:38:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=2b96airFelNq+FnQ8xNxkLe0CmLiLVCQmeEE+74xpE0=; b=NLEqOayzR7MVrVm61eARu6NyxmmpnSE+i8Ob9yPIMUIdsuhyBYqkqwpujY4PmDvaMW DvTGBHjN93U8NoEPRDQfGOH72cQhHG/2hFMX+otSRKnkVDHkq2lXAGEHKGmKq93r3Irr LYFg81NklaQphN/pIhCGLnKOQ1AjDIi+0f6Dw85fEaEetGvsjD+Y+sBXEktHxyG7hPid QtoMqyOVq5KcTai73ed3bslbU3J1CYeb7g4hckM554Lvz4OJmOw5kA7MRJDgi8xQ4twK vjtYXEyjTgu2XydhDl+THbERYy7MRPlgz5RP5WIne3ZgXhXtrDkdoRxabgN+X4kX9JUO eNNg== Received: by 10.205.119.130 with SMTP id fu2mr4286555bkc.120.1336300694657; Sun, 06 May 2012 03:38:14 -0700 (PDT) Received: from [87.0.95.149] (host149-95-dynamic.0-87-r.retail.telecomitalia.it. [87.0.95.149]) by mx.google.com with ESMTPS id n19sm26092234bkv.14.2012.05.06.03.38.11 (version=SSLv3 cipher=OTHER); Sun, 06 May 2012 03:38:13 -0700 (PDT) Message-ID: <4FA65491.2050002@gmail.com> Date: Sun, 06 May 2012 12:38:09 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: Akim Demaille Subject: Get rid of ylwrap, and simplify yacc/lex rules (was: Re: FYI: maint: fix the generation of the synclines for bison's parser) References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit Cc: bug-automake@gnu.org, Bison Patches X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) Severity: wishlist [Adding bug-automake in CC:] Hi Akim. On 05/06/2012 11:20 AM, Akim Demaille wrote: > This is taken from master. I work with a VPATH build, and the > generated synclines are very wrong. Probably something that > ylwrap should handle better btw. > Or maybe we could get rid of ylwrap and assume yacc/lex support the '-o' option. After all: - the yacc- and lex-generated files are automatically distributed, so only the maintainers should be expected to regenerate them; - the sytem yacc on OpenBSD and NetBSD (not surre yet about FreeBSD, will check) support the '-o' option as well; and their lex too, since its flex - supporting proprietary yacc and lex should be low-priority IMHO. Might this be something to consider for Automake 1.13? Regards, Stefano From debbugs-submit-bounces@debbugs.gnu.org Tue May 08 06:51:02 2012 Received: (at submit) by debbugs.gnu.org; 8 May 2012 10:51:03 +0000 Received: from localhost ([127.0.0.1]:40555 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRi0U-0002i0-IJ for submit@debbugs.gnu.org; Tue, 08 May 2012 06:51:02 -0400 Received: from eggs.gnu.org ([208.118.235.92]:55066) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRi0S-0002hX-I9 for submit@debbugs.gnu.org; Tue, 08 May 2012 06:51:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SRhyG-0005QJ-Dc for submit@debbugs.gnu.org; Tue, 08 May 2012 06:48:49 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:48358) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRhyG-0005Pd-6X for submit@debbugs.gnu.org; Tue, 08 May 2012 06:48:44 -0400 Received: from eggs.gnu.org ([208.118.235.92]:33034) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRhy9-00042X-PN for bug-automake@gnu.org; Tue, 08 May 2012 06:48:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SRhy3-000560-1p for bug-automake@gnu.org; Tue, 08 May 2012 06:48:37 -0400 Received: from mail-wi0-f171.google.com ([209.85.212.171]:55587) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRhy2-000520-Oo; Tue, 08 May 2012 06:48:30 -0400 Received: by wibhj13 with SMTP id hj13so358857wib.12 for ; Tue, 08 May 2012 03:48:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer; bh=VjWFfVhz5x8dFqHJm7Q+wZXc75p5V4mR846HPJglzn0=; b=vpntRyEFBuAc1BvfKSBsAHT/C10MYDxM4IYGdatoHLJiEuRT6KQHdduZpGeUPZrMDD E+z4h9melDcK4Rkb1avw7vba8PVqM3Awvo0dV4U41iOOem1iN4Mcw8nuT37LN+aJ6cSu UKvx7Y5OuUe8+u9wmGfYY+Njmk2EOfl64x4JNBrf+2YyhaPxoqE/h3QuSYp9Eb9tof9Y MswbtnhzceqlR2Jzn+TiwtydLLJ9uySgMhme2Z2VhOtljX+GUI1CN0s092oApBR1Uu/o 8tE8IswHq/4PrMfxG/rQwHUiN0CckGov6czf34Dl4LDLNZmKpAofEi70o3Ee9hHXzLnC ewWg== Received: by 10.216.135.225 with SMTP id u75mr658812wei.97.1336474108076; Tue, 08 May 2012 03:48:28 -0700 (PDT) Received: from [192.168.0.10] (mna75-4-82-225-76-247.fbx.proxad.net. [82.225.76.247]) by mx.google.com with ESMTPS id h8sm44678954wix.4.2012.05.08.03.48.25 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 08 May 2012 03:48:26 -0700 (PDT) Subject: Re: Get rid of ylwrap, and simplify yacc/lex rules (was: Re: FYI: maint: fix the generation of the synclines for bison's parser) Mime-Version: 1.0 (Apple Message framework v1257) Content-Type: text/plain; charset=iso-8859-1 From: Akim Demaille In-Reply-To: <4FA65491.2050002@gmail.com> Date: Tue, 8 May 2012 12:48:24 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <95EC59CC-E5D6-45C7-BB1C-269376F19CAD@gmail.com> References: <4FA65491.2050002@gmail.com> To: Stefano Lattarini X-Mailer: Apple Mail (2.1257) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit Cc: bug-automake@gnu.org, Bison Patches X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) Le 6 mai 2012 =E0 12:38, Stefano Lattarini a =E9crit : > Severity: wishlist >=20 > [Adding bug-automake in CC:] >=20 > Hi Akim. >=20 > On 05/06/2012 11:20 AM, Akim Demaille wrote: >> This is taken from master. I work with a VPATH build, and the >> generated synclines are very wrong. Probably something that >> ylwrap should handle better btw. On second thought, this is unfair to ylwrap. The issue is rather that bison issues synclines which are relative the cwd instead of relative to the path of the output file. /tmp $ echo "%% exp: 'a' { action(); };" > in/in.y /tmp $ bison in/in.y -o out/out.c /tmp $ grep '^#line' out/out.c #line 70 "out/out.c" #line 105 "out/out.c" #line 1 "in/in.y" #line 1310 "out/out.c" #line 1315 "out/out.c" Both "out/out.c" and "in/in.y" are wrong. They should be "out.c" and "../in/in.y". This is why bison gets (in my VPATH-build where builddir is two levels down inside srcdir): #line 277 "parse-gram.y" #line 2271 "../../../src/parse-gram.c" with a properly computed relative path, it should be "parse-gram.c". This is what the patch was fixing. This is painful and regularly results in Emacs not being able to find the file where the error occurred. This should be fixed before 2.5.1 imho. I'll see if gnulib offers something to compute relative paths. > Or maybe we could get rid of ylwrap and assume yacc/lex support the > '-o' option. After all: >=20 > - the yacc- and lex-generated files are automatically distributed, > so only the maintainers should be expected to regenerate them; >=20 > - the sytem yacc on OpenBSD and NetBSD (not surre yet about FreeBSD, > will check) support the '-o' option as well; and their lex too, > since its flex >=20 > - supporting proprietary yacc and lex should be low-priority IMHO. >=20 > Might this be something to consider for Automake 1.13? I have no strong opinion about this. But I like simplifications :)= From debbugs-submit-bounces@debbugs.gnu.org Tue May 08 07:09:52 2012 Received: (at submit) by debbugs.gnu.org; 8 May 2012 11:09:52 +0000 Received: from localhost ([127.0.0.1]:40587 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRiIh-00038L-7G for submit@debbugs.gnu.org; Tue, 08 May 2012 07:09:51 -0400 Received: from eggs.gnu.org ([208.118.235.92]:50093) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRiIf-00037n-K7 for submit@debbugs.gnu.org; Tue, 08 May 2012 07:09:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SRiGW-0006Nq-Sw for submit@debbugs.gnu.org; Tue, 08 May 2012 07:07:38 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=unavailable version=3.3.2 Received: from lists.gnu.org ([208.118.235.17]:51081) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRiGW-0006Nj-Mg for submit@debbugs.gnu.org; Tue, 08 May 2012 07:07:36 -0400 Received: from eggs.gnu.org ([208.118.235.92]:46075) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRiGR-0006mF-A5 for bug-automake@gnu.org; Tue, 08 May 2012 07:07:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SRiGN-0006HU-Pl for bug-automake@gnu.org; Tue, 08 May 2012 07:07:30 -0400 Received: from mail-bk0-f41.google.com ([209.85.214.41]:34852) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SRiGN-0006GR-GP; Tue, 08 May 2012 07:07:27 -0400 Received: by bkcjm19 with SMTP id jm19so5739839bkc.0 for ; Tue, 08 May 2012 04:07:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=eH3Kz4NfnFuf4RWVtn6wsFK6Y3uLqUl7zvQzZGTg/kI=; b=IDxgkplq8DAaC2M1zfzYkZ0f2CVohdy8R5Rg2juCeGu1sruDjN2kKR+swVeEhrTB6q P7ONWAoLaFsdYBYhQ8n10xR3ivdrqbOtneif9QaA4eWZLN5MnGCW3wt2xhNWAwzaNGke e8/cQNWmZWD6rKrvu+oYQojCYucekWKuRqcP9mMUReEAR87hv7T0dLQfjK8z77FNtRlW vKeXQEBxl3JHQC7s1Mdxj5dXY0bEy7pEIqbHs7s2KOiXuPYDGoSO4UbH55F4yuITY7dR OqiNARDqRaDdXGPOt3mtwItSlg3uow5+jKnhV/Drtydkel1LtVA6/YfSmUXH0qmUeVNu /SvA== Received: by 10.204.155.131 with SMTP id s3mr1697431bkw.124.1336475244736; Tue, 08 May 2012 04:07:24 -0700 (PDT) Received: from [82.56.31.167] (host167-31-dynamic.56-82-r.retail.telecomitalia.it. [82.56.31.167]) by mx.google.com with ESMTPS id f11sm38077940bkw.6.2012.05.08.04.07.21 (version=SSLv3 cipher=OTHER); Tue, 08 May 2012 04:07:23 -0700 (PDT) Message-ID: <4FA8FE67.5070008@gmail.com> Date: Tue, 08 May 2012 13:07:19 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: Akim Demaille Subject: Re: Get rid of ylwrap, and simplify yacc/lex rules References: <4FA65491.2050002@gmail.com> <95EC59CC-E5D6-45C7-BB1C-269376F19CAD@gmail.com> In-Reply-To: <95EC59CC-E5D6-45C7-BB1C-269376F19CAD@gmail.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 208.118.235.17 X-Spam-Score: -6.1 (------) X-Debbugs-Envelope-To: submit Cc: bug-automake@gnu.org, Bison Patches X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.1 (------) On 05/08/2012 12:48 PM, Akim Demaille wrote: > > On second thought, this is unfair to ylwrap. The issue is > rather that bison issues synclines which are relative the > cwd instead of relative to the path of the output file. > > [SNIP] > Well, good for us then :-) >> Or maybe we could get rid of ylwrap and assume yacc/lex support the >> '-o' option. After all: >> >> - the yacc- and lex-generated files are automatically distributed, >> so only the maintainers should be expected to regenerate them; >> >> - the sytem yacc on OpenBSD and NetBSD (not surre >> s/surre/sure/ here, of course. >> yet about FreeBSD, will check) >> It seems to be the case with FreeBSD (8.2) as well :-) >> support the '-o' option as well; and their lex too, since its flex >> And here, s/its/it's/; what a sloppy typing I did :-( >> - supporting proprietary yacc and lex should be low-priority IMHO. >> >> Might this be something to consider for Automake 1.13? > > I have no strong opinion about this. But I like simplifications :) > Me too (at least when the maintenance of the simplified code base is up to me ;-) Still, there's a feature of ylwrap I'm going to miss, i.e., the fact that the timestamp of the header file generated with 'yacc -d' is not updated if its content is not changed. This could probably be saved by inlining the relevant part of the ylwrap logic in the new Makefile rules though. Or would be worth to add such a logic to bison proper? Regards, Stefano From debbugs-submit-bounces@debbugs.gnu.org Tue May 08 10:23:29 2012 Received: (at 11419) by debbugs.gnu.org; 8 May 2012 14:23:29 +0000 Received: from localhost ([127.0.0.1]:41266 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRlK5-0008Pd-9K for submit@debbugs.gnu.org; Tue, 08 May 2012 10:23:29 -0400 Received: from mx1.redhat.com ([209.132.183.28]:24999) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SRlK2-0008PQ-7m for 11419@debbugs.gnu.org; Tue, 08 May 2012 10:23:28 -0400 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q48ELDRv029624 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 8 May 2012 10:21:13 -0400 Received: from [10.3.113.57] (ovpn-113-57.phx2.redhat.com [10.3.113.57]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id q48ELCK3028415; Tue, 8 May 2012 10:21:12 -0400 Message-ID: <4FA92BD1.6060206@redhat.com> Date: Tue, 08 May 2012 08:21:05 -0600 From: Eric Blake Organization: Red Hat User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20120430 Thunderbird/12.0.1 MIME-Version: 1.0 To: Akim Demaille Subject: Re: bug#11419: Get rid of ylwrap, and simplify yacc/lex rules References: <4FA65491.2050002@gmail.com> <95EC59CC-E5D6-45C7-BB1C-269376F19CAD@gmail.com> In-Reply-To: <95EC59CC-E5D6-45C7-BB1C-269376F19CAD@gmail.com> X-Enigmail-Version: 1.4.1 OpenPGP: url=http://people.redhat.com/eblake/eblake.gpg Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------enig8F11362940A25454D34CA074" X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Spam-Score: -6.9 (------) X-Debbugs-Envelope-To: 11419 Cc: bug-gnulib , 11419@debbugs.gnu.org, Stefano Lattarini , bison-patches@gnu.org, Coreutils X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig8F11362940A25454D34CA074 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable [adding coreutils, bug-gnulib] On 05/08/2012 04:48 AM, Akim Demaille wrote: > This is why bison gets (in my VPATH-build where builddir is two > levels down inside srcdir): >=20 > #line 277 "parse-gram.y" > #line 2271 "../../../src/parse-gram.c" >=20 > with a properly computed relative path, it should be > "parse-gram.c". This is what the patch was fixing. >=20 > This is painful and regularly results in Emacs not being able > to find the file where the error occurred. >=20 > This should be fixed before 2.5.1 imho. I'll see if gnulib > offers something to compute relative paths. Coreutils has code to compute relative paths; used by both 'realpath' and 'ln'; maybe it's time to graduate that to a full-blown gnulib module now that we want to use it elsewhere. --=20 Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --------------enig8F11362940A25454D34CA074 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBCAAGBQJPqSvRAAoJEKeha0olJ0NqO2QH/idnSXEPwWwk3eI4XZGR/pzM SX0Z/j1KSQECMOToOy2dFLPjqp9eE9bCCRewUzx/tU6iUfmRgS36iu/6pTyQm2Bs n4+VpI+unC0EfryGNAmKuIkkCZi/Pu43yOZIfCiBB+SragE6BOQdw8dDEs1+LGV6 m/a821+prGt6O8FgUaMNvBQgixRBaGc8Hi9TH9SRQmiLnbBRwcRJ5Nyf9RUqIrSH r5SE9CI6EehZkGJHvCw44pG/8c+WCDCOXURkultOzZOUTAcxKM3fuilBJhDPzYBO OjTBtm6/vQbslrleFUFVkYyZJgJG44SSWM2k+JcMRCXJblitqUCmEWFDmXuo2+Q= =Bbx/ -----END PGP SIGNATURE----- --------------enig8F11362940A25454D34CA074-- From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 25 05:34:30 2012 Received: (at 11419) by debbugs.gnu.org; 25 Jun 2012 09:34:30 +0000 Received: from localhost ([127.0.0.1]:56118 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sj5gg-00033Z-84 for submit@debbugs.gnu.org; Mon, 25 Jun 2012 05:34:30 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:63828) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sj5gZ-00033M-MK for 11419@debbugs.gnu.org; Mon, 25 Jun 2012 05:34:25 -0400 Received: by bkty8 with SMTP id y8so2879365bkt.3 for <11419@debbugs.gnu.org>; Mon, 25 Jun 2012 02:30:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=CyPvgfdVmHNNqHbRIgh2pmAOWCXyYHSULFfgDzv4r8Y=; b=rzwTR7B2qA8LKN0J3p+WCsh2W92bO6USljEsQ/X95VPgei8fpRdQ5802BcDnAAKws5 RZnw9oWmRhACUUngPBTYMRww2St61JlLXjYjuYf546uW+hnA0xs+8rwBgzBdLs88CQlo DR3c9Y0UDjlNtLHNPu0CKpvHeCUIS3UHfnW99PkUF12KLdHoIeJ5zqigApxR1LGwcav5 RJqJY/m8rcHpLFWnl0t0n3+/Retkbq9aLLfvzFd4yt+NiwnDoGVcGc9d+pX4xNeyV1FY y0HT0IxjkxUEw/FQNq2MNArBSI6IIvCOFj4NZ+nsFzUuLy+MXyJRfxky2/CGenwSTIZt slyw== Received: by 10.204.133.220 with SMTP id g28mr3764518bkt.54.1340616624061; Mon, 25 Jun 2012 02:30:24 -0700 (PDT) Received: from [87.4.96.175] (host175-96-dynamic.4-87-r.retail.telecomitalia.it. [87.4.96.175]) by mx.google.com with ESMTPS id gm18sm45628510bkc.7.2012.06.25.02.30.20 (version=SSLv3 cipher=OTHER); Mon, 25 Jun 2012 02:30:22 -0700 (PDT) Message-ID: <4FE82FAA.7050203@gmail.com> Date: Mon, 25 Jun 2012 11:30:18 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: Akim Demaille Subject: Re: ylwrap does not rename y.tab.h in y.tab.c References: <80AD8426-5BCA-4A0A-9529-EF786DC48AC9@lrde.epita.fr> <4FCFCDA2.9080206@gnu.org> <9733E760-8220-445A-8AB9-D7A19247A805@lrde.epita.fr> <4FD236E7.6080609@gnu.org> <554D01B6-ABD2-4998-A40F-6B13793DBF72@lrde.epita.fr> <79287948-0A36-42A5-B052-FE87C6736B52@lrde.epita.fr> <779B1E9A-9167-4C3B-BB2B-3A767DFEE80F@lrde.epita.fr> <58E47CF9-C91C-4121-A10C-46F94049F2B2@lrde.epita.fr> In-Reply-To: <58E47CF9-C91C-4121-A10C-46F94049F2B2@lrde.epita.fr> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 11419 Cc: Paul Eggert , Bison Patches , "automake-patches@gnu.org" , Bison Bugs , 11419@debbugs.gnu.org, Bruce Korb , Akim Demaille X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Reference: On 06/25/2012 10:25 AM, Akim Demaille wrote: > > Le 20 juin 2012 à 07:26, Akim Demaille a écrit : > >> >> Le 15 juin 2012 à 13:34, Akim Demaille a écrit : >> >>> I installed it, and some more tests, in maint, as follows. >> >>> >>> From 0f11eec272453d5646e5aeda135650b4fb8ac33d Mon Sep 17 00:00:00 2001 >>> From: Akim Demaille >>> Date: Tue, 12 Jun 2012 16:15:14 +0200 >>> Subject: [PATCH 1/2] yacc.c: instead of duplicating y.tab.h inside y.tac.c, include it. >> >> We have a problem with this change (which can be seen if >> you make check in master): as far as I can tell, ylwrap, >> which goes via y.tab.c and y.tab.h, does _not_ change the >> occurrences of y.tab.h in y.tab.c. So in the end, the >> parser implementation file foo.c includes y.tab.h instead of >> foo.h. >> >> This is Automake 1.12.1, ylwrap 2011-08-25.18. >> >> Because of this, it is unclear to me whether we can leave that >> change, users would face the same issue as bison-master :( >> And it does not seem acceptable that Bison 2.6 mandates Automake >> 1.12.2 or whatever. >> >> Any suggestion? In particular a workaround (for Makefile.am) >> which would work for both older and newer Automakes. > > Well, I guess I must step back. I installed what follows > in maint. > Sigh, advancement on Bison kept back by the fact that Automake used to bend over backwards to support inferior yacc implementation that today hardly anybody is using to build an autoconfiscated package. It's now definitely time to implement a 'no-ylwrap' option that prevents the use of 'ylwrap'. IMHO this option should go in Automake 1.12.2, become the default in Automake 1.13, and the only supported mode of operation in Automake 1.14 (unless real users object). Patches will follow in the next days. > What are the versions of Automake to fix? Should 1.11.* > be addressed too? > I don't think it's worth. People that will want their generated Makefile.in working correctly with new Bison will upgrade to Automake 1.12.2. > I have no idea how wide spread 1.12 is. > Well, if it's not much widespread, this new feature will help it become so ;-) Thanks, Stefano From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 25 10:05:47 2012 Received: (at 11419) by debbugs.gnu.org; 25 Jun 2012 14:05:47 +0000 Received: from localhost ([127.0.0.1]:57363 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sj9v7-0004fl-Bq for submit@debbugs.gnu.org; Mon, 25 Jun 2012 10:05:47 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:40329) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Sj9uz-0004fV-08 for 11419@debbugs.gnu.org; Mon, 25 Jun 2012 10:05:35 -0400 Received: by bkty8 with SMTP id y8so3111761bkt.3 for <11419@debbugs.gnu.org>; Mon, 25 Jun 2012 07:01:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; bh=h18ldZRJjQ+6oCM3BnEx/hHiYWSBSQsbltvat6IWNfU=; b=x94awwe8xhhZct4/tSzsBDEiDIEu8LEiboGWV5NcJsk+asCMujNtGBmlPCQ/EOQHLT wSw1CruBCwpENFRCkwCSThEg0DPfXSWUIdKC/rc6A9qqvq/ICWjT0IhYmGhHeOsaazo1 XDBsMpsX6eqae1WpSB5w5dyp3DqjNcE0Z8y8bgs9P7oGvbVvwUim+AfTz6lK0koQN97H caoMJgBDfzYfPkvBB89L7h0TIT5Tt2zDdUQxpOEwseSKct+OFwyPyNZ3jr2mAwfdGCGy CvulC807GqXyDBEdE+jTLoVzbDJ/rf2Cr7DvLEuSHf9dMVgmJK1hPmjn6RvLwztDQuEb oeWQ== Received: by 10.204.128.149 with SMTP id k21mr3997472bks.42.1340632892557; Mon, 25 Jun 2012 07:01:32 -0700 (PDT) Received: from localhost.localdomain (host175-96-dynamic.4-87-r.retail.telecomitalia.it. [87.4.96.175]) by mx.google.com with ESMTPS id fu14sm46692848bkc.13.2012.06.25.07.01.29 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 25 Jun 2012 07:01:31 -0700 (PDT) From: Stefano Lattarini To: automake-patches@gnu.org Subject: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script Date: Mon, 25 Jun 2012 16:01:13 +0200 Message-Id: <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <4FE82FAA.7050203@gmail.com> References: <4FE82FAA.7050203@gmail.com> X-Spam-Score: -0.9 (/) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , Akim Demaille , bug-bison@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Bruce Korb , Akime Demaille X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.2 (/) When used with good yacc and lex implementations, like Flex and GNU Bison, the 'ylwarp' script (meant to work around the deficiencies of older or inferior yacc and lex implementations) creates far more problems and annoyances than it solves. For more details, just see the huge amount of related bug reports and complaints: So we now offer an option ('no-ylwrap') to disable the use of ylwrap in the Automake-generated rules. We also offer the inverse option 'ylwrap', to force the use of the 'ylwrap' script; it is a no-op right now, but its use will allow us to switch the default in Automake 1.13 (i.e., we will start *not* using ylwrap by default) while still supporting users who want to continue using ylwrap. * lib/Automake/Options.pm (_is_valid_easy_option, _process_option_list): Recognize the options 'no-ylwrap' and 'ylwrap'. * automake.in (handle_languages): Pass the new transform '?USE-YLWRAP?' to the processed $rule_file; this transform expands to false if the 'no-ylwrap' option is used, and to true otherwise. (yacc_lex_finish_helper): Don't require nor copy the 'ylwrap' script if the 'no-ylwrap' option is active. * lib/am/lex.am, lib/am/yacc.am: Simplify rules not to use the 'ylwrap' script if the '?USE-YLWRAP?' transform is true. Related refactorings. * t/lex-multiple.sh: New test, checks that if we get ylwrap out of the way, we can build a program using several lexers at once. * t/list-of-tests.mk (handwritten_TESTS): Add it. * t/yacc-bison-skeleton.sh: Use the 'no-ylwrap' option. This allow the test to pass, at last! * t/yacc-bison-skeleton-cxx.sh: Likewise. * t/list-of-tests.mk (XFAIL_TESTS): Remove those two tests. Signed-off-by: Stefano Lattarini --- Here's the first step in our revamping of yacc/lex rules. It's quite rough and has probably suboptimal semantics, but it will offer a simple and quick way out for all those users which were fighting against ylwrap. So, OK for maint? I will follow up with a documentation patch (and a NEWS update) if this change is accepted. Regards, Stefano automake.in | 6 ++- lib/Automake/Options.pm | 6 +++ lib/am/lex.am | 14 ++++-- lib/am/yacc.am | 14 ++++-- t/lex-multiple.sh | 106 ++++++++++++++++++++++++++++++++++++++++++ t/list-of-tests.mk | 3 +- t/yacc-bison-skeleton-cxx.sh | 5 +- t/yacc-bison-skeleton.sh | 1 + 8 files changed, 143 insertions(+), 12 deletions(-) create mode 100755 t/lex-multiple.sh diff --git a/automake.in b/automake.in index cfc48bf..939c303 100644 --- a/automake.in +++ b/automake.in @@ -1472,7 +1472,9 @@ sub handle_languages COMPILE => '$(' . $lang->compiler . ')', LTCOMPILE => '$(LT' . $lang->compiler . ')', -o => $output_flag, - SUBDIROBJ => !! option 'subdir-objects'); + SUBDIROBJ => !! option 'subdir-objects', + 'USE-YLWRAP' => ! option 'no-ylwrap', + ); } # Now include code for each specially handled object with this @@ -1549,6 +1551,7 @@ sub handle_languages COMPILE => $obj_compile, LTCOMPILE => $obj_ltcompile, -o => $output_flag, + 'USE-YLWRAP' => ! option 'no-ylwrap', %file_transform); } @@ -6084,6 +6087,7 @@ sub lang_lex_target_hook # This is a helper for both lex and yacc. sub yacc_lex_finish_helper { + return if option 'no-ylwrap'; return if defined $language_scratch{'lex-yacc-done'}; $language_scratch{'lex-yacc-done'} = 1; diff --git a/lib/Automake/Options.pm b/lib/Automake/Options.pm index 2f977bd..920a62f 100644 --- a/lib/Automake/Options.pm +++ b/lib/Automake/Options.pm @@ -285,6 +285,7 @@ sub _is_valid_easy_option ($) no-installinfo no-installman no-texinfo.tex + no-ylwrap nostdinc readme-alpha std-options @@ -333,6 +334,11 @@ sub _process_option_list (\%@) # This is a little of an hack, but good enough for the moment. delete $options->{'parallel-tests'}; } + elsif ($_ eq 'ylwrap') + { + # This is a little of an hack, but good enough for the moment. + delete $options->{'no-ylwrap'}; + } elsif (/^filename-length-max=(\d+)$/) { delete $options->{$_}; diff --git a/lib/am/lex.am b/lib/am/lex.am index 7467f4f..19555b0 100644 --- a/lib/am/lex.am +++ b/lib/am/lex.am @@ -23,8 +23,14 @@ endif %?MAINTAINER-MODE% ?GENERIC?%EXT%%DERIVED-EXT%: ?!GENERIC?%OBJ%: %SOURCE% -?GENERIC? %VERBOSE%$(am__skiplex) $(SHELL) $(YLWRAP) %SOURCE% $(LEX_OUTPUT_ROOT).c %OBJ% -- %COMPILE% -?!GENERIC? %VERBOSE% \ -?!GENERIC??DIST_SOURCE? $(am__skiplex) \ +if %?GENERIC% + %VERBOSE%$(am__skiplex) \ +?USE-YLWRAP? $(SHELL) $(YLWRAP) %SOURCE% $(LEX_OUTPUT_ROOT).c %OBJ% -- %COMPILE% +?!USE-YLWRAP? %COMPILE% -o $@ %SOURCE% +else !%?GENERIC% + %VERBOSE% \ +?DIST_SOURCE? $(am__skiplex) \ ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%. -?!GENERIC? $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% $(LEX_OUTPUT_ROOT).c %OBJ% -- %COMPILE% +?USE-YLWRAP? $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% $(LEX_OUTPUT_ROOT).c %OBJ% -- %COMPILE% +?!USE-YLWRAP? %COMPILE% -o $@ `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% +endif !%?GENERIC% diff --git a/lib/am/yacc.am b/lib/am/yacc.am index e74259f..77af963 100644 --- a/lib/am/yacc.am +++ b/lib/am/yacc.am @@ -43,8 +43,14 @@ endif %?FIRST% ?GENERIC?%EXT%%DERIVED-EXT%: ?!GENERIC?%OBJ%: %SOURCE% -?GENERIC? %VERBOSE%$(am__skipyacc) $(SHELL) $(YLWRAP) %SOURCE% y.tab.c %OBJ% y.tab.h `echo %OBJ% | $(am__yacc_c2h)` y.output %BASE%.output -- %COMPILE% -?!GENERIC? %VERBOSE% \ -?!GENERIC??DIST_SOURCE? $(am__skipyacc) \ +if %?GENERIC% + %VERBOSE%$(am__skipyacc) \ +?USE-YLWRAP? $(SHELL) $(YLWRAP) %SOURCE% y.tab.c %OBJ% y.tab.h `echo %OBJ% | $(am__yacc_c2h)` y.output %BASE%.output -- %COMPILE% +?!USE-YLWRAP? %COMPILE% -o $@ %SOURCE% +else !%?GENERIC% + %VERBOSE% \ +?DIST_SOURCE? $(am__skipyacc) \ ## For non-suffix rules, we must emulate a VPATH search on %SOURCE%. -?!GENERIC? $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% y.tab.c %OBJ% y.tab.h `echo %OBJ% | $(am__yacc_c2h)` y.output %BASE%.output -- %COMPILE% +?USE-YLWRAP? $(SHELL) $(YLWRAP) `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% y.tab.c %OBJ% y.tab.h `echo %OBJ% | $(am__yacc_c2h)` y.output %BASE%.output -- %COMPILE% +?!USE-YLWRAP? %COMPILE% -o $@ % `test -f '%SOURCE%' || echo '$(srcdir)/'`%SOURCE% +endif !%?GENERIC% diff --git a/t/lex-multiple.sh b/t/lex-multiple.sh new file mode 100755 index 0000000..f15b3f3 --- /dev/null +++ b/t/lex-multiple.sh @@ -0,0 +1,106 @@ +#! /bin/sh +# Copyright (C) 2012 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# If we get ylwrap out of the way, we can build a program using +# several lexers at once. + +required='cc flex' +. ./defs || Exit 1 + +cp "$am_scriptdir"/ar-lib . || fatal_ "fetching auxiliary script 'ar-lib'" + +cat >> configure.ac << 'END' +AC_PROG_CC +AC_PROG_LEX +AM_PROG_AR +AC_PROG_RANLIB +AC_OUTPUT +END + +cat > Makefile.am << 'END' +AUTOMAKE_OPTIONS = no-ylwrap + +bin_PROGRAMS = zardoz + +zardoz_SOURCES = main.c +# Convenience libraries. +noinst_LIBRARIES = liblex.a liblex-foo.a liblex-bar.a +zardoz_LDADD = $(noinst_LIBRARIES) + +liblex_a_SOURCES = 0.l + +liblex_foo_a_LFLAGS = -Pfoo +liblex_foo_a_SOURCES = a.l + +liblex_bar_a_LFLAGS = -Pbar_ +liblex_bar_a_SOURCES = b.l +END + +cat > main.c << 'END' +#include +#include +#include + +int main (int argc, char *argv[]) +{ + if (argc != 2) + abort (); + else if (!strcmp(argv[1], "--vanilla")) + return (yylex () != 121); + else if (!strcmp(argv[1], "--foo")) + return (foolex () != 121); + else if (!strcmp(argv[1], "--bar")) + return (bar_lex () != 121); + else + abort (); +} +END + +cat > 0.l << 'END' +%{ +#define YY_NO_UNISTD_H 1 +%} +%% +"VANILLA" { printf (":%s:\n", yytext); return 121; } +. { printf (":%s:\n", yytext); return 1; } +%% +/* Avoid possible link errors. */ +int yywrap (void) { return 1; } +END + +sed 's/VANILLA/FOO/' 0.l > a.l +sed 's/VANILLA/BAR/' 0.l > b.l + +$ACLOCAL +$AUTOCONF +$AUTOMAKE +test ! -f ylwrap + +./configure +$MAKE + +if ! cross_compiling; then + echo VANILLA | ./zardoz --vanilla + echo FOO | ./zardoz --foo + echo BAR | ./zardoz --bar + #./zardoz --vanilla > configure.ac << 'END' +cat > configure.ac << 'END' +AC_INIT([C++ skeleton], [0.1]) +AM_INIT_AUTOMAKE([no-ylwrap]) +AC_CONFIG_FILES([Makefile]) AC_PROG_CXX AC_PROG_YACC AC_OUTPUT diff --git a/t/yacc-bison-skeleton.sh b/t/yacc-bison-skeleton.sh index 8cf957b..6cf7972 100755 --- a/t/yacc-bison-skeleton.sh +++ b/t/yacc-bison-skeleton.sh @@ -27,6 +27,7 @@ AC_OUTPUT END cat > Makefile.am << 'END' +AUTOMAKE_OPTIONS = no-ylwrap bin_PROGRAMS = zardoz zardoz_SOURCES = zardoz.y foo.c AM_YFLAGS = -d --skeleton glr.c -- 1.7.9.5 From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 10:31:38 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 14:31:38 +0000 Received: from localhost ([127.0.0.1]:58712 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjWnp-0005Hv-N8 for submit@debbugs.gnu.org; Tue, 26 Jun 2012 10:31:38 -0400 Received: from sao-paulo.lrde.epita.fr ([163.5.55.1]:60455 helo=kualalumpur.lrde.epita.fr) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjWnm-0005Hm-BB for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 10:31:35 -0400 Received: from erebus.lrde.epita.fr ([192.168.101.165]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1SjWjp-0005Bu-Pn; Tue, 26 Jun 2012 16:27:29 +0200 Subject: Re: ylwrap does not rename y.tab.h in y.tab.c Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=iso-8859-1 From: Akim Demaille In-Reply-To: <4FE82FAA.7050203@gmail.com> Date: Tue, 26 Jun 2012 16:27:34 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: References: <80AD8426-5BCA-4A0A-9529-EF786DC48AC9@lrde.epita.fr> <4FCFCDA2.9080206@gnu.org> <9733E760-8220-445A-8AB9-D7A19247A805@lrde.epita.fr> <4FD236E7.6080609@gnu.org> <554D01B6-ABD2-4998-A40F-6B13793DBF72@lrde.epita.fr> <79287948-0A36-42A5-B052-FE87C6736B52@lrde.epita.fr> <779B1E9A-9167-4C3B-BB2B-3A767DFEE80F@lrde.epita.fr> <58E47CF9-C91C-4121-A10C-46F94049F2B2@lrde.epita.fr> <4FE82FAA.7050203@gmail.com> To: Stefano Lattarini X-Mailer: Apple Mail (2.1278) X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 11419 Cc: Paul Eggert , Bison Bugs , "automake-patches@gnu.org" , Bison Patches , 11419@debbugs.gnu.org, Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Hi all, Le 25 juin 2012 =E0 11:30, Stefano Lattarini a =E9crit : >> Well, I guess I must step back. I installed what follows >> in maint. >>=20 > Sigh, advancement on Bison kept back by the fact that Automake used to > bend over backwards to support inferior yacc implementation that today > hardly anybody is using to build an autoconfiscated package. It's now > definitely time to implement a 'no-ylwrap' option that prevents the = use > of 'ylwrap'. IMHO this option should go in Automake 1.12.2, become = the > default in Automake 1.13, and the only supported mode of operation in > Automake 1.14 (unless real users object). But in any case, ylwrap must also be fixed, if people still want to stick to it. And, BTW, glr parsers, C++ parsers etc. are broken by ylwrap currently as they all use a header and depend upon it. A future version of bison will use it too for plain parsers. People stuck with an old Automake can make a "y.tab.h" file that just #includes "the-right-header.h" to work around the issue. From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 10:38:02 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 14:38:02 +0000 Received: from localhost ([127.0.0.1]:58716 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjWu1-0005QJ-Tg for submit@debbugs.gnu.org; Tue, 26 Jun 2012 10:38:02 -0400 Received: from sao-paulo.lrde.epita.fr ([163.5.55.1]:60199 helo=kualalumpur.lrde.epita.fr) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjWtz-0005Pu-Mf for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 10:38:00 -0400 Received: from erebus.lrde.epita.fr ([192.168.101.165]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1SjWq6-0005SC-3x; Tue, 26 Jun 2012 16:33:58 +0200 Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=iso-8859-1 From: Akim Demaille In-Reply-To: <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> Date: Tue, 26 Jun 2012 16:34:02 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> To: Stefano Lattarini X-Mailer: Apple Mail (2.1278) X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Hi Stefano, Thanks for this! Le 25 juin 2012 =E0 16:01, Stefano Lattarini a =E9crit : > When used with good yacc and lex implementations, like Flex and GNU = Bison, > the 'ylwarp' ylwrap > script (meant to work around the deficiencies of older or > inferior yacc and lex implementations) creates far more problems and > annoyances than it solves. For more details, just see the huge amount = of > related bug reports and complaints: > =20 > use will allow us to switch the default in Automake 1.13 (i.e., we = will > start *not* using ylwrap by default) while still supporting users who > want to continue using ylwrap. Shouldn't some Autoconf machinery just check if -o is supported? I don't see the need for the user to have to decide whether to use ylwrap or not. But I agree this is certainly harder to do. >=20 > * lib/Automake/Options.pm (_is_valid_easy_option, = _process_option_list): > Recognize the options 'no-ylwrap' and 'ylwrap'. > * automake.in (handle_languages): Pass the new transform = '?USE-YLWRAP?' > to the processed $rule_file; this transform expands to false if the > 'no-ylwrap' option is used, and to true otherwise. > (yacc_lex_finish_helper): Don't require nor copy the 'ylwrap' script = if > the 'no-ylwrap' option is active. > * lib/am/lex.am, lib/am/yacc.am: Simplify rules not to use the = 'ylwrap' > script if the '?USE-YLWRAP?' transform is true. Related refactorings. > * t/lex-multiple.sh: New test, checks that if we get ylwrap out of the > way, we can build a program using several lexers at once. > * t/list-of-tests.mk (handwritten_TESTS): Add it. > * t/yacc-bison-skeleton.sh: Use the 'no-ylwrap' option. This allow = the allows > test to pass, at last! > * t/yacc-bison-skeleton-cxx.sh: Likewise. > * t/list-of-tests.mk (XFAIL_TESTS): Remove those two tests. >=20 > @@ -333,6 +334,11 @@ sub _process_option_list (\%@) > # This is a little of an hack, but good enough for the = moment. > delete $options->{'parallel-tests'}; > } > + elsif ($_ eq 'ylwrap') > + { > + # This is a little of an hack, but good enough for the = moment. a hack (several times apparently :). > + delete $options->{'no-ylwrap'}; > + } > elsif (/^filename-length-max=3D(\d+)$/) > { > delete $options->{$_}; From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 11:39:26 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 15:39:26 +0000 Received: from localhost ([127.0.0.1]:58721 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjXrP-0006ln-PR for submit@debbugs.gnu.org; Tue, 26 Jun 2012 11:39:25 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:50345) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjXrK-0006la-1I for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 11:39:19 -0400 Received: by bkty8 with SMTP id y8so44054bkt.3 for <11419@debbugs.gnu.org>; Tue, 26 Jun 2012 08:35:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=njM+IPiyPpYrZDOvRaq/xCn+lryZ1hx9oZW79ej56Cg=; b=PBg2Y4nF2AJM/fWQA+skKX8Zou6Ug/8Fh5owEtfrBnRASF4xAHDA6V+ptUTJ3yvU7j hC24d/qLTO7jpV05iis9C4bxUJJOzC+S46EDZDqvvlyEX5rIbE9Oz/azlQa6aj2q1vw4 J0h10n1Cu3sO+exJJLZTP/2w1YuAX0bX2PBnSicgS8Vr7BXdJyMV6rH7eilH1qfKyLmw v02l0dKqo9+GLe2qbu0m22iX+ThWmPPjA/QFsLJ7p0azLfWRvr1hNg/rz0sq4V328VAy yq5dScPrjnUKgL1GPzEGJ4QxqLsVoi7hjXDycqFui7C5//wlJiUd6xZTq/D18O7mlEz9 1HWw== Received: by 10.204.136.214 with SMTP id s22mr5643907bkt.92.1340724915578; Tue, 26 Jun 2012 08:35:15 -0700 (PDT) Received: from [82.60.30.36] (host36-30-dynamic.60-82-r.retail.telecomitalia.it. [82.60.30.36]) by mx.google.com with ESMTPS id gw6sm51280335bkc.16.2012.06.26.08.35.13 (version=SSLv3 cipher=OTHER); Tue, 26 Jun 2012 08:35:14 -0700 (PDT) Message-ID: <4FE9D6AF.1000307@gmail.com> Date: Tue, 26 Jun 2012 17:35:11 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: Akim Demaille Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> In-Reply-To: <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) On 06/26/2012 04:34 PM, Akim Demaille wrote: > Hi Stefano, > > Thanks for this! > > Le 25 juin 2012 à 16:01, Stefano Lattarini a écrit : > >> When used with good yacc and lex implementations, like Flex and GNU Bison, >> the 'ylwarp' > > ylwrap > >> script (meant to work around the deficiencies of older or >> inferior yacc and lex implementations) creates far more problems and >> annoyances than it solves. For more details, just see the huge amount of >> related bug reports and complaints: >> > >> use will allow us to switch the default in Automake 1.13 (i.e., we will >> start *not* using ylwrap by default) while still supporting users who >> want to continue using ylwrap. > > Shouldn't some Autoconf machinery just check if -o is supported? > This is probably a better idea, yes. This could probably be done by enhancing AM_PROG_LEX and defining a similar new AM_PROG_YACC macro. Or better again, it could be done directly in AC_PROG_LEX and AC_PROG_YACC, so that we could just rely on them in the future (in the meantime, we could copy their new definitions in our 'm4/' directories, so that the new improved definitions will still be accessible to users with older Autoconfs). > I don't see the need for the user to have to decide whether > to use ylwrap or not. But I agree this is certainly harder to do. > Not much harder actually; and it's certainly much nicer to DTRT instead of throwing another knob to tweak to the poor developer. So I'll certainly give your proposal a try. Thanks, Stefano From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 12:02:48 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 16:02:48 +0000 Received: from localhost ([127.0.0.1]:58729 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYE3-0007HH-Vr for submit@debbugs.gnu.org; Tue, 26 Jun 2012 12:02:48 -0400 Received: from sao-paulo.lrde.epita.fr ([163.5.55.1]:55173 helo=kualalumpur.lrde.epita.fr) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYE2-0007HA-Ao for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 12:02:47 -0400 Received: from erebus.lrde.epita.fr ([192.168.101.165]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1SjYA8-0000hA-1B; Tue, 26 Jun 2012 17:58:44 +0200 Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=iso-8859-1 From: Akim Demaille In-Reply-To: <4FE9D6AF.1000307@gmail.com> Date: Tue, 26 Jun 2012 17:58:48 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: <83BCA4E7-D9C7-45C1-BEF8-5D76ED39D218@lrde.epita.fr> References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> <4FE9D6AF.1000307@gmail.com> To: Stefano Lattarini X-Mailer: Apple Mail (2.1278) X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) Le 26 juin 2012 =E0 17:35, Stefano Lattarini a =E9crit : > This is probably a better idea, yes. This could probably be done by > enhancing AM_PROG_LEX and defining a similar new AM_PROG_YACC macro. > Or better again, it could be done directly in AC_PROG_LEX and > AC_PROG_YACC, so that we could just rely on them in the future > (in the meantime, we could copy their new definitions in our > 'm4/' directories, so that the new improved definitions will still > be accessible to users with older Autoconfs). I had sent a message about such macros to Autoconf, but to no avail. http://lists.gnu.org/archive/html/autoconf-patches/2012-04/msg00001.html This initial work leaves in Bison as m4/flex.m4. I know there is work to do (test, doc etc.), but at least I'd like some feedback. Then I'll proceed to Yacc/Bison. From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 12:23:10 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 16:23:10 +0000 Received: from localhost ([127.0.0.1]:58780 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYXl-0007mO-Dh for submit@debbugs.gnu.org; Tue, 26 Jun 2012 12:23:09 -0400 Received: from mx1.redhat.com ([209.132.183.28]:8966) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYXi-0007mG-6l for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 12:23:08 -0400 Received: from int-mx12.intmail.prod.int.phx2.redhat.com (int-mx12.intmail.prod.int.phx2.redhat.com [10.5.11.25]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id q5QGIuHB009437 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Tue, 26 Jun 2012 12:18:56 -0400 Received: from [10.3.113.134] (ovpn-113-134.phx2.redhat.com [10.3.113.134]) by int-mx12.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id q5QGIt5c021896; Tue, 26 Jun 2012 12:18:55 -0400 Message-ID: <4FE9E0EE.5060406@redhat.com> Date: Tue, 26 Jun 2012 10:18:54 -0600 From: Eric Blake Organization: Red Hat User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120615 Thunderbird/13.0.1 MIME-Version: 1.0 To: Akim Demaille Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> <4FE9D6AF.1000307@gmail.com> <83BCA4E7-D9C7-45C1-BEF8-5D76ED39D218@lrde.epita.fr> In-Reply-To: <83BCA4E7-D9C7-45C1-BEF8-5D76ED39D218@lrde.epita.fr> X-Enigmail-Version: 1.4.2 OpenPGP: url=http://people.redhat.com/eblake/eblake.gpg Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------enigEFB0C31DEAE7C0D34E232918" X-Scanned-By: MIMEDefang 2.68 on 10.5.11.25 X-Spam-Score: -6.9 (------) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , Autoconf , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Stefano Lattarini , Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -6.9 (------) This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigEFB0C31DEAE7C0D34E232918 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable [adding autoconf] On 06/26/2012 09:58 AM, Akim Demaille wrote: >=20 > Le 26 juin 2012 =E0 17:35, Stefano Lattarini a =E9crit : >=20 >> This is probably a better idea, yes. This could probably be done by >> enhancing AM_PROG_LEX and defining a similar new AM_PROG_YACC macro. >> Or better again, it could be done directly in AC_PROG_LEX and >> AC_PROG_YACC, so that we could just rely on them in the future >> (in the meantime, we could copy their new definitions in our >> 'm4/' directories, so that the new improved definitions will still >> be accessible to users with older Autoconfs). >=20 > I had sent a message about such macros to Autoconf, but > to no avail. >=20 > http://lists.gnu.org/archive/html/autoconf-patches/2012-04/msg00001.htm= l Eek - that just shows that I'm really behind on reading my email. Just from reading this summary, the idea of improving AC_PROG_LEX and AC_PROG_YACC to be more useful makes sense, especially if it would make automake easier to maintain. What sort of improvements are needed? >=20 > This initial work leaves in Bison as m4/flex.m4. I know there is > work to do (test, doc etc.), but at least I'd like some feedback. > Then I'll proceed to Yacc/Bison. --=20 Eric Blake eblake@redhat.com +1-919-301-3266 Libvirt virtualization library http://libvirt.org --------------enigEFB0C31DEAE7C0D34E232918 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) Comment: Public key at http://people.redhat.com/eblake/eblake.gpg Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iQEcBAEBCAAGBQJP6eDuAAoJEKeha0olJ0NqLvsH/18zJATQtaARJlQiggh+x2bW uWowrke+6glvd2zjxDCDkSito+QcbX9MacRURHRbcGrn00jRMsaJfGbBc8FNrGDl 5rsf88mHHvQCjXruKR4XJ0BR0VglnjWfkncuCi9dCjamKCEH1d6u6/EdGx4S+gMj j1u5NBrL75+w4R2F3ohVqIkmY/TAJi3R8LJDI+rMoBjF369NaT6T97hUK4x2eUO3 cOg9pDsRHpOGLWo3ZBZ/x/s262TxcGBRvNvPuGwv2D+QTagLGePiQtJz2ZFqCDuK JMX5GPZ5TZGoUQ1U9QZFKPaKv91yemRrCHpM1BZz0nPGIaGRLXDxYwsvA1cFVoI= =1b99 -----END PGP SIGNATURE----- --------------enigEFB0C31DEAE7C0D34E232918-- From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 12:31:29 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 16:31:29 +0000 Received: from localhost ([127.0.0.1]:58790 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYfp-0000MM-4M for submit@debbugs.gnu.org; Tue, 26 Jun 2012 12:31:29 -0400 Received: from sao-paulo.lrde.epita.fr ([163.5.55.1]:57736 helo=kualalumpur.lrde.epita.fr) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjYfm-0000MD-UM for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 12:31:27 -0400 Received: from erebus.lrde.epita.fr ([192.168.101.165]) by kualalumpur.lrde.epita.fr with esmtpsa (TLS-1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.63) (envelope-from ) id 1SjYbq-00026E-LQ; Tue, 26 Jun 2012 18:27:22 +0200 Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script Mime-Version: 1.0 (Apple Message framework v1278) Content-Type: text/plain; charset=iso-8859-1 From: Akim Demaille In-Reply-To: <4FE9E0EE.5060406@redhat.com> Date: Tue, 26 Jun 2012 18:27:27 +0200 Content-Transfer-Encoding: quoted-printable Message-Id: References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> <4FE9D6AF.1000307@gmail.com> <83BCA4E7-D9C7-45C1-BEF8-5D76ED39D218@lrde.epita.fr> <4FE9E0EE.5060406@redhat.com> To: Eric Blake X-Mailer: Apple Mail (2.1278) X-Spam-Score: -1.9 (-) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , Autoconf , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Stefano Lattarini , Bruce Korb X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -1.9 (-) (wow, _that_ is quite a list of CCs. Hi mum!) Hi Eric, Le 26 juin 2012 =E0 18:18, Eric Blake a =E9crit : > Eek - that just shows that I'm really behind on reading my email. Thou shalt be punished. Beware of my wrath. > Just from reading this summary, the idea of improving AC_PROG_LEX and > AC_PROG_YACC to be more useful makes sense, especially if it would = make > automake easier to maintain. What sort of improvements are needed? In the present case, I believe the only thing Automake needs to know is whether -o is supported by lex/yacc.= From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 26 13:02:01 2012 Received: (at 11419) by debbugs.gnu.org; 26 Jun 2012 17:02:01 +0000 Received: from localhost ([127.0.0.1]:58830 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjZ9M-00014r-5N for submit@debbugs.gnu.org; Tue, 26 Jun 2012 13:02:01 -0400 Received: from mail-bk0-f44.google.com ([209.85.214.44]:38840) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SjZ9J-00014j-70 for 11419@debbugs.gnu.org; Tue, 26 Jun 2012 13:01:58 -0400 Received: by bkty8 with SMTP id y8so136022bkt.3 for <11419@debbugs.gnu.org>; Tue, 26 Jun 2012 09:57:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:mime-version:to:cc:subject:references :in-reply-to:content-type:content-transfer-encoding; bh=s3hVL2Dt+4gZ7rPnbOx2nKHdYhMfoO0KlB6XaafHego=; b=VxI/smH2gdAxjhhhLT76Cee3H3mMX7rK6320odkBXIR0ET45iVidNqgCzFMFNLZnHT 8R80WhD16RuGtQAg3FjS16ktlFGzkEzNumJNTInIpwdZGm0WQcD8TIJzswEVg7RSLvhx ZlzvfhtC/iNqW1UeJgJK1D3P3TgKf/P5C706KKPm5R0H65MBFVlNBuqMZFjJpcwU14mH mVWVklzpoCq5iDkc7MetLz/KassAxavWLwG25vVH7feXRps0gzOmVv34SwQ9eMrlB5Hv GMPlEjNO6zu4TmFcjgNiMWES7O6IHOIEklcSKpmJOnwNTRaU0YcSFpcT72/xuHS3Yj3O oWnw== Received: by 10.205.129.8 with SMTP id hg8mr5831951bkc.25.1340729874631; Tue, 26 Jun 2012 09:57:54 -0700 (PDT) Received: from [82.60.30.36] (host36-30-dynamic.60-82-r.retail.telecomitalia.it. [82.60.30.36]) by mx.google.com with ESMTPS id h18sm51578856bkh.8.2012.06.26.09.57.51 (version=SSLv3 cipher=OTHER); Tue, 26 Jun 2012 09:57:53 -0700 (PDT) Message-ID: <4FE9EA0D.5000706@gmail.com> Date: Tue, 26 Jun 2012 18:57:49 +0200 From: Stefano Lattarini MIME-Version: 1.0 To: Akim Demaille Subject: Re: [PATCH] yacc, lex: new 'no-ylwrap' option to prevent use of the 'ylwrap' script References: <4FE82FAA.7050203@gmail.com> <7d2f266f017355027cbe9e6eed79885304f9caa2.1340632028.git.stefano.lattarini@gmail.com> <3F3F45CF-F8FF-4D1A-B5D9-3E773BCF92B7@lrde.epita.fr> <4FE9D6AF.1000307@gmail.com> <83BCA4E7-D9C7-45C1-BEF8-5D76ED39D218@lrde.epita.fr> <4FE9E0EE.5060406@redhat.com> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.6 (--) X-Debbugs-Envelope-To: 11419 Cc: paul Eggert , Autoconf , bug-bison@gnu.org, automake-patches@gnu.org, bison-patches@gnu.org, 11419@debbugs.gnu.org, Bruce Korb , Eric Blake X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -2.6 (--) Hi Eric. On 06/26/2012 06:27 PM, Akim Demaille wrote: > > Le 26 juin 2012 à 18:18, Eric Blake a écrit : > >> Just from reading this summary, the idea of improving AC_PROG_LEX and >> AC_PROG_YACC to be more useful makes sense, especially if it would make >> automake easier to maintain. What sort of improvements are needed? > > In the present case, I believe the only thing Automake needs > to know is whether -o is supported by lex/yacc. > Yes. And to ensure proper compatibility with C++ and with the use of the '-d' option, we should consider the '-o' support good enough only provided that, when "yacc -d -o foo.C-EXT" is used, the name of the created header is "foo.H-EXT", where H-EXT is C-EXT with all 'c' characters substituted by 'h' ones (so that foo.c -> foo.h, foo.c++ -> foo.h++, foo.cc -> foo.hh, etc). This is what Bison does. Once we know that lex supports '-o', the determination of the value of $LEX_OUTPUT_ROOT will mostly become moot, and could be dispensed with (at least for what concerns Automake). Also, it would be nice if AC_PROG_YACC and AC_PROG_LEX would allow us to change the list of the searched programs (this will allow the Automake configure script to prefer non-bison 'yacc' and non-flex 'lex' programs for use in the testsuite, to ensure better coverage). Finally, while we are at it, we might also think about making default values for $YACC and $LEX configurable (rather than hard-coding them to resp. 'yacc' and ':'). Oh, and setting a couple of (self-explanatory) variables $LEX_IS_FLEX and $YACC_IS_BISON wouldn't hurt (albeit it would not be needed by Automake at this point). Regards, Stefano From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 12 14:18:28 2013 Received: (at 11419) by debbugs.gnu.org; 12 Jan 2013 19:18:28 +0000 Received: from localhost ([127.0.0.1]:57253 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Tu6b5-0006Q2-5E for submit@debbugs.gnu.org; Sat, 12 Jan 2013 14:18:27 -0500 Received: from mail-ee0-f52.google.com ([74.125.83.52]:36864) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1Tu6b3-0006Pl-F7; Sat, 12 Jan 2013 14:18:26 -0500 Received: by mail-ee0-f52.google.com with SMTP id b15so908081eek.25 for ; Sat, 12 Jan 2013 11:18:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=x-received:message-id:date:from:mime-version:to:cc:subject :content-type:content-transfer-encoding; bh=YbWgyh0EOxdE4pzQ0809CJVJTy90X4yFA0OjEXAUiak=; b=VNB64hFY1ck/kRxOC5I8jdT/CL+JpGF4FTqfanHK3/eXEDKgTD23gMLuGb+LX7Aroc C29reypolcufoCzYDXY9gAsyexzxUF4RkKL5BbfgHTgqa0PD41OpgLPcZwWJ1GT/C2dL U20mHxy/VDxqMGJhJ1SYoT7sWAbs9Kfx2i0Y8VysXZaABgIJm+/kxLItAbshJ0tuUQ/g xX5bMXBuzf4lirjEe79v+am5Wqlj0pNrYHLRaTeF5VbIbThgEe62X+WcW5bTL9wnc68T pigyskM9mWUJr30KHrAC6hBnXODJgaAOZAdJRN8ih7c9W2jHwavGKd8vZONq5GKOmpj7 pvfA== X-Received: by 10.14.205.198 with SMTP id j46mr213919983eeo.27.1358018285769; Sat, 12 Jan 2013 11:18:05 -0800 (PST) Received: from [192.168.178.21] (host137-94-dynamic.4-87-r.retail.telecomitalia.it. [87.4.94.137]) by mx.google.com with ESMTPS id l3sm3117563een.14.2013.01.12.11.18.04 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 12 Jan 2013 11:18:05 -0800 (PST) Message-ID: <50F1B6E8.5030405@gmail.com> Date: Sat, 12 Jan 2013 20:18:00 +0100 From: Stefano Lattarini MIME-Version: 1.0 To: 11419@debbugs.gnu.org Subject: Get rid of ylwrap, and simplify yacc/lex rules: withdrawn this wishlist entry Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 11419 Cc: Akim Demaille X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: -0.7 (/) tags 11419 wontfix close 11419 thanks Reference: The improvements to the ylwrap script contributed by Akim in the 1.12.x and 1.13 releases have fixed most of the issues or bugs this proposal intended to address; even better, they did so in a completely transparent and backward-compatible way. While this proposal could theoretically still provide some enhancement in corner cases, those would be very marginal gains, and since I don't like the gratuitous proliferation of options and dubious knobs, I'm retiring this wishlist entry for now. Thanks, Stefano From debbugs-submit-bounces@debbugs.gnu.org Fri Feb 01 12:17:36 2013 Received: (at 11419) by debbugs.gnu.org; 1 Feb 2013 17:17:37 +0000 Received: from localhost ([127.0.0.1]:59509 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1U1KF2-0007ak-J6 for submit@debbugs.gnu.org; Fri, 01 Feb 2013 12:17:36 -0500 Received: from mail-vc0-f173.google.com ([209.85.220.173]:40931) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1U1KEw-0007aa-Ni for 11419@debbugs.gnu.org; Fri, 01 Feb 2013 12:17:31 -0500 Received: by mail-vc0-f173.google.com with SMTP id fy7so2626696vcb.32 for <11419@debbugs.gnu.org>; Fri, 01 Feb 2013 09:16:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=hl3mgTX09NCXxYByDtirQqPfwUwrXCe6SsPOwxaOLnc=; b=sA4RatHtoAzR1HwsoAzIQ8tMeTPVqaRKCsJHZUldjFuMEh43K6ucB8JcFvTROOl7jh Q7LdGgQqcJExpE+RpvyBN1sCSgWYeiEzmxJYBbhr0Gv6jvkmohagIEuVBJe5IDAas0La ki1A7zEVjZ+SGaEpJDeHF8OgWbkgZXctXptYV5Bho3Vqbv1jLMycLULtnND7WbO4AtOb wrnKELVaqc4H5fPbcHHn87EtRqztSTd/NmOe4JoHSISfMRYjHWUjRTzRtU20FOKl1J6y /e/lP1UrXXR3sltVLmYV19ONsS3qS46Sky7aRNy682jriPNBcKwx4ULJHvEQJcSofvMy pzLQ== MIME-Version: 1.0 X-Received: by 10.52.72.41 with SMTP id a9mr10373668vdv.7.1359738997424; Fri, 01 Feb 2013 09:16:37 -0800 (PST) Received: by 10.220.238.13 with HTTP; Fri, 1 Feb 2013 09:16:37 -0800 (PST) In-Reply-To: <50F1B6E8.5030405@gmail.com> References: <50F1B6E8.5030405@gmail.com> Date: Fri, 1 Feb 2013 18:16:37 +0100 Message-ID: Subject: Re: Get rid of ylwrap, and simplify yacc/lex rules: withdrawn this wishlist entry From: Akim Demaille To: Stefano Lattarini Content-Type: text/plain; charset=UTF-8 X-Spam-Score: 0.1 (/) X-Debbugs-Envelope-To: 11419 Cc: 11419@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: debbugs-submit-bounces@debbugs.gnu.org Errors-To: debbugs-submit-bounces@debbugs.gnu.org X-Spam-Score: 0.1 (/) On Sat, Jan 12, 2013 at 8:18 PM, Stefano Lattarini wrote: > tags 11419 wontfix > close 11419 > thanks > > Reference: > > > The improvements to the ylwrap script contributed by Akim in the 1.12.x > and 1.13 releases have fixed most of the issues or bugs this proposal > intended to address; even better, they did so in a completely transparent > and backward-compatible way. > > While this proposal could theoretically still provide some enhancement > in corner cases, those would be very marginal gains, and since I don't > like the gratuitous proliferation of options and dubious knobs, I'm > retiring this wishlist entry for now. Not quite actually. Currently Automake invoke Bison as yacc, i.e., it passes the flag -y, --yacc. This flag is expected to trigger all sorts of warnings if you use features that are not supported by POSIX Yacc. Because Bison is frequently invoked with -y but people do use Bison features in their grammar, I cannot have --yacc properly do its job: non-Yaccisms are not diagnosed to the user. I would really like to see -y stop being used so that differences with Yacc itself can be reported. Cheers! From unknown Mon Aug 18 15:39:48 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 02 Mar 2013 12:24:02 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator