From owner-freebsd-standards@freebsd.org Wed Apr 21 19:38:06 2021 Return-Path: Delivered-To: freebsd-standards@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id ECD765EFD7B for ; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mailman.nyi.freebsd.org (mailman.nyi.freebsd.org [IPv6:2610:1c1:1:606c::50:13]) by mx1.freebsd.org (Postfix) with ESMTP id 4FQW726BjHz3wSL for ; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: by mailman.nyi.freebsd.org (Postfix) id D27005F0003; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) Delivered-To: standards@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id D22DF5F0002 for ; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4FQW725NsJz3wQC for ; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2610:1c1:1:606c::50:1d]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id A7B9C4105 for ; Wed, 21 Apr 2021 19:38:06 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.5]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id 13LJc61n044280 for ; Wed, 21 Apr 2021 19:38:06 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 13LJc6fX044279 for standards@FreeBSD.org; Wed, 21 Apr 2021 19:38:06 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: standards@FreeBSD.org Subject: [Bug 255290] _POSIX_C_SOURCE=200809 hides static_assert Date: Wed, 21 Apr 2021 19:38:06 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: standards X-Bugzilla-Version: Unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: freebsdbugs@eldred.fr X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: standards@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-standards@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Standards compliance List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Apr 2021 19:38:07 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D255290 Eldred Habert changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |freebsdbugs@eldred.fr --- Comment #10 from Eldred Habert --- (In reply to Warner Losh from comment #7) Hey, upstream here. Thank you very much Tobik both for reporting the issue = to us and here ^^ I interpret the following: > Additional symbols not required or explicitly permitted by IEEE Std 1003.= 1-2001 to be in that header shall not be made visible, except when enabled = by another feature test macro. ... as permitting the use of C11 functionality, since our codebase specifies the `-std=3Dgnu11` flag (which should be c11, but we had to switch to fix t= he build with DJGPP), itself defining __STDC_VERSION__ to request `static_asse= rt`. That point has been made already, and I disagree with the following reply to it: > I would interpret that as requesting undefined behavior. POSIX is C99 and= C99 only. You requested POSIX, and then requested something else also. Tha= t behavior is not defined. Pick one or the other, but you cannot have both = as there's no well-defined way to provide both. I don't read the snippet copied in Comment #6 as "POSIX requires C99 functionality, neither more nor less", but rather "POSIX does not aim to be https://xkcd.com/927/, thus definitions were aligned on C99 whenever possib= le". As far as I'm aware, C11 does not make any modifications to the standard th= at are incompatible with POSIX 2008, and thus there are no conflicts, and henc= e, no undefined behavior. I back this up by POSIX allowing other feature test macros to define symbols outside of POSIX's scope; if defining any other such macros would result in= UB, why would the standard explicitly allow it? --=20 You are receiving this mail because: You are the assignee for the bug.=