From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8035 invoked by alias); 9 Dec 2003 21:00:49 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 8028 invoked from network); 9 Dec 2003 21:00:48 -0000 Received: from unknown (HELO mail-out4.apple.com) (17.254.13.23) by sources.redhat.com with SMTP; 9 Dec 2003 21:00:48 -0000 Received: from mailgate1.apple.com (a17-128-100-225.apple.com [17.128.100.225]) by mail-out4.apple.com (8.12.10/8.12.9) with ESMTP id hB9L0lnc022114 for ; Tue, 9 Dec 2003 13:00:47 -0800 (PST) Received: from scv2.apple.com (scv2.apple.com) by mailgate1.apple.com (Content Technologies SMTPRS 4.2.1) with ESMTP id ; Tue, 9 Dec 2003 13:00:44 -0800 Received: from [17.201.20.186] (gambrinus.apple.com [17.201.20.186]) by scv2.apple.com (8.12.9/8.12.9) with ESMTP id hB9L0OEV027830; Tue, 9 Dec 2003 13:00:24 -0800 (PST) In-Reply-To: <20031209204037.906D84B412@berman.michael-chastain.com> References: <20031209204037.906D84B412@berman.michael-chastain.com> Mime-Version: 1.0 (Apple Message framework v606) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: <9DA75D00-2A8A-11D8-9E12-000A95D7CD40@apple.com> Content-Transfer-Encoding: 7bit Cc: gcc@gcc.gnu.org, Dale Johannesen From: Dale Johannesen Subject: Re: (printf) ("hello world\n"); Date: Tue, 09 Dec 2003 21:01:00 -0000 To: mec.gnu@mindspring.com (Michael Elizabeth Chastain) X-SW-Source: 2003-12/txt/msg00597.txt.bz2 On Dec 9, 2003, at 12:40 PM, Michael Elizabeth Chastain wrote: > I have a language lawyer question. > > int main () > { > (printf) ("hello world\n"); > return 0; > } > > Is this a conforming C program? c89 3.3.2.2: "If the expression that precedes the parenthesized argument list in a function call consists solely of an identifier, and if no declaration is visible for this identifier, the identifier is implicitly declared exactly as if , in the innermost block containing the function call, the declaration "extern int ();" appeared." So the implicit declaration is not supposed to happen when the function identifier is surrounded by parentheses, and this is not conforming.