From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00082601.pphosted.com (mx0b-00082601.pphosted.com [67.231.153.30]) by sourceware.org (Postfix) with ESMTPS id F2C0B385840B for ; Thu, 13 Jan 2022 11:45:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F2C0B385840B Received: from pps.filterd (m0109332.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 20D9QWnV002958 for ; Thu, 13 Jan 2022 03:45:02 -0800 Received: from maileast.thefacebook.com ([163.114.130.16]) by mx0a-00082601.pphosted.com (PPS) with ESMTPS id 3djheprm9c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 13 Jan 2022 03:45:02 -0800 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (100.104.31.183) by o365-in.thefacebook.com (100.104.36.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 13 Jan 2022 03:45:01 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aY+pQOJgi4PN3nfLl4hwqwtqFl64dif5QNv8wyrRiucoclNy5AC++/8FRT4ByJ0l92pQ7YZoSGcp5zs2axxXVgOAgXC1b+tjKUxg11Fy9sgUKsL7ejaLaT8o327kxSrB4Lo0DZ6ulJiBpBTC0JcmiXm2tUctpXoOsdb1tI3TxA3GqMrbFUTh3qLttBcbwr8WuLhjeOvPQ5ISa18QLKT3d58BhukNjHGBtflFptXgxljUYeN7BWsZF18qnWxbJvwqX6L8rKYer4f/GZ78UlwlHKFxzv5eEmnU/VLaDY1f0zb/45kDyP5ygI5DOVU4x49Jg7m4BbKEmmu74/ccu80KDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ec7z/MaWwtnAVBuykJMz14Dss8CEv6PoKKPZ0DTZf70=; b=I+qv62Lm9JL6tvuX0yhxtZ4N4YlCPgcAB6n8dIcbPYNvde+5/1d41mrMONAFQmdalzEIxS8AKpJZx5zxt7K3f7sJSmWcFf0699hkZ9qpGHAtnVLrrcDoOJ8+IIgkfyq20bymFL+cm3gRiWEcde10LbtKFXDl8hVf4NWdVtn5kGfifYtKGSqW6kfW3u3pUwrRfIZFRCPUgSIxUgducZzaAELoc+8AOcZw+RYTUNORHtcVC4WUFjSKMhxPx5vOeXmEHZcCy+bQDsObbPNJvY3FTq3aB6yFfYcc7nkNBKIKbNeeJruFlhMTMdDYZvwgP+rVfoqpa8WNwPW7wMVvrPIFLQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fb.com; dmarc=pass action=none header.from=fb.com; dkim=pass header.d=fb.com; arc=none Received: from MW4PR15MB4444.namprd15.prod.outlook.com (2603:10b6:303:105::21) by MW2PR1501MB1978.namprd15.prod.outlook.com (2603:10b6:302:e::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4867.9; Thu, 13 Jan 2022 11:45:00 +0000 Received: from MW4PR15MB4444.namprd15.prod.outlook.com ([fe80::cc14:2c11:1038:8918]) by MW4PR15MB4444.namprd15.prod.outlook.com ([fe80::cc14:2c11:1038:8918%3]) with mapi id 15.20.4867.012; Thu, 13 Jan 2022 11:45:00 +0000 From: Alex Hornby To: "gcc-help@gcc.gnu.org" Subject: New g++ folly compile error with gcc 11.x. Bisected to PR99445 c++: Alias template in pack expansion Thread-Topic: New g++ folly compile error with gcc 11.x. Bisected to PR99445 c++: Alias template in pack expansion Thread-Index: AQHYB9gZo+1P1ZtBDEK+LUbb31zosw== Date: Thu, 13 Jan 2022 11:45:00 +0000 Message-ID: Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: suggested_attachment_session_id: e5bbf6b7-008d-8dd5-31a3-606c291fb129 x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: be7d1e7d-7e73-45a4-849f-08d9d68a2152 x-ms-traffictypediagnostic: MW2PR1501MB1978:EE_ x-microsoft-antispam-prvs: x-fb-source: Internal x-ms-oob-tlc-oobclassifiers: OLM:1443; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 5AnLig2cznwdMJ1luCg1daOp0WhCzmBLqMDiooQUU9uPoUyKOeUwRiH5rboCR5r+AKTJ59jyJSidamj5tFw8M1h5Eo6PpnUtjJ38bZ6eBy8rTbxbnYE/Feijh+No1DhoQ485twPOOQ2bs58jWpgrpjGiT7y4omG/Q+APcvB6R5Uay96JsVgADkpN/n/hj10zQmrIHPiQ9B+zdRL73ZOA6soZ0Vc/r5z1+x/oNCsLPrT3VG/EJXzb/l6yBuTBPqE7PayqO8lEV9iNwaJuDturyBXPnNL8wZ9J323FJ6cdXYzCk2qPeRH/di8JBPA9lTgZyxuKTeVA1CD9PavQqhab9fmHsvLRFE8IpH3eN7mLQ9kn2vEM8HpyPVgfafFQvMUz1nTNj6s0Peao/7Wa5tJMB7L+8JRyaC+w2cM3Uz6g20kOxJd7rD3CUXNY8j6ecQ3/m5/2i6ZvEUs0AKluwThSk95P5N+HHVHZGF6xeB+nPVfa+eV8ubtMyqFe8omUYrnHmfAH02BrvvvhVItvdzpu7ujPhOPkJgpXmGFEE2jF4NtcNripE84mZ3osU6/ZY7GaORXWgunRy3JSCObRKESJq2ojxNwVbwa3BAGnTEHhAoKaBpjDl98jLtH/ehHi+yCM8MR23n8Lz4d0MutjXoEfUSweoxigtGDCZeRec08tNraFdmN2QRerN7CDHfkJLj0uRCpwnoTAgbV7YRGwKNeSIG1as63ZG9pDaEoC563Qm5nwhUeoZQ1UJoLwElHy4M+dTEQVauFU3fC0cRScY8PeCT2Uev4zHdtdDq5sdAnXty315B5pzXi1Ix3En1Bx4y1YtLsJjgrEFrXGjQ+I1A4I4w== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MW4PR15MB4444.namprd15.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(7696005)(91956017)(966005)(33656002)(76116006)(6506007)(71200400001)(66476007)(8936002)(64756008)(66946007)(86362001)(316002)(66446008)(2906002)(8676002)(6916009)(66556008)(122000001)(508600001)(52536014)(5660300002)(186003)(38100700002)(55016003)(38070700005)(9686003); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?jluxds2HvdFJVSCDE1nGvzQOtcFPqtOhmPpIaKEsIkos+dxapW9hbfIF?= =?Windows-1252?Q?X0zrQ5QbR4haECrByDfAMM69a940rfvWvaU03u/Q6U7SS9gf4OsL7ITJ?= =?Windows-1252?Q?CVNmL8FjpHURpMaf/fkinDi9baKlQIJaW20wYFbjrsEbGvaH7rcfmUeo?= =?Windows-1252?Q?Qxn7ImRS13iOjNzFvu+iHbeYjQacfah7juFCoqqZ6HR3x+/0tG1DYgyQ?= =?Windows-1252?Q?iILb+BNe87xu+qlvFx2Fa8p5p1uXAgp4CNwC1I6Xpzi49S43f8s1QRPg?= =?Windows-1252?Q?RzOstS6MvREYPq6e2NxcawSYgATJfCgV8+6i2i6yoWHlw6EEMneWAqIH?= =?Windows-1252?Q?h1SO4BdOpLrBCLfT0cUagw+81EF/t84d0qOU2UKWHI/ljOVrxXTg7HjD?= =?Windows-1252?Q?Sg1bCjQ1BoWgBo7Kr/asHKARFb5qCOCZpNcwAyEzMKOmB7lDREcMSreo?= =?Windows-1252?Q?ZKG4y648ljfn7odo+dzAbck2SWhgbCSYQYbH4oyqIpAj7/Gs1b2qcQfR?= =?Windows-1252?Q?okTMEXNMbmkbDifCdoMzmK8zg6nEbHWdGZvNJPo14GD4+vBRv0ZyBaKE?= =?Windows-1252?Q?8JzrtjjcFR6fdXyYWm2jX5VWCfxcowEPwU+bpVSHiR5PKjb+hrhhqu08?= =?Windows-1252?Q?GlWrf+xzmw7haLLrNEHHhUzEZl+pMQuWdPQbPN2uKc2Bu8C+smJuOwvo?= =?Windows-1252?Q?wqOcMUlCZYbZiG+nt4bWqpKvcM1n/30gIF3dx3qIC0e+Nozt2PYD/TVh?= =?Windows-1252?Q?Z9dPYWcY9rFRgt6Jw/gaOJiF0XjoRUnMHqicE6lfTYGHqhKefvBVG1GX?= =?Windows-1252?Q?1tqUp90vAM6DO8s276/Id+4kyCIovS/m4qdDkYYBETmYQlCi+cXGmK7m?= =?Windows-1252?Q?u6oiyCxttwpadrE7okq53994vibtDyTtYPqJRHuHKBOkaP4qTHjVZ0jG?= =?Windows-1252?Q?gwRLHvLjF/xX2UsrWX0dFgGXyLqXnomF4ItbrZuStC7ObnLmELkEtAmS?= =?Windows-1252?Q?Mqf7+pm6oSlI9PmOWFcWk1MH97Nalh0NKybj6ogOaEPsgGCr64UW+lwQ?= =?Windows-1252?Q?ov/3zw6XHUKWoqdB9MosFXTn9doFebV5ZhnoEFxyA1UIbhpDkx7v2wnp?= =?Windows-1252?Q?NegsEJp8nDFpEFsMj5/ln2qNO679Er/9BC+svKiEXX7T/XFJZYyIY2Lf?= =?Windows-1252?Q?SNq+GW8aUooTvt2kumNJGLqckk7K7Hk3atkUDc4eFu7J3z+2k3BpXq+x?= =?Windows-1252?Q?++XcS6m7HuAZBhMQKIb/gzgPW4CpNOS8r1efSdi6Oq/t/QbFtlxeIU5E?= =?Windows-1252?Q?r/35fbfQ8evce3j/jBpD5ul2znvRyD02R6r5ZEvWNsnKiQpZoYf6U7O6?= =?Windows-1252?Q?Y5vA4mz6wVVsb46LCKC97v+dFJmLu7+SgGxgntVOjDB5wvmB/bSE9P0H?= =?Windows-1252?Q?FGpNbEaUcUIKV2yc5LWA7sW4qVMLH61YAfGdDoV6cSjw566eY3FDv3yi?= =?Windows-1252?Q?kFJC6VwVTbdqbVQrnAg+bT7i0m01zxgN7Cs1MN2WKmPF1G3xj5NzCNe8?= =?Windows-1252?Q?2vjNbGfDURU5w7wB8y94Or9D5SUwyvVTEA5izXKoP0GP3nHE6iZoseBU?= =?Windows-1252?Q?+W7CSdkaX7715ywtLQGY1Yq6W/2sLuM0uL2SYNQGVKGlWYb+cZ3cgvqe?= =?Windows-1252?Q?Q9WPveGMGCx530u9JZpn3Y+czbrBrGNwVRhWgXgQsA6l9zS/6HXgpA?= =?Windows-1252?Q?=3D=3D?= Content-Type: text/plain; charset="Windows-1252" X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR15MB4444.namprd15.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: be7d1e7d-7e73-45a4-849f-08d9d68a2152 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2022 11:45:00.1897 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 8ae927fe-1255-47a7-a2af-5f3a069daaa2 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: iIYTtvJ2pl59KjGI2phhZ1Wdgfx+8wEm511LstOrccYaIFoMf7zizmcLVZc1N0A2 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW2PR1501MB1978 X-OriginatorOrg: fb.com X-Proofpoint-GUID: IU5ZqeLqcaWBPWP6fyx2Iwk-8eLqBvkp X-Proofpoint-ORIG-GUID: IU5ZqeLqcaWBPWP6fyx2Iwk-8eLqBvkp Content-Transfer-Encoding: quoted-printable X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.790,Hydra:6.0.425,FMLib:17.11.62.513 definitions=2022-01-13_04,2022-01-13_01,2021-12-02_01 X-Proofpoint-Spam-Details: rule=fb_outbound_notspam policy=fb_outbound score=0 phishscore=0 adultscore=0 impostorscore=0 priorityscore=1501 bulkscore=0 suspectscore=0 mlxscore=0 spamscore=0 mlxlogscore=968 malwarescore=0 clxscore=1011 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2110150000 definitions=main-2201130070 X-FB-Internal: deliver X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 13 Jan 2022 11:45:04 -0000 When compiling folly on Fedora 35 with gcc from the included 11.2.1-7 packa= ge, I found that the badge_test code fails to compile,=A0 whereas it builds= fine with gcc 10.x and with the fedora 35 clang (13.0.0-3.fc35)). Bisecting from https://gcc.gnu.org/git/gcc.git with pre-processed source i= ndicates problem introduced in commit: [a2531859bf5bf6cf1f29c0dca85fd26e809= 04a5d] c++: Alias template in pack expansion [PR99445] Bisected with commands, (bisection script below) git bisect start basepoints/gcc-12 basepoints/gcc-11 git bisect run ~/local/bisect/gxx_bisect.sh Example of the problem from a folly build along with the command line I go= t preprocessed source from is in https://github.com/facebook/folly/commit/= af966d2ce25c14c96373bf39c8ae2b406219ffb4 Error looks like: '/home/alex/local/bisect/test/0cc79337ad265aabccab63882a810f9dc509a9d0/buil= d' In file included from /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:= 19: /home/alex/local/folly/folly/lang/Badge.h: In instantiation of =91class fol= ly::any_badge<{anonymous}::FriendClass, {anonymous}::OtherFriendClass>=92: /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:38:40: required from= here /home/alex/local/folly/folly/lang/Badge.h:99:18: error: expansion pattern = =91folly::StrictDisjunction...>=92 cont= ains no parameter packs 99 | /* implicit */ any_badge(any_badge) noexcept {} | ^~~~~~~~~ /home/alex/local/folly/folly/lang/Badge.h: In instantiation of =91class fol= ly::any_badge<{anonymous}::FriendClass, {anonymous}::OtherFriendClass, {ano= nymous}::DummyClass>=92: /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:39:53: required from= here /home/alex/local/folly/folly/lang/Badge.h:99:18: error: expansion pattern = =91folly::StrictDisjunction...>=92 cont= ains no parameter packs /home/alex/local/folly/folly/lang/test/BadgeTest.cpp: In static member func= tion =91static void {anonymous}::ProtectedClass::subset({anonymous}::Subset= Badges)=92: /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:39:54: error: cannot c= onvert =91any_badge<{anonymous}::FriendClass, {anonymous}::OtherFriendClass= >=92 to =91any_badge<{anonymous}::FriendClass, {anonymous}::OtherFriendClas= s, {anonymous}::DummyClass>=92 39 | static void subset(SubsetBadges badges) { superset(badges); } | ^~~~~~ | | | any_badge<{ano= nymous}::FriendClass, {anonymous}::OtherFriendClass> /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:40:24: note: initial= izing argument 1 of =91static void {anonymous}::ProtectedClass::superset({a= nonymous}::SupersetBadges)=92 40 | static void superset(SupersetBadges) {} | ^~~~~~~~~~~~~~ In file included from /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:= 19: /home/alex/local/folly/folly/lang/Badge.h: In instantiation of =91class fol= ly::any_badge<{anonymous}::FriendClass>=92: /home/alex/local/folly/folly/lang/test/BadgeTest.cpp:47:35: required from= here /home/alex/local/folly/folly/lang/Badge.h:99:18: error: expansion pattern = =91folly::StrictDisjunction...>=92 cont= ains no parameter packs 99 | /* implicit */ any_badge(any_badge) noexcept {} | ^~~~~~~~~ Exited with 0 Bisection script was: #!/bin/sh # adapted from http://moxielogic.org/blog/bisecting-gcc.html # Test with: # cd local/gcc #(or whereever gcc git repo is)=20 # ./bisect/gxx_bisect.sh # Run with: # git bisect run ~/local/bisect/gxx_bisect.sh # git clone of the gcc tree GCCSRC=3D"$HOME/local/gcc" # pre-processed test case TESTSRC=3D"$HOME/local/bisect/bisect_source.i" COMMIT=3D`git rev-parse HEAD` # Where to put gcc build and install dirs testdir=3D"$HOME/local/bisect/test/$COMMIT" mkdir -p "$testdir/build" mkdir -p "$testdir/install" # configure for C & C++ (cd "$testdir/build" && $GCCSRC/configure --prefix=3D"$testdir/install" --enable-languages=3Dc,c++= --with-system-zlib --disable-multilib --disable-libsanitizer --disable-boo= tstrap && make -j 32 && make -j 32 install) cxxbin=3D"$testdir/install/bin/g++" if test -x "$cxxbin"; then # build test case if "$cxxbin" -std=3Dgnu++17 -c "$TESTSRC"; then # everything's fine exit 0 fi # gcc can return exit codes outside of git's acceptable range, so... echo "Exited with $?" 1>&2=20 exit 1 else # No binary, skip broken builds with special 125 exit code exit 125 fi