From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Jan Nieuwenhuizen Newsgroups: gmane.lisp.guile.user Subject: Unexpected extra parens on struct-ref [WAS: [ANN] nyacc 0.80.3 released] Date: Mon, 24 Jul 2017 14:49:18 +0200 Organization: AvatarAcademy.nl Message-ID: <87h8y2gfu9.fsf@gnu.org> References: <2D72B3FB-6075-4F56-8698-6AC5BA96B2C0@gmail.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1500900608 29700 195.159.176.226 (24 Jul 2017 12:50:08 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Mon, 24 Jul 2017 12:50:08 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) Cc: Guile User To: Matt Wette Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Mon Jul 24 14:50:03 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dZcoC-0007GO-14 for guile-user@m.gmane.org; Mon, 24 Jul 2017 14:50:00 +0200 Original-Received: from localhost ([::1]:54709 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dZcoH-0004Ts-Op for guile-user@m.gmane.org; Mon, 24 Jul 2017 08:50:05 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49071) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dZcnm-0004Sw-A5 for guile-user@gnu.org; Mon, 24 Jul 2017 08:49:35 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dZcnj-0004L5-5w for guile-user@gnu.org; Mon, 24 Jul 2017 08:49:34 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:41481) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dZcnZ-0004AK-Fy; Mon, 24 Jul 2017 08:49:21 -0400 Original-Received: from peder.onsbrabantnet.nl ([88.159.206.46]:40322 helo=dundal.peder.onsbrabantnet.nl) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1dZcnZ-00088I-1K; Mon, 24 Jul 2017 08:49:21 -0400 X-Url: http://AvatarAcademy.nl In-Reply-To: <2D72B3FB-6075-4F56-8698-6AC5BA96B2C0@gmail.com> (Matt Wette's message of "Sun, 18 Jun 2017 15:07:58 -0700") X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:13977 Archived-At: Matt Wette writes: > NYACC V0.80.3 is released. This works as expected: typedef struct foo { int bar; } baz; int main () { struct foo f; return 0; } =3D> (trans-unit (decl (decl-spec-list (stor-spec (typedef)) (type-spec (struct-def (ident "foo") (field-list (comp-decl (decl-spec-list (type-spec (fixed-type "int"))) (comp-declr-list (comp-declr (ident "bar")))))))) (init-declr-list (init-declr (ident "baz")))) (fctn-defn (decl-spec-list (type-spec (fixed-type "int"))) (ftn-declr (ident "main") (param-list)) (compd-stmt (block-item-list (decl (decl-spec-list (type-spec (struct-ref (ident "foo")))) (init-declr-list (init-declr (ident "f")))) (return (p-expr (fixed "0"))))))) but typedef'ing struct foo to foo like so: typedef struct foo { int bar; } foo; int main () { struct foo f; return 0; } gives unexpected parens when using it in main: (trans-unit (decl (decl-spec-list (stor-spec (typedef)) (type-spec (struct-def (ident "foo") (field-list (comp-decl (decl-spec-list (type-spec (fixed-type "int"))) (comp-declr-list (comp-declr (ident "bar")))))))) (init-declr-list (init-declr (ident "foo")))) (fctn-defn (decl-spec-list (type-spec (fixed-type "int"))) (ftn-declr (ident "main") (param-list)) (compd-stmt (block-item-list (decl (decl-spec-list (type-spec (struct-ref (ident ("foo"))))) (init-declr-list (init-declr (ident "f")))) (return (p-expr (fixed "0"))))))) This bit: (struct-ref (ident ("foo"))) There seem to be more places where the extra parens occur. Greetings, janneke --=20 Jan Nieuwenhuizen | GNU LilyPond http://lilypond.org Freelance IT http://JoyofSource.com | Avatar=C2=AE http://AvatarAcademy.com