From nobody Wed May 3 15:57:08 2023 X-Original-To: freebsd-current@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 4QBM5x2Bqxz490JN for ; Wed, 3 May 2023 15:57:25 +0000 (UTC) (envelope-from marklmi@yahoo.com) Received: from sonic309-20.consmr.mail.gq1.yahoo.com (sonic309-20.consmr.mail.gq1.yahoo.com [98.137.65.146]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4QBM5w0lq7z49Fl for ; Wed, 3 May 2023 15:57:24 +0000 (UTC) (envelope-from marklmi@yahoo.com) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=yahoo.com header.s=s2048 header.b=dhvGQUEc; spf=pass (mx1.freebsd.org: domain of marklmi@yahoo.com designates 98.137.65.146 as permitted sender) smtp.mailfrom=marklmi@yahoo.com; dmarc=pass (policy=reject) header.from=yahoo.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1683129442; bh=SVtbGNQCzFv0qSi2PHKbZ0mIcrcMMAUWbr93hk4J1Tw=; h=From:Subject:Date:To:References:From:Subject:Reply-To; b=dhvGQUEcMDwoUwA0/nbPz1DSXAI8KmBJ+NlB94IJoJyL5AN7wEmKPXDCb37nYNj2v+NnkOe4+mAavitFuKs6bF/JhUqrKsaPakCQMLM1x6PB49v3grhBYw7TL4uwNQ1Bg+mPiIvryLOWfexL9Zj9iECL0fikyT0UCvrMsFCSPDb4OahX+i9WOWIufiaVXDSfmYJQUQE3HOqUoJrW/04k280cjQd4a7PzRKMHShrZn5uPAXcmsvG4HyIBGe/JSvksPQzRAf29rcvRu3j67rc3xcfSsatk843XkaAkerH5NJAkveZMqpbGh4LGzQh2wcXVJiJHSd22HvEwNxnHptaRQw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1683129442; bh=ymIc4PHFETXstPxQV6HKOKcSusswyamn/wWRbnLWItc=; h=X-Sonic-MF:From:Subject:Date:To:From:Subject; b=sBJjHZJTsl1D1g9WDpsErS/RfYv7d0f9MiL9UEwX2SLjjAlMQAiCG7kdHl+AasDcQMKXfbtzyR3JrRyve/CP8UvJUgJroQLL/cBAoeGAiHtNUx92zfsL+9Tm2qkI2IOE/oZvy5PmsTRobrQQ3VeqlTbhZJUAFttPtAqYIU5K2mReeZG1Jw10i96Yag68UlwKQDhOrcwZkWa0LpJRrxiZdEkOZF5Ega9sWjTv7+uQJEd5P0n+aA3Wa6CkyLszmGl58KH/Txn6irn5kd9xZz7WefcdYGBNHt11jj/EGscTaaFatUMlBbzBTUFftEAWyFC5zccJW8/v/dt365RJ9cgI8Q== X-YMail-OSG: JsPdzHIVM1npsZtbVuarSerN5Ki7sNPok6WFN2PR7v6WUJhDHVzxLnym5CTUPy8 aZhAf1IPKKLvW_Gzp8lhqYRyAaQuXMVAaWMzOtv54DFZne7olGYpEZ8VqMpRDotJH4KekjVyA1mI JlufN4UNEr2o07H8ikSYIQpzP6hIRLRpAv02ebX6U4i96AuAUms374PFOlCKUQ_yDaRVChCw163A T_aexbQ_g9i9Lqpx97.wQtm.KGOuJ2Z9g5_8EH5VtKIDfZo440wo_s9AlBXRuFTF1eJWSVMHod8p CLcVMW9gwIn7VAS_67wVvtz9wfLb1Ybl1QGVFQKtpYtJO_SEjK3yvCcr5kBKU31e2sFVHeaA1k5v kEXKfIJYKljmJ207cfeHrVev199mPAxov8Enk5czM3gHQMVmXch8Afp8Q87SVsLtYCtD6l0BVa_i bmZniILfXv0XDM0vDlDkZn0eslygxBTf._9qdnQFlhSuiEhlnIzU34MpC_OSmdmoOTJHutqDp3eE GxY.Wkyb1UFZLuQmtQLxuLr2P4nO1agqcMObPbCkmHfJpnEMnrzDg7lx2PYBFEqU1VQg9siKoy3N 4_SMhCIov6qzkDNLrawe0sV2VofeobbUdbeopBLJhgVzeVUg5uEGU3z0izejECPE6J4GOwstznIx SML_DRi9E1AlhX60XWE.KwM8LsRVPXGOtn7SsCKcW2WqPRqNX79UIxrdhilbSG6__K7Bqgs5ZHW9 HriIwCaaSqISP.GdG_kRE.c_K27GtZK_ZFYZt6CXVuuuA9d32jVHersYKuayDfp9x1IJFOUhoUFZ pX7Hpp9tItW0TkkPKl_Cfu_MDjBsTV7OnuC8NVXt2nkCUpnU1nUaTGrCrNlI5I7mh22jB520WeuD Ga629dhe.QcAkcgiZ0zyqx4.xSscrcjRlSiRhSF1E1dLCbXV00l2CVlYPJ4rKMDUtYQrR2LWZpp5 OBlusqlDLzizsMtX3kHC_9IL3ypXxhRQJ5n_mk3yU_uihtOKZHzo7klY2uXm_ZUMWGeGQV.qrN2M bKOy.a0XOs_JTkw8kt7y42i4JiW5CfG6gwuuuL0UATSkTDVM6eegANn9YJ8qS9lxFMH1mhSu8UKg n4VFhZzcUx25cG.0OxsUXv1J0wpC_r1U332tY0hmxrxUphHWpeUO4.jNWBizkGuoJBKKXd9loVtw g2jKwekVGHPFRUVvGFEbDAfjlkbht61CtTtkJ8PQJhzQQbH0cugC9OqA7l5JAer593GUJp7k3Fzd 8VSmGy3zDD2sv1YaTmdM0vtWtxhabTIFcLrYdOTKAx_a25Sot2hZqRk2Xq3CrMjkhHBx3ftRi0mV 0h6TZjGaQUqSmXV0Qc4tGgFf3q9533qU5KDa_sYD0jhcmL19HyFL.aNOf5LEHSlbWPERE1JpEEiU JJYDkFgNEBNPZL1WDOjNN8SduVLcaQ2jGNVtsJuHr1fc7Nd19a3RCilyhJgwpeoWM1n4AvhyGLPk WRazMr0TD8wbiHzpnykJWvWXj_CNCTVeF4tPtynMC8759ke4mvQGQdd2yHke.fG25uDjx7t5AKQH MxYEqRoGBKqMIRJYdi64t06ecBNteT6StfZ11mp9YJubsU4RdxkObrsnNGEjGqX7u5dD7bGhnhcc a86KPXSRN6WjkmCaadXMH2Q1LP_fKqIwp3aadirKASCsA0LqmIAFGyeP2CEC1zuPObDri4jAkBRW vzmdF_m_MT4aYDr01ueIPradFopyoOZajzk9wAw6dcKaOKbCbIj5yduJHd53GJDLaS9cNPsfCTKv EpMKw19J0yLSfST5D68XyVRRMrDv5OZNJRAuiqUwX9ByKhxMM5W65iubhqKHSAYZ5h8HctoVWHx7 P1.AY8b9DOy2lqDCQgoZnC9xdByiXKCK3BH5oR3pnHI.yK4qctziDPyXYpPzEuCOf3ZW1yCuXZOm 0NHSXsQgp5P7aNRO7NGfINeLJkxTKJz_hHOkPG6qd3S3dDZAn1Kj3D685zxJDoc3AamOtg6i8BB9 qGNXW8IByZBOAqSjEJhISjvXivL0e3R_LocSRNmqB2sWdsHOCZSbK.pYU6iM3G4o6YP8k49FXUZU 4_r0O_ea0tCC87GbnbNvLIsQicI_bBHHWV5Ix8wKJWyLnM0gXGDRVK3LPMP8rOfNA6qxvhdQMro. 612Sek2M71Z3WAWot.FMzv52HPg0wRgp9ySQ4OaTZRK8hbmOxfHrFj_TAinOEamb.qrYOjFMUVqY UndBZW_hyLHbfKcf7caMvR0uXJEMfCiC_acGiOj8qgx07Q74Tlri4Pch_fTbYcdFRbY43udBedn1 UvmA- X-Sonic-MF: X-Sonic-ID: 26ab3f62-94d6-4aa9-a5e8-7b5854057890 Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.gq1.yahoo.com with HTTP; Wed, 3 May 2023 15:57:22 +0000 Received: by hermes--production-bf1-5f9df5c5c4-v79q2 (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 7f555b18cee04197670966681a5cf4ab; Wed, 03 May 2023 15:57:20 +0000 (UTC) From: Mark Millard Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit List-Id: Discussions about the use of FreeBSD-current List-Archive: https://lists.freebsd.org/archives/freebsd-current List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-current@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.400.51.1.1\)) Subject: What llvm16 libc++ updates for -std=c++20 use [was: Re: Delay in 14.0-RELEASE cycle and blocking items] Message-Id: Date: Wed, 3 May 2023 08:57:08 -0700 To: danfe@freebsd.org, Current FreeBSD X-Mailer: Apple Mail (2.3731.400.51.1.1) References: X-Spamd-Result: default: False [-3.33 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-0.83)[-0.830]; MV_CASE(0.50)[]; DMARC_POLICY_ALLOW(-0.50)[yahoo.com,reject]; R_SPF_ALLOW(-0.20)[+ptr:yahoo.com]; R_DKIM_ALLOW(-0.20)[yahoo.com:s=s2048]; MIME_GOOD(-0.10)[text/plain]; DWL_DNSWL_NONE(0.00)[yahoo.com:dkim]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; TO_MATCH_ENVRCPT_SOME(0.00)[]; RCVD_TLS_LAST(0.00)[]; FREEMAIL_ENVFROM(0.00)[yahoo.com]; RCVD_IN_DNSWL_NONE(0.00)[98.137.65.146:from]; RCVD_COUNT_THREE(0.00)[3]; FREEMAIL_FROM(0.00)[yahoo.com]; TO_DN_SOME(0.00)[]; ASN(0.00)[asn:36647, ipnet:98.137.64.0/20, country:US]; DKIM_TRACE(0.00)[yahoo.com:+]; FROM_EQ_ENVFROM(0.00)[]; RCPT_COUNT_TWO(0.00)[2]; MIME_TRACE(0.00)[0:+]; MLMMJ_DEST(0.00)[freebsd-current@freebsd.org] X-Rspamd-Queue-Id: 4QBM5w0lq7z49Fl X-Spamd-Bar: --- X-ThisMailContainsUnwantedMimeParts: N Alexey Dokuchaev wrote on Date: Wed, 03 May 2023 07:53:09 UTC : > On Mon, May 01, 2023 at 06:14:49PM +0000, Glen Barber wrote: > > ... > > There is no feasible way we are going to make the branch point of > > stable/14 in time, with that scheduled for May 12, 2023 with the above > > points. That said, this is not an all-inclusive list, but the more > > major items on our radar at the moment. > > Does this delay mean we might get Clang 16 in the base? Current 15.0.7 > hits assertion on one of my ports which had allegedly been fixed in 16. > Also, AFAIU it comes with better support for modern C++, e.g. ranges. These notes are based on using -std=c++20 and llvm16 on opensuse tumblweed (in early April), which has libc++ support configurable. They also presume that the FreeBSD llvm16 update fully adopts the libc++ from llvm16. (FreeBSD LLVM upgrades do not always do so at the initial upgrade time.) __cpp_lib_ranges would go from undefined to 202106 . C++20 also has a later 202110 . C++23 has 3 later values, the last being 202211 . (I'm generally omitting the L suffixes in my materials.) A couple of the C++20 ranges versions are late, retroactive fixes ["(DR)"s] for things that could not wait for C++23: __cpp_lib_ranges ------ 202106 (C++20) (DR) __cpp_lib_ranges ------ 202110 (C++20) (DR) So only the 202106 one was in llvm16 when I tested llvm16. (If I remember right, using -std=c++23 got the 202110 fix as well.) Other libc++ things going from undefined to a defined status are: __cpp_lib_constexpr_complex __cpp_lib_constexpr_vector __cpp_lib_memory_resource __cpp_lib_polymorphic_allocator __cpp_lib_source_location It does not appear that any other __cpp_lib_... macros would change values for -std=c+=20 use. As for the overall status for ranges . . . C++23 has lots of changes/additions for ranges: (The ------'s indicate being undefined in llvm15.) __cpp_lib_ranges ------ 202202 (C++23) __cpp_lib_ranges ------ 202207 (C++23) __cpp_lib_ranges ------ 202211 (C++23) __cpp_lib_ranges_as_const ------ 202207 (C++23) __cpp_lib_ranges_as_rvalue ------ 202207 (C++23) __cpp_lib_ranges_cartesian_product ------ 202207 (C++23) __cpp_lib_ranges_chunk ------ 202202 (C++23) __cpp_lib_ranges_chunk_by ------ 202202 (C++23) __cpp_lib_ranges_contains ------ 202207 (C++23) __cpp_lib_ranges_enumerate ------ 202303 (C++23) __cpp_lib_ranges_fold ------ 202207 (C++23) __cpp_lib_ranges_iota ------ 202202 (C++23) __cpp_lib_ranges_join_with ------ 202202 (C++23) __cpp_lib_ranges_repeat ------ 202207 (C++23) __cpp_lib_ranges_slide ------ 202202 (C++23) __cpp_lib_ranges_starts_ends_with ------ 202106 (C++23) __cpp_lib_ranges_stride ------ 202207 (C++23) __cpp_lib_ranges_to_container ------ 202202 (C++23) __cpp_lib_ranges_zip ------ 202110 (C++23) Ranges seems to be an active area of development across multiple standard vintages. === Mark Millard marklmi at yahoo.com