Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 17 May 2023 07:39:26 +0000
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
Message-ID:  <bug-255374-99-5wYggKwNTN@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-255374-99@https.bugs.freebsd.org/bugzilla/>
References:  <bug-255374-99@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D255374

--- Comment #27 from Mark Millard <marklmi26-fbsd@yahoo.com> ---
(In reply to Mark Millard from comment #26)

Looks like __has_feature(experimental_library) and
_LIBCPP_ENABLE_EXPERIMENTAL were new as of LLVM 15.
LLVM 14 does not have the analogous overall logic
to ( /usr/include/c++/v1/__config ) :

. . .
#  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
. . .

LLVM 14 just has ( /usr/include/c++/v1/__config_site ):

/* #undef _LIBCPP_HAS_NO_INCOMPLETE_FORMAT */
/* #undef _LIBCPP_HAS_NO_INCOMPLETE_RANGES */

with no more-overall logic involved.

--=20
You are receiving this mail because:
You are on the CC list for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-255374-99-5wYggKwNTN>