From nobody Thu Feb 8 10:00:56 2024 X-Original-To: freebsd-toolchain@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 4TVsvB1VkQz59Pk0; Thu, 8 Feb 2024 10:01:10 +0000 (UTC) (envelope-from eduardo@freebsd.org) Received: from smtp.freebsd.org (smtp.freebsd.org [96.47.72.83]) (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 "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TVsvB140dz4dyX; Thu, 8 Feb 2024 10:01:10 +0000 (UTC) (envelope-from eduardo@freebsd.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1707386470; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DPT0fRwgwSZSZj0+MBrtBaLDDFGt3peG3KYSi4Tql9Q=; b=DNF6LcCq6G+uxKmRIEkhcbgUsbbDG+saLDOQhP0v0JdPBa9KfM/WC+IYlF6HS+jf9CZhEv RIAxDcWbLhh1HBge+Ggp2FlWCjnUSSd+KVRBNWnpheo4uWjFBAYaluakrPtX9PJJEbf7c+ +9vWTtdj/hEdIN2ezyDu/prIhuxjtIx1z/RkTXUSwKXARqOn7oHp6jG+JxV1vqbhRqlllY mL6OFVIqoGhKnOdUr6YMpMHsX+LztZrQq2TLb4DsMggFu5RBVp9F2bUOPR+2Mlb+k4q9mr +jZwnvPk/Ac9uRg0TWQxP+TPx+pDq5b0tg7u8FTq8a6sRfne8ymItCAfwf6wxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1707386470; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=DPT0fRwgwSZSZj0+MBrtBaLDDFGt3peG3KYSi4Tql9Q=; b=f6iRctuf6yrRxcLJxOjkT13E1AFMHBb65iknG/ioiP100bzTnBt9ihLjcsaOm79VnHgAmy RwMO5LHLP2mosFRsjRfrvx6IhkDj1cZlLajDIGoz3KsJ4RIBoPAKxr3ko/xdZnYVg6lS0O 87BTK5g6LlOYsgsix3dmHKqWkV6EI3+n9DtDfAH75/2X8MY0b2J/YqM9oJerwGsygiQGfI R/2EeudZyXVhjYqsRfx+zAPjvF2PHCF5VRfJtBFmAgQXuAHXDv1kICovfPX7SOkkMYIA8s rDU60yxXHojz0Cosa1+R1qY/j3XIEP8+2M8kWpvYU7L087NO7Yj3z3ntej9Qgw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1707386470; a=rsa-sha256; cv=none; b=uQ86Lhe//AvBFbATvG28ZvL6i2IzPPIMc0qbchRvc2Sycs6KeNHnxrprP6aU8BN44wjdMN PfddQnqb78En6FhiHg4rKi2FZLwDOVh0c13bgiJDivL4EzogXqOM6ncS5D05WzzJU0oOaK H5W2CCwdL+N35Dt8BMA5KP+EBdUt/apRM49JlRSQFDPIHJ0U4R4ZAZWaOnB2OKKnBO8O9p FTaTZ+qyn0xw/HWXU1gBgpJxapdb+pLso2LVPULIwXL//sNHG+wTa6jm3FoGeT/tvg8MvR LN3M+wy3MG+t2r7yPbAcPY4B+36QbHlu6QEWXnSourTvCLEqyfKXQTrcfhKxJg== Received: from mail-qt1-f172.google.com (mail-qt1-f172.google.com [209.85.160.172]) (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-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) (Authenticated sender: eduardo) by smtp.freebsd.org (Postfix) with ESMTPSA id 4TVsvB00bwzPJR; Thu, 8 Feb 2024 10:01:09 +0000 (UTC) (envelope-from eduardo@freebsd.org) Received: by mail-qt1-f172.google.com with SMTP id d75a77b69052e-42a4516ec46so7388141cf.0; Thu, 08 Feb 2024 02:01:09 -0800 (PST) X-Gm-Message-State: AOJu0Yw0EfEkwbANK8ulzngm/BzGscw+KIkLDnOukhSVpuN23GNNHapa KgKY28s5hAmEPAve6ulSHAH5c9hgnQufHGsAbzcdFXl8liE96hfuZJjfx/rwunJ9+98jMrCLndM trkfAukP43V4t4H/uxsPu4Hrml9M= X-Google-Smtp-Source: AGHT+IFmlPg62weA/Exh63fZXGSTuoUfRZPr4HMI7ZyI9hS5exkrwxXmrlXx5laM5zXJ1NW7zLvu6VWRyVD4P71Agvg= X-Received: by 2002:ac8:7d49:0:b0:42c:3a04:58ca with SMTP id h9-20020ac87d49000000b0042c3a0458camr3539197qtb.11.1707386469380; Thu, 08 Feb 2024 02:01:09 -0800 (PST) List-Id: Maintenance of FreeBSD s integrated toolchain List-Archive: https://lists.freebsd.org/archives/freebsd-toolchain List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-toolchain@freebsd.org X-BeenThere: freebsd-toolchain@freebsd.org MIME-Version: 1.0 References: <62C8F08E-8D73-4918-A91F-4FC01E94FD8A.ref@yahoo.com> <62C8F08E-8D73-4918-A91F-4FC01E94FD8A@yahoo.com> <2B9415F3-80C7-4B48-9CF0-7F1FD0BE3FEA@FreeBSD.org> In-Reply-To: <2B9415F3-80C7-4B48-9CF0-7F1FD0BE3FEA@FreeBSD.org> From: Nuno Teixeira Date: Thu, 8 Feb 2024 10:00:56 +0000 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Why lang/gcc14-devel builds are failing on the build servers: needs USES= compiler:c++14-lang (or higher) instead of compiler:c++11-lang To: Dimitry Andric Cc: Mark Millard , FreeBSD Toolchain , FreeBSD Mailing List , "salvadore@freebsd.org" Content-Type: multipart/alternative; boundary="000000000000007c700610dbe4b6" --000000000000007c700610dbe4b6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Ok, let's try other way: Suppose that port compiles with c++17. Do you need to set "compiler:c++17-lang' capability? No, base clang supports it. Same for the other capabilities listed in porter's handbook. Dimitry Andric escreveu (quinta, 8/02/2024 =C3=A0(s) 08:3= 9): > Deprecated? It's essential to figure out the compiler type and version, i= f > you need that in a port Makefile! > > How are you going to do that otherwise? If you don't set USES=3Dcompiler,= at > the least, COMPILER_TYPE and _VERSION aren't even defined... > > -Dimitry > > > On 8 Feb 2024, at 08:40, Nuno Teixeira wrote: > > > > USES compiler is somehow deprecated as clang and gcc on base and ports > supports capable compiler described in handbook: > > https://docs.freebsd.org/en/books/porters-handbook/book/#uses-compiler > > > > Mark Millard escreveu (quinta, 8/02/2024 =C3=A0(s) > 05:52): > > The error on the FreeBSD build servers: > > > > QUOTE > > > /wrkdirs/usr/ports/lang/gcc14-devel/work/gcc-14-20240114/gcc/config/aarch= 64/aarch64.cc:13095:50: > error: constexpr variable 'tiles' must be initialized by a constant > expression > > 13095 | static constexpr std::pair tiles[] =3D { > > | ^ ~ > > 13096 | { 0xff, 'b' }, > > | ~~~~~~~~~~~~~~ > > 13097 | { 0x55, 'h' }, > > | ~~~~~~~~~~~~~~ > > 13098 | { 0x11, 's' }, > > | ~~~~~~~~~~~~~~ > > 13099 | { 0x01, 'd' } > > | ~~~~~~~~~~~~~ > > 13100 | }; > > | ~ > > > /wrkdirs/usr/ports/lang/gcc14-devel/work/gcc-14-20240114/gcc/config/aarch= 64/aarch64.cc:13096:5: > note: non-constexpr constructor 'pair' cannot be used > in a constant expression > > 13096 | { 0xff, 'b' }, > > | ^ > > /usr/include/c++/v1/__utility/pair.h:225:5: note: declared here > > 225 | pair(_U1&& __u1, _U2&& __u2) > > END QUOTE > > > > is because C++11 did not have pair constructors being constexpr. > > C++14 (and later) does. Yet lang/gcc14-devel 's Makefile says: > > > > USES=3D compiler:c++11-lang cpe gmake iconv libtool makeinfo > perl5 tar:xz > > > > > > =3D=3D=3D > > Mark Millard > > marklmi at yahoo.com > > > > > > > > > > -- > > Nuno Teixeira > > FreeBSD Committer (ports) > > --=20 Nuno Teixeira FreeBSD Committer (ports) --000000000000007c700610dbe4b6 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Ok, let's try other way:

Suppose that port compiles with c++17. Do you need to set "compiler:c= ++17-lang' capability?
No, base clang supports it. Same for t= he other capabilities listed in porter's handbook.

Dimitry Andric = <dim@freebsd.org> escreveu (qu= inta, 8/02/2024 =C3=A0(s) 08:39):
Deprecated? It's essential to figure out the compiler= type and version, if you need that in a port Makefile!

How are you going to do that otherwise? If you don't set USES=3Dcompile= r, at the least, COMPILER_TYPE and _VERSION aren't even defined...

-Dimitry

> On 8 Feb 2024, at 08:40, Nuno Teixeira <eduardo@freebsd.org> wrote:
>
> USES compiler is somehow deprecated as clang and gcc on base and ports= supports capable compiler described in handbook:
> https://docs.freebsd.org/= en/books/porters-handbook/book/#uses-compiler
>
> Mark Millard <marklmi@yahoo.com> escreveu (quinta, 8/02/2024 =C3=A0(s) 05:52): > The error on the FreeBSD build servers:
>
> QUOTE
> /wrkdirs/usr/ports/lang/gcc14-devel/work/gcc-14-20240114/gcc/config/aa= rch64/aarch64.cc:13095:50: error: constexpr variable 'tiles' must b= e initialized by a constant expression
> 13095 | static constexpr std::pair<unsigned int, char> tiles[] = =3D {
> | ^ ~
> 13096 | { 0xff, 'b' },
> | ~~~~~~~~~~~~~~
> 13097 | { 0x55, 'h' },
> | ~~~~~~~~~~~~~~
> 13098 | { 0x11, 's' },
> | ~~~~~~~~~~~~~~
> 13099 | { 0x01, 'd' }
> | ~~~~~~~~~~~~~
> 13100 | };
> | ~
> /wrkdirs/usr/ports/lang/gcc14-devel/work/gcc-14-20240114/gcc/config/aa= rch64/aarch64.cc:13096:5: note: non-constexpr constructor 'pair<int,= char, nullptr>' cannot be used in a constant expression
> 13096 | { 0xff, 'b' },
> | ^
> /usr/include/c++/v1/__utility/pair.h:225:5: note: declared here
> 225 | pair(_U1&& __u1, _U2&& __u2)
> END QUOTE
>
> is because C++11 did not have pair constructors being constexpr.
> C++14 (and later) does. Yet lang/gcc14-devel 's Makefile says:
>
> USES=3D=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0compiler:c++11-lang cp= e gmake iconv libtool makeinfo perl5 tar:xz
>
>
> =3D=3D=3D
> Mark Millard
> marklmi at yahoo.com
>
>
>
>
> --
> Nuno Teixeira
> FreeBSD Committer (ports)



--
Nuno Teixeira
FreeBSD Committ= er (ports)
--000000000000007c700610dbe4b6--