From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 129155 invoked by alias); 19 Mar 2015 00:29:51 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 129122 invoked by uid 55); 19 Mar 2015 00:29:47 -0000 From: "joseph at codesourcery dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c/65455] typeof _Atomic fails Date: Thu, 19 Mar 2015 00:29:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c X-Bugzilla-Version: 4.9.2 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: joseph at codesourcery dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-03/txt/msg01893.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65455 --- Comment #10 from joseph at codesourcery dot com --- On Wed, 18 Mar 2015, jens.gustedt at inria dot fr wrote: > (Perhaps gcc interprets _Generic as you say, but even the standard committee > doesn't agree on that interpretation, and other compiler implementors don't > agree either. Nothing in the standard says that it is an rvalue, nor that it > has to undergo any conversion. Conversion for non-evaluated expressions simply > doesn't exist in the standard. The standard explicitly asks for compatible type > of the expression itself, it says nothing about unqualified type.) There isn't yet a conclusion to DR#423, but the committee discussion in N1892 says 'Specifically, the controlling expression of a generic selection "was very carefully not added" to the list of cases where lvalue conversion is not done.' (i.e. that conversion happens to all expressions unless excluded from happening). There is no indication of a committee direction contradicting the approach I chose for GCC (even if the committee isn't quite sure of how to handle atomics there, and has suggested making qualifiers on function return types not part of the type).