From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by sourceware.org (Postfix) with ESMTPS id 064C73858D37 for ; Mon, 4 Mar 2024 13:57:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 064C73858D37 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 064C73858D37 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.165.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1709560645; cv=pass; b=D6H9Ia6nGDSHiZHe9RQIrc4mtHLLX7XENrgk70BbCDlm3s1nsginS5j84t/Z43bmRaocTXWG3N8H9jhFrBTg/0A9cEt+40HVZMIFCcW3VcpKPviukVJeRRmHASKyL17Y2tD9m8AdAt8lGul+6bDCkIGbf8HT6N1oXqTZmsxnXaM= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1709560645; c=relaxed/simple; bh=HhTqv18WCVh3EZGTMrKLw0zSe9Gn5rthQf75vAdNH7A=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=kG25JLC1YiC5yX3+HhdkiuXCsY3CbEze8m+3tp9rhfju/mAFmD09Qk+7atEGODz9rG513HpDkskJ/5Ndm9Hhwcsm0mtN1zHlcgtWC4kStBMm4+iqVYxg+aU08PSo2wOX7ojsMU2doYLGvBfmii/yp6h21QKTQ+PvXmrCbnKLbEc= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246627.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 424BTlFr027674; Mon, 4 Mar 2024 13:57:19 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : references : date : in-reply-to : message-id : content-type : mime-version; s=corp-2023-11-20; bh=MUE5A0+zTKYIC0EQU2sSEzbE5ST+kE0BnlGcrA7UTMA=; b=lrn/kXjqztvISN/TPdyzs2ZCm5gnFRXOWdGN+owheJ4tMrXYtH6Ajxjz0yUkVs7kZKUH ELwbFZB1g4ezxzGdBwaielIQopu9zJ/3R/I1LmH8EiTX54gkap69YfM18g+bElmRDRiy BYFSfZTH6fpKZdKho2tSgnTMOAMtCFC/rjFRlqxzTeDndIqzRpkq68EzWqd9+c2gfaaj T6pl7N5yP35y0j8dWXVe/G7FoYDEkIGzn6AONA3IGVnkVHFv+8mSYRv1N5ioIvGBMmhV 3dbzQn6irMnDqu3PBrRQxzNszf0c6E2G09pdZPJW9rTfyaTKivyj9Dfe32NPJXmiFo91 0A== Received: from iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta01.appoci.oracle.com [130.35.100.223]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3wktq23ndg-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 04 Mar 2024 13:57:19 +0000 Received: from pps.filterd (iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 424DKP2w018948; Mon, 4 Mar 2024 13:57:17 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2169.outbound.protection.outlook.com [104.47.56.169]) by iadpaimrmta01.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3wktj5sa1c-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 04 Mar 2024 13:57:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ScBkoRC0a/H6Zs53pABXkXuHWP13tz4xxwI3GrGI4T1gICyBH2ccM2cUaYCBrNCOLELk0Xt47adB68jBlKCzRTmvwGmmg0KmQGq0X4GEUfazs4rM/A+gsYu5snMyYS8i3x5PiieluwRMbR/s42pvQLrGEfMb5pEu8VoyGP7MQZZXwVsGEs0QbAx0Fmznl1o6KbzUZVszn2Z8ApJzJxG66kXxIuArjm5JmuU4odonNLG19qQsGZDZ2v5JlNj98LLJxLe5pCYpLUgW8V3aiJKNYAXvSoXH8srkTFwkG1O+qywuyIfzzzsjECmKuRQ8S0bW7dvjE8h2QJMM2n/mCmPv/g== 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=MUE5A0+zTKYIC0EQU2sSEzbE5ST+kE0BnlGcrA7UTMA=; b=Y1cHAH+7TkG0C6TEApBNkSj+pnVc1m9RHAaXs1kPqSthJjKTrKcySa8teRpgWb/VblnITpiWIoqAmNOUFXbJVjxrq8re2+HRdGEMe7WDSb2uNQW2UoJsVfa8XkGDT9wDhgTv4RlojqX6Jqso4raAa2R8zFT14xTbPyIs2Ovi0ctwQznTicRojgz+qImHDSOnNBTgS/L2gdPWVQyJumBIxKaiWOt8sUE3Zb6yy/GOx41NkCgn1c1a4kUcwQ5ayXZrzeBcRjZQDNu891hN9BnOsae4kQ4reR2B5iSyfrD27K2k+dXVTEq01u9Cvgm4fVp0UzCi4vYSFXKPpdhIW1HNWA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MUE5A0+zTKYIC0EQU2sSEzbE5ST+kE0BnlGcrA7UTMA=; b=DcMVBkc5eUaIcpIf+hKDb5MtJy4PUqk1rXOYhbEcu8s/DlcWD5nNMt2B8Jmxi/iYkFZy+YcBKDgCEd93KhPeNvEA01LzAKIrqiEO+xxcOraDgWvfoRkdW3KxQ+YvJFi4XuJ0UEfOX+zxDSrfWxusxkuWnIkZEtcgUi195f5tSYI= Received: from MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) by CH0PR10MB5212.namprd10.prod.outlook.com (2603:10b6:610:c8::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7339.39; Mon, 4 Mar 2024 13:57:15 +0000 Received: from MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751]) by MW4PR10MB6608.namprd10.prod.outlook.com ([fe80::67a4:9544:7249:7751%7]) with mapi id 15.20.7339.035; Mon, 4 Mar 2024 13:57:15 +0000 From: Nick Alcock To: Nicholas Vinson Cc: binutils@sourceware.org, Sam James Subject: Re: [PATCH 2/3] libctf: Add comment for conditionally def'd sym References: <87jzmjl5ah.fsf@esperi.org.uk> Emacs: resistance is futile; you will be assimilated and byte-compiled. Date: Mon, 04 Mar 2024 13:57:09 +0000 In-Reply-To: (Nicholas Vinson's message of "Sun, 3 Mar 2024 10:56:11 -0500") Message-ID: <87wmqije16.fsf@esperi.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.3 (gnu/linux) Content-Type: text/plain X-ClientProxiedBy: LO3P265CA0004.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:bb::9) To MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR10MB6608:EE_|CH0PR10MB5212:EE_ X-MS-Office365-Filtering-Correlation-Id: 7a04e3d2-1bdf-4af4-a8de-08dc3c52ff6c X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 74H7cPFNiZeGkgBfLGiXk3AT7zX+k8cymd7sPIuCoPbNJ9a76P2oKOrGDGUyg+sGSItflP9hunsxgQ2TxwtXOr8nSu7HPegGA2rayZPgt34R4/t07NzUCn2eApzY1lJRrGlWT+BiU3Y15dzzXJALjGZ6nIl0EfNMAwGyJuHxCxLxmDj02hVc0jfXLxoG38EulGaN1M9n0v+yLmPMkmztkfwkaQoOHd+uTniIicVAGaDItkc3ycNIJGEKfk4NPgvAokvH2CJu9UX6FHSuFObwvj0zBmTteUa8gQd8NlOzbCYgwbhqhr76tkZs0KCQ71mI2KS6Y9A+Ay01neuqupAnuWNLe2Q/FdfnyLNU17sPjqgcR85w/Py/wKPOARih6HSDRvvRQrbHAewMB6RuRK3Dpj4Bg467yzeDWpE5+2v1rTrfqWUZorehdatYxD2QGe3VImDoCshRQEuWUwVrejDM1LLDHXp1WiRMWJ446CIu553uiydh9b8apsfxeeQFX2c7iMaYR2jU3GtuoOxH4K2lvclwOoiKsf5KqHnk1YLTZl18mMfGBwVdTR2wCCz9oOg4dHLQRI3fzahY1Gnz7K365ArO1Er5+RIbej5gxSfPuWyrk7ER+M6QqpntD+uJLojCVjkXCEfHU4vQ4LOVzfVyi2tcJgsSAvMqRQ8AlLmkawg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR10MB6608.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CxcLAjRxUrz/bi/SvAQwIfIYbhDiHfvwBcP9JUg9/7xiB5pdjr7D+kYT1tft?= =?us-ascii?Q?aHTAKL68nzYwATVuS8+Mx8oLiZ8JsP+3hOl4OHf4ipOnXtkAvPPsPShMBmnb?= =?us-ascii?Q?pc609ZmVCwhx1Rh5DFnd/obhwn0X6iqcCN5oRNRLK+8il3QnP54mu1BCau1Q?= =?us-ascii?Q?04vt594MMB2HGTx7zGAnznhgAeCmUN3pUQEZLwN1UAAXMihLGfKiRYZ5Curi?= =?us-ascii?Q?p+OIZik8Ly6PkKun3rP39NDoyR+FSFIEtQPHkVBqKMdeCeVvmvOPcB1+Yk80?= =?us-ascii?Q?V8+twhnFKLO4xXoahWuDxZ5eQVEOqOjSPEAN/IXgcbbrYjSjA9tg/hVXmWmI?= =?us-ascii?Q?WtmnbEzZhOhRUBImKJ7NStb484mJwviRJQvnwE6Cqb83wnM+SLwrezy4kznX?= =?us-ascii?Q?opI2a97E8I8LHakagYU39l0nyEy5LNRW5scDumpcbp6/1ssaLvceyBj+ENjP?= =?us-ascii?Q?tjUo9j0pnBgwZXgUINx60yCIfubmfK8CpHpdzgfNZVGkkWdXafb4lydlZH0x?= =?us-ascii?Q?iqsTej+sZZIlXyZMqbJcf50da5N88nFwIiXuHzShL2oTP8DHoSpITpE63WRK?= =?us-ascii?Q?yjjSKwtNM4xGn3RuLwTSbgCZNvb32cwfvOR/0m0VlRzPpFFLA84mV5bFkBVZ?= =?us-ascii?Q?ktLtI1g2PFrw13iGsViRkbBat5hnYri5brZnCi6Mib/BA76ZyVI0n3PCtyHf?= =?us-ascii?Q?D/lIjgDI1iFuMKWb3q+vI/q236obsZRep50GbTC5CUK8r4nVPrejtACHpMjh?= =?us-ascii?Q?5U7gI8yuJE0oAUHxtTY4r15YEAEHAml5BjtxbgCiPE6DF74ImdreGop3N0p5?= =?us-ascii?Q?f8vyZ20f9IxBXlxmMdNfwIwXpqScNRoS6ZsoFW+RrO9vd0u5UqD6AmyeuF+E?= =?us-ascii?Q?or+eFQYQf68H2mG/YRWKc+ylCuFRmiIL9zVtIiK4F+EeMkj7OkvSaoXtd8Ek?= =?us-ascii?Q?cOTEnADeuywG+w6pZkA4OlzbPZIdc58Q2MP16kzjxXTOqYqkMHqauyaFGn7a?= =?us-ascii?Q?W/Bnxif/BR8dU0BGtTyHF7GRKwJp0W1cl2+PclKgshRULISEOCa8FXJErBfC?= =?us-ascii?Q?tEVEe/+dPEKr3E3RMYja7DqYTF05vlsd9S6yGUDacrCnVtq6c2wtou2yU+L3?= =?us-ascii?Q?zElW01Rh7cNfVrkRiegTqEl/Mp30ZSTrTOx5yxw192Bn1JHUPfCzQHD/jTA9?= =?us-ascii?Q?c7MGqcNHZb03KJ+WzNzXFfl2+E1nzWadcwLTx1YdnOne7ONu+QwIZCt/F1F1?= =?us-ascii?Q?rtenvsYv//gFD1uUN5nkEfNf1RTDjz2na4mzw7xswaXcu73HNv1h2/rwWl7O?= =?us-ascii?Q?USdYj9X2GG04BwbouGFTG37ITWV8smuEc0mkyA2j+97gJi3d6Jy/svJo46DX?= =?us-ascii?Q?JHwwgDi521Kcu56+TZ7ajDrPi9EA3zWdjePQZSUsu1enciKK0vFxCsqMvAU7?= =?us-ascii?Q?vS5e7FRmd21VRjNfMPLZQwa+Qq2Mgm402dQegCu7TvaowWTkm8ovlCNrfF/u?= =?us-ascii?Q?3tRTpe24v+viQU0bSy2tS1qWTi6+cvHuFyisqlwZStuMC6CIRe7Oc7YHmj0L?= =?us-ascii?Q?NKc4oDj+g4iakNg2I94Y5VXjkzr2fFZ3HUHxtZDlKS2XVTIwcVR9b5lRb+ZK?= =?us-ascii?Q?7A=3D=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: E9q0gJ0N7MIoxpBkYOstbOC68OhPt8uHt+7At18KWQ1MHbwhxUY7a7Kd/IRHNaxhd70qnzhwZ04kwnAmKU1yIjKTSe76zEU/W5FJbFfuagkKnIa2yPbV3NUCXoyT996vGNs6sKTIQUI7e1S09MuLb1B7DNF48C/UUuOosTN0uB7cYqguIkhp/tz4Wem0+mLdAakcik/SIhR5NpWAJWIuL5P3x8WiWHWQ4Vsus/+9FG73UpLW48bd9hL55hr/huMyEos8NujaHwYNyZ51o0sUNxFDkMYa+agqgM8UkpYx24XLNFhqe4o4OSWmsr5gmSihIiEeiFDto0cLMqfDF6xoSMHHntDpHaYeCbL/w3VWLDWtw9FfP4dAOiXoQyNnVCtJN+BDhxjh4lbvAk14eKr9DWC2HhhhY7Zjxgl7bE2b6AVXY121e/hARzv0W3Slvrifhr99gosiwnBsP0NUK8vUmWlDUO2H0eu41AwzpoA774n3L7x8ipUki7T4YStKho81+r35IGsCy+z8oy8TZk8kXRtdFGyfFmfKa7+tRPIhXZS2Uvfr6FUKvgIWBs5y+58Xv+M4SykCFHQF7dQpKqKFRqX6/bS7oJlLE+U1gXqIQq8= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7a04e3d2-1bdf-4af4-a8de-08dc3c52ff6c X-MS-Exchange-CrossTenant-AuthSource: MW4PR10MB6608.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Mar 2024 13:57:15.2147 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: OcYtkIIoDYD8RXtB13kM7Yj1g4GaCSJttximTKkwEnwxXhKeWzzk2qxXYfiT5OhUOy1xhQQARhrfhWgls88wEQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH0PR10MB5212 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-03-04_09,2024-03-04_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 suspectscore=0 adultscore=0 bulkscore=0 spamscore=0 mlxlogscore=942 malwarescore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2311290000 definitions=main-2403040105 X-Proofpoint-GUID: qOtqEUoQ22D2n13nDmVJYNp-JfFSUvOP X-Proofpoint-ORIG-GUID: qOtqEUoQ22D2n13nDmVJYNp-JfFSUvOP X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: On 3 Mar 2024, Nicholas Vinson said: > On 3/3/24 10:10, Nick Alcock wrote: >> On 2 Mar 2024, Nicholas Vinson uttered the following: >> >>> diff --git a/libctf/configure.ac b/libctf/configure.ac >>> index e4e430615bd..0494a537e78 100644 >>> --- a/libctf/configure.ac >>> +++ b/libctf/configure.ac >>> @@ -258,7 +258,8 @@ AC_CACHE_CHECK([for linker versioning flags], [ac_cv_libctf_version_script], >>> CFLAGS="$CFLAGS -fPIC" >>> AC_LINK_IFELSE([AC_LANG_SOURCE([[int ctf_foo (void) { return 0; } >>> int main (void) { return ctf_foo(); }]])], >>> - [ac_cv_libctf_version_script="-Wl,--version-script='$srcdir/libctf.ver'"], >>> + [ac_cv_libctf_version_script="-Wl,--version-script" >>> + decommented_version_script=t], >>> []) >>> LDFLAGS="$old_LDFLAGS" >> Not quite. The stanza you changed there is meant for GNU ld, which >> supports both undefined symbols in version scripts and /* comments */ >> and needs none of this hackery. >> We have a three-case case statement here, with the final last-ditch >> attempt being -export-symbols-regex=, and we need to add another case >> for "no -B local, doesn't like nonexistent symbols, supports >> --version-script". > > The three cases are not fully independent. The first case defines conftest.ver and conftest.c in such a way that when the test is > run both ld.bfd and ld.lld pass. As a result, ac_cv_libctf_version_script is set. Yep. > Then the next check is if ac_cv_libctf_version_script is empty. It's not, so the check with '-Wl,-B,local' is never run. That's why I added 'nonexistent' to the version script at that point, to ensure that if the linker objects to nonexistent symbols in the version script, we fail that test, leaving ac_cv_libctf_version_script unset. So the recent-lld setup fails that, cascades into the Solaris version, fails that, then hits the next case, freshly added, and passes it. > Even though ld.bfd allows undefined symbols in the symbol version map, > I believe it excludes them in the libctf symbol table. If that's > correct, then I request this change be reconsidered because it's a > much simpler change that supports both ld.bfd and ld.lld. The *test* is simpler, but it expands use of the horrendous hack which involves sed-transforming the version script. I was trying to minimize the number of cases in which we have to use that... but I guess if it's increasingly a lost cause to do so we could move to doing the sed-transformation everywhere that supports version scripts at all. It would certainly simplify things a bit (though not completely simplify this away, since Solaris still needs different flags as well). >> Something like the below, perhaps. (Caveat: when I test with LLVM 17 and >> LDFLAGS="-fuse-ld=lld -Wl,--no-undefined-version" there is no failure to >> link libctf with trunk binutils, though ld building does fail: >> ld.lld: error: undefined symbol: ldlex_backup >>>>> referenced by ldgram.y:860 (../../ld/ldgram.y:860) >>>>> ldgram.o:(yyparse) >>>>> referenced by ldgram.y:1125 (../../ld/ldgram.y:1125) >>>>> ldgram.o:(yyparse) >>>>> referenced by ldgram.y:1146 (../../ld/ldgram.y:1146) >>>>> ldgram.o:(yyparse) >>>>> referenced 1 more times >> ld.lld: error: undefined symbol: ldlex_wild >> so this is not really tested and all I can really say is that clang and >> lld are still happy to link. Don't trust what I wrote here, please test >> it out -- and obviously it still needs things like the removal of the >> ctf_label_set symbols that genuinely don't exist, as well. That patch is >> fine.) > > I haven't seen that issue and I've been testing with clang and ld.lld this entire time. > > I wonder if this is caused by flex/bison (or lex/yacc). For the record, > I'm using flex-2.6.4 (Gentoo revision r6) and bison-3.8.2 (Gentoo revision r2). flex 2.6.4-57 here, but otherwise identical. ldlex_backup is of course a symbol in ld, and is definitely defined, as is ldlex_wild. Weird. This is with LLVM 17.0.6 (release, from git). -- NULL && (void)