Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 27 May 2023 22:18:24 -0700
From:      Enji Cooper <yaneurabeya@gmail.com>
To:        FreeBSD Current <freebsd-current@freebsd.org>
Cc:        Dimitry Andric <dim@FreeBSD.org>
Subject:   "make hierarchy" from main tree breaks c++ headers on older branches with unclear errors if "make install world" is interrupted
Message-ID:  <E94D1471-8CDC-4AC3-A46B-C22922864637@gmail.com>

next in thread | raw e-mail | index | archive | help

--Apple-Mail=_03B6F014-F320-4F2F-9F3E-5CE01D401001
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hi all,
	I just tried to run =E2=80=9Cmake hierarchy=E2=80=9D from a main =
tree on a 13.2-RELEASE system, and doing so completely broke my headers.
	It took me about 30 minutes to figure out what happened=E2=80=A6 =
/usr/include/c++/v1/__string was a header, whereas on :main it=E2=80=99s =
a directory?!

$ git diff freebsd/releng/13.2 main -- etc/mtree/BSD.include.dist)
...
@@ -47,8 +53,12 @@
             ..
             __ranges
             ..
+            __string
+            ..
             __thread
             ..
+            __type_traits
+            ..
             __utility
             ..
             __variant
@@ -202,6 +212,8 @@
...
$

	make hierarchy seems to wipe out the file and replace it with a =
directory, which I guess isn=E2=80=99t terribly confusing since it=E2=80=99=
s just an unlink, but the error messages that followed from c++ was =
confusing; the error message of note was the first part saying __string =
was missing =E2=80=94 the rest was just garbage complaints about C++20 =
extensions, e.g.,

<source>:9:5: warning: use of function template name with no prior =
declaration in function call with explicit template arguments is a C++20 =
extension [-Wc++20-extensions]

	I reinstalled the headers by going to lib/libc++ in my =
releng/13.2 tree, building, and installing all of the 13.2-RELEASE =
headers.
	This change has been live for almost a year now on :main =E2=80=94=
 is this a known caveat when doing a source-based upgrade from =
13.2-RELEASE* to 14.0-CURRENT, i.e., that the installworld (if =
interrupted) could break the c++ compiler?
Thank you,
-Enji


$ git blame etc/mtree/BSD.include.dist
...
81ad626541db9 (Dimitry Andric          2022-07-04 21:20:19 +0200  56)    =
         __string
81ad626541db9 (Dimitry Andric          2022-07-04 21:20:19 +0200  57)    =
         ..
...
$ git log 81ad626541db9^..81ad626541db9
commit 81ad626541db97eb356e2c1d4a20eb2a26a766ab
Merge: 5fff09660e06 145449b1e420
Author: Dimitry Andric <dim@FreeBSD.org>
Date:   Mon Jul 4 21:20:19 2022 +0200

    Merge llvm-project main llvmorg-15-init-15358-g53dc0f10787

    This updates llvm, clang, compiler-rt, libc++, libunwind, lld, lldb =
and
    openmp to llvmorg-15-init-15358-g53dc0f10787.

    PR:             265425
    MFC after:      2 weeks

commit 145449b1e420787bb99721a429341fa6be3adfb6 (tag: =
vendor/llvm-project/llvmorg-15-init-15358-g53dc0f107877)
Author: Dimitry Andric <dim@FreeBSD.org>
Date:   Sun Jul 3 16:10:23 2022 +0200

    Vendor import of llvm-project main =
llvmorg-15-init-15358-g53dc0f107877.

--Apple-Mail=_03B6F014-F320-4F2F-9F3E-5CE01D401001
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEtvtxN6kOllEF3nmX5JFNMZeDGN4FAmRy5CEACgkQ5JFNMZeD
GN7b2RAAlDTMcKDKVqzmA2H1Ghs9kob4itqlG4r+1/1S/kZNZvcp6JbNwVZxyc+p
09zRjt8otyZ13hlNsLZnCOQpN76KRytqtd9z0voza9nsQ3vW1HFzv0mLfTSodTxm
CE5rahNQLYSaeojTd6mixlk9jefXt8y4EUJDNS9vxXZk0iSKAICvAod1Pr/KwlLZ
hQfqmX1MdTHF3kgG456BSA3/Ymb01Ric01JVlD9guyLfJToO9aE342W/07KqYr/L
WTbQFRc2kGzQnbulUmDn51//Zg/m7T7kviBt47KEQrv6hEqnD99oEGCAK55y/iva
L8IUpxHOZ2rMBJFDEtt4Hruqhl3oCwwsJlr15+Zd03SZZPHnQfc/umYuM7N/t83E
9lLgPd1LhEipPf2xPbeJ/lvjoTIj0GCGekhG8K4Qs2SHvnmQnPFs8Jjy5qnFTABX
Vvpr8+lTzvsmgGLeaDZqIvjxxQwCEKsoRVI8c4KhZcdaCrmMdbfRLkeY8DNG+wEP
H+6dsGxTyfnkxp62ByueXDb0l8GO8qTh2SDTl/+AKY3cbaKPUXJpXvaD1kCAbqRq
zXa2/bVA0Zj7kCulQVCzDBbSzz48q/Z0ABTn9oRndAKhawcdyG8KhggB019t9HUV
sWjWkxkIfkvFV4UW0RWnaGk7dQmwQ4ZLdgLTCMpnAX8dqrBH8G0=
=prPX
-----END PGP SIGNATURE-----

--Apple-Mail=_03B6F014-F320-4F2F-9F3E-5CE01D401001--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E94D1471-8CDC-4AC3-A46B-C22922864637>