From nobody Sun May 21 22:17:15 2023 X-Original-To: standards@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4QPZgv4lRYz4CY4t for ; Sun, 21 May 2023 22:17:15 +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 4QPZgv2450z4NXd for ; Sun, 21 May 2023 22:17:15 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1684707435; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=XaorVzDKUP1z4weT6YhPP9x4mn+i10AOeaEnV8tYi0k=; b=GsDRpgKL/Z/CR8aBF+tHztXore33JMFQgmPbX04rkWI36ftor9tFGILa80lyvfCJk/3Msj t4qWHfKNEgvJprQmxJ0WqrFNa3Mi6WkT6ZUBFyNrRHAbAZc7/U937UfSTRsDbqZg44Tp37 NhNqKjDcBQoubdI5LQOj/KD8UGmPaX93IDEi+I3iiu5D2gIWICx+V4YJwd4YvsEV2LFEDB U8C1MkYAjzZ+l8IRlR61QOUMczd9aHN4AIdNdjkr/CqC/ZRFFi+caLOFi+QKyWwa8wfoRE ZcQN0G1Vphuu3j0Ky1Uu94G9LrTRVnBUl/jZVfTj8EQ6vPwzE3gMtyogqFDUHA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1684707435; a=rsa-sha256; cv=none; b=Hr992JE7sbFoT5GhwOJM7IOk5zyh+8UoT3sO6x8mzs5w6tAHNtxkazLdEpsmsoIDJcPtt2 xJcYODunyuRPMWK8CSov0VBN6l8sYnX5vDlIlxPB++H8/ndVflgz/JhZ7BAO2bCQogrNZg vwSRfwJ8+7m0+U+1UvLUrcMyWqTAtwkvhCVbLZOXgkxZLb6OsVsF4aSIrG9qJKTORzulzR qacuw2D+iOLtEPXQ3WP5p7kt6l+LDU7u+ciC+TGPxsbBFIoHTjJCKwh0jb+0v1AQ6zkag0 LjCn/U2DOonD1T4FOScgQ0vRBsTkb1Yb1+NrQ5NgQAyY3QALJDg4STm/J6HZ6A== 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 4QPZgv11bDz180L for ; Sun, 21 May 2023 22:17:15 +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 34LMHFI9055815 for ; Sun, 21 May 2023 22:17:15 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id 34LMHF7e055814 for standards@FreeBSD.org; Sun, 21 May 2023 22:17:15 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 255374] C++20 features (headers) std::concepts, std::format, std::numbers, std::source_location, etc. are missing Date: Sun, 21 May 2023 22:17:15 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Base System X-Bugzilla-Component: standards X-Bugzilla-Version: 13.0-RELEASE X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Some People X-Bugzilla-Who: marklmi26-fbsd@yahoo.com X-Bugzilla-Status: In Progress X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: dim@FreeBSD.org X-Bugzilla-Flags: maintainer-feedback? mfc-stable13+ mfc-stable12? mfc-stable11- X-Bugzilla-Changed-Fields: 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 List-Id: Standards compliance List-Archive: https://lists.freebsd.org/archives/freebsd-standards List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-standards@freebsd.org X-BeenThere: freebsd-standards@freebsd.org MIME-Version: 1.0 X-ThisMailContainsUnwantedMimeParts: N https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D255374 --- Comment #28 from Mark Millard --- (In reply to Dimitry Andric from comment #15) LLVM 15+ has changed to using __has_feature(experimental_library) notation as an overall control of the likes of, for example, the incomplete format and range library features: . . . # if __has_feature(experimental_library) # ifndef _LIBCPP_ENABLE_EXPERIMENTAL # define _LIBCPP_ENABLE_EXPERIMENTAL # endif # endif // Incomplete features get their own specific disabling flags. This makes it // easier to grep for target specific flags once the feature is complete. # if !defined(_LIBCPP_ENABLE_EXPERIMENTAL) && !defined(_LIBCPP_BUILDING_LIBRARY) # define _LIBCPP_HAS_NO_INCOMPLETE_FORMAT # define _LIBCPP_HAS_NO_INCOMPLETE_RANGES # endif Given that, is there an expectation for a default status for if FreeBSD will include vs. exclude the experimental libraries as things go forward? It seems that LLVM 15 was handled as an "exclude", as an example. Avoiding potential ABI incompatibilities with later non-experimental features would point in that direction. Part of the reason that this comes up as a question is the lack of non-system clang-based C++ library implementations. Using devel/llvm16 does not get one the updated C++ library implementation, for example. Also, the environment does not support using -stdlib=3Dlibstdc++ in clang. It might help if the expected C++ library status was more explicit/up-front relative to clang++ use in FreeBSD. That might lead to less "what about" questioning (that is generally not about what can be involved in building FreeBSD but, instead, about non-FreeBSD-internal code that is to be built). Generally, the language implementation completes before the library for the same standard does. clang 5 claims to cover the C++17 language, not the library, for example. The C++17 library is mostly --but still not fully-- covered, for example, not even in clang++ 16 with its libc++ vintage. The problem is historically more about the library status. I suppose this sort of thing could end up with a FreeBSD-arch discussion if it has been left implicit so far. --=20 You are receiving this mail because: You are on the CC list for the bug.=