From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by sourceware.org (Postfix) with ESMTPS id 9B71C3858428 for ; Wed, 10 Apr 2024 14:23:10 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9B71C3858428 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine 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 9B71C3858428 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=205.220.177.32 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712758993; cv=pass; b=vQmPG7C9N/JijA66RIVxloEECVrArUh8aIpNk+9GTzqwpyVXIhzQBE2tc+ojTAnWMu1sCECEEC8prPpCZZLqh0nEwCfbwThtYajm4scFIDmRSnmLOMzN7xX0zyDeY2sVz6in8pyhWR853mPPCc0RVjr1XnBX3RPC15954rhjmro= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1712758993; c=relaxed/simple; bh=eZajvUOQdAZdpShfhHC2yXhUzBbglmlLQvBrmlBB4io=; h=DKIM-Signature:DKIM-Signature:From:To:Subject:Date:Message-ID: MIME-Version; b=da7edrlnWj0TMV2yid459WeR9hsXIzBbxgl4B1XQNRnHTfUVOoOu7I/s4DGZPYSB2h/vCu4aJSEmlLjxlghuknN1c4uA4pLdUXmtcSHNo/bukyYpx9VmkPq2Zez6UTu6lNLG3ga72bLcAOgsYou3ArptNWaZGnbiCcWK215kutM= ARC-Authentication-Results: i=2; server2.sourceware.org Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 43AE48LQ017864; Wed, 10 Apr 2024 14:23:08 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 : content-transfer-encoding : mime-version; s=corp-2023-11-20; bh=smw3svsnLjxpMVdrkDw0APghEP0qzvpMwUXLhUpiHaA=; b=Zny2eqRjR90INGEwqF1DU5DNGOoWGR4ejK6wqSWy/xX8pazQzI8JL4PDm7ilhRfmquux 9t6az4MSKHSWKPKhcNbmPTYrgbRQIB1DDdMGzhXi/Hfa22pbEJhGF8an3Q3V5evLB+k2 gsCdg7HGZykwhgZw0dBgy7QQOeTWRybRVbNw/22JwTaYnKPcsvvj/X/q1vSvgTN4WGgm vvscHbb/OvuUQXq/MGSLTZsza2cSnUBa7sLP7sd6A75cJXZZ0cSWUUdLZ3umWsavynAn K6GEMRzkONlzmTkfw0FdGZfjD3/xfaKKG7xuGmyqlikOYhGn4w/8jncltrjxb2MnWwLu ug== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3xavtf7da1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 10 Apr 2024 14:23:08 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 43ADaYg8002907; Wed, 10 Apr 2024 14:23:08 GMT Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2169.outbound.protection.outlook.com [104.47.56.169]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3xavuefe4e-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 10 Apr 2024 14:23:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cREnBrRb/3t+Pbqt0ycO2GME3pxzFBnpi7vBWlflrfrb+J4OwId431/wYptUPirLpCqraOUT6vDUc8mDmh/Jn58cwdPq85PiRrCP3d3MGvzChoMZpJJAfdgBTmWST+bmwucWgBZK2gKIOzmbq+kndHJqnArWp8y8uMGrDEci+1JYAzkU4tkKioXqJnlYixikS/ekqEUzt0JNGA5MzHzWkQLj1Uid0cvyryE3Tg2XLOYgt+AK2qBH2EnP+vnFntSCD8m0lNrnfjMYn3fSU/cErjBrigzq1Dfu74A8xjoYjLL3ASnI5i9xQI/+IeofIEyzjF8/ce7SPisiQMWKH6UgoA== 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=smw3svsnLjxpMVdrkDw0APghEP0qzvpMwUXLhUpiHaA=; b=kU7ZHvy+9yGiTkiznNre1yUBVXRM3DT+bkO4ohn1MRGJI7uxbQDB8QIVB7aNSoSX6OwkNKbAwPYhUqV/K5er7vhzju7LO7o2clT3CBqx+S1K41SHlI0iYHyyXUfSKn/fbnSp9rMML8Hw5Xa5BOePfxeX6a7LqD2O08c6Vzx4yzXs8ZpdmEDJgs2tm0+a7ghxXFuL8P8HPyW3FfrEQHFnZXYdcFo9s9tD2ZjAGLKTR383WgmWWvOgWSo1rRkJSxKHhgI4ZsvHCN9FAP4XzzBcEVjy5b2DGd6fXcgmfdz+yBlczu9VzdefwCmeS2yv6r16+eBN91P6cADkPpZneZRv0A== 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=smw3svsnLjxpMVdrkDw0APghEP0qzvpMwUXLhUpiHaA=; b=NfFpP9emVXFWzT7tVnwiruT6JQHQLOF7sBXy5fqXk2NUGEdgm3fk0FAe/ck1KCeKR2ABiBZ5tFlGmliHEdRQzb0Z4j1xLe1wH0ry1L+W5P7SseHzDzSI3A6kc2bbmjvXFKgDaz+huPX1HOdM7xeDV3F0wUtXybH4lJQOSYcWHkA= Received: from MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) by BN0PR10MB5112.namprd10.prod.outlook.com (2603:10b6:408:12c::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7409.55; Wed, 10 Apr 2024 14:23:05 +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.7409.053; Wed, 10 Apr 2024 14:23:05 +0000 From: Nick Alcock To: Alan Modra Cc: binutils@sourceware.org Subject: Re: libctf warnings References: <87o7ai9wxe.fsf@esperi.org.uk> Emacs: The Awakening Date: Wed, 10 Apr 2024 15:23:02 +0100 In-Reply-To: (Alan Modra's message of "Wed, 10 Apr 2024 14:18:22 +0930") Message-ID: <87le5l8fg9.fsf@esperi.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.3 (gnu/linux) Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: LO4P123CA0345.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:18d::8) To MW4PR10MB6608.namprd10.prod.outlook.com (2603:10b6:303:22e::8) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MW4PR10MB6608:EE_|BN0PR10MB5112:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 2inDoaoVZ04eA/ROAOd34qtyjbyADR/NlS86no+PgGVLyKNlLXrVOygJsUYDHdh5bsLrlqSSX5NGIW/hpkeVV+7mTe0HK6GvICpe4YsKWmyZ+iZS3HXoHsW66cR2VcNl15U0uvuc7dBOd0mZwaQMhrcADGFO5WZgnK2bBof3pSsUFp7Wv7wA4roaeNdjbowtxXDvPzAho6sD1+POnxbvNL/CW0xfZFx/IHpenw52NrIvFSyXEQLB5cYVEz+JxlmPZwidNTPitVLZYxmqATQpEN1Oz3Mafnw3XJReF/neh3OUy3J2K8lTB6003Cyq4NgN52viBch04IrkUqdJ81AQld925iIBZSondIkBUqbsPjwRwi8gyjBJhhPsEeY+djG3Gcvjjk8hFDLFMmktd6U333tHAU+Qxu1K4kw3mHqH8ZMO6BtrKVSm7u1NetoHfDXI7YXMu6fEXxATGtMNkt9DFXsf9CIy2AecXc50QXyPRQ9hpE8yS/Wv5dqNL8/SmePa3zXtbKkzK4McfRVOrtE8DpoibF6TlA34AHDG5OUsojauPK2W/T0Ow88fsoQ3JU77itXK0pN90/8pa30fsvY30tYMIj323ozUcQZc9FL5jdW3ud0Bw16N2RFxw6JSjPBnrlzV7pIqOee9tD4+k1tYSTClMEju6IwLXuko6HwCShQ= 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)(1800799015)(376005)(366007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?dGQzaGtKS1VYc0F5NTZvME03N1lFdzBmSG9sWjh2WnFwMU55ZUZ5NnpIem5N?= =?utf-8?B?Y2gvNndJclg0WGpTZVlkTGFxbVhaZW9ZNDBuTHZlYVVYYTFpU3AzQlRLSEJs?= =?utf-8?B?ZGNTU3p5MlZ4bU1oQVNXS2M3VS9ab3dRUUpLODRqMnJJV3d3Y3J6VmF3bVBl?= =?utf-8?B?aXZwbUNtT3cvSGlIQ1c0MTJkUEdQMnpXbFVBSkczM2xkSTNDVkoxM3BSMlNq?= =?utf-8?B?Tjh0K3VrQi9lRmZUWVhRTnM1cDZRTHgvUFBrMmx1Q3JtRE5iUVZaeUwyeU9L?= =?utf-8?B?TkVQWmdLTTF6dXZCTDdYeWRCbDJQaWZzNzZETmVIUHNMSlkzalQwNjF6TGhr?= =?utf-8?B?c1huM2M0RXhKSWJKazdTeU9CNGRkT3RoSFdkRjdNRjRISEtDUVJTTWJJYi9q?= =?utf-8?B?Z0FVVStSR1g5ZjNlRWFiZ2tLVFV4Q0dBMDkvbUhZVnR4Tjc4REhRQXZGQ3c3?= =?utf-8?B?Z2QwTC9YT1pldU1tUDBka2RUVUNXeW12UW4vMkd6MVVrREVBeFgwM1RkMmxZ?= =?utf-8?B?MmpzYnhEemVtbVVMSCs3VUxuY2VkOUdlK2J0ZjMvT3dGOFlRQjFuN3FLcm1y?= =?utf-8?B?c3VWOG4xVFhBc3l5L2xLbU1YSHk2dFNSRmN3cFBtZG5Tc0hUOVRzZWxrNUd4?= =?utf-8?B?UG55aXBCYVNFNHBydTBtbXc2ZXp1OU9EUHBwQXNSb1dKdERsajJZa2t4bWVC?= =?utf-8?B?cjFCSHBDcjQ3NXFMajhnT2dTZTZ3dUhqSndlcTVSMVkydUJtamdrZFF2VUI0?= =?utf-8?B?WXZwaVJmL3UvbzdoeVRmR3U3bVNMYXRrQW1GYUxrTDFoV1VmNUd2T0FxUzhr?= =?utf-8?B?U2pPaVFqaEppeFJnL0o2Nk5abmRBZ0FsRFp5VHN6c215N1B1TEswQnhLbzcv?= =?utf-8?B?bzRleXZZRE13VCtiTW9zYWNDYUp3ODFxMHFPVDFrL1l3NGRDTDZVQjZxQU1G?= =?utf-8?B?M1FaOWttOTlZQ1AzVUZFZ3Z4ajNWQTE5eFRJUUpNSFNFdjZiOFBGVVFTM0NW?= =?utf-8?B?azYxcTZHRVBHTG01RmNqMjFPUnhITlB2QnkrQ1BhUzZsOTlGRVhiTTJWTGl4?= =?utf-8?B?M1JhRE5rM0s5WDQ5ZGJqWGg4VVpBYmxxZUlQRHpnTlNKcFBtcjI3NWFjUmx6?= =?utf-8?B?bnd4UzZ0Mys0Z000VHIwRWw1NUNEc1ZGbmt0UXZQZnNqWjhOQTl1QnI5ak5Q?= =?utf-8?B?QWFXYUFBZ0dIRjFpTko4TmZCYkpWSkRET2xxWEFWNWFhb082SWtoS0RiMzI4?= =?utf-8?B?VDRFdW1KdGZvZ25aWHMxeFBNeHVmMnEvci9EVFRCTzZEODZ2b1lQdC9Xdnh3?= =?utf-8?B?Z0hrYTAwUTdYY2tIck9YS2xaUWV3Q3B5L1BpK3V5bWdYb3g1OU1YcmV5ZFFV?= =?utf-8?B?M2gwOUJlSlFkMmprTHg3YVlJeGRIRXhnd0FpR1RHeElNN2c4YXNlcUlrTHZh?= =?utf-8?B?WE91dzZIS2NJbHUvZFdzMVR1MittNytjMVlaNm5kUEJVbngvV3g1VVVZQWFQ?= =?utf-8?B?bVN1blhrWjdmZ3VpVVJDSEZBS2dtTlFFTmNQbTZyRHRMVTRkMjFNY2V1YnJP?= =?utf-8?B?SXpYZkh5WVZQUnRGbko5enNGc3haUTJEeENPNk1odVNrOUZST0F1T3NuMnJE?= =?utf-8?B?MURRcVlPdlBEcDJqMlAyZ1RPcGFWTGxpeDJiVVRGWFNIWUJtVWY5WldkRDFi?= =?utf-8?B?c1Q0RDN1SlM2SEIvVFFEcmE1V0RZaCtLVnJTSjljZkpRQnpQZnlpSjk1OThZ?= =?utf-8?B?K0JxTDV2LzFkY1JINUNIZXFtYlQxY2tGOUF5ZEVZaW13QXQzcjZaS0Y5QzR0?= =?utf-8?B?ajNqVHlzZmtRUjJkTFUxcDFva0t4cHV0eVNtUFZORWtUQmpJWGt3d1dhVWJJ?= =?utf-8?B?bTBZSlNHYm5nZnVkVEdDbHErSWxpSHNHRUJVWE05QVJaS2dQUE1FZ1l6aE9D?= =?utf-8?B?ZFk5cDhtMXdmTVdsZDk2TFVUODlHbU01Um1vRXNESDRDditUaWl3MWdGTDlD?= =?utf-8?B?OHJKQmtIQ1FaNE10MmIyUmF3WHU4RHRuamR3anFMVUllY0REd3BqMUdYQzMv?= =?utf-8?B?ZG9FNis0UjFsOUhMWGtSdWNGWDhFejF0VDBkWldIUm93THV2MmdRM3ZsNXRr?= =?utf-8?B?SmpaaTN2L1E3Z3BLRzM4MlMzRXFzWnA3YzRrdU0zK1N4VUgySzlKK09rQzBi?= =?utf-8?B?dnc9PQ==?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: +z3o1PrkyJ0aK3P2amvCAjC/fu0iLS/fLcOZdBkIWewEavlPYM9s2rsz+TGoRNVwxKLyQ7vORxcuXGOuRYJwLu/RVCS0W8xUckkidWeKq+mfVuSxWDcOCu4hMSxx1tZzFv3hBjd0L+uDxzGE3OPca/CPu0qaQfydfpPclk2LlLOJpjcwWALkli1WN2BI3iM9sXNJajk92z7WUt0qNgeo1vTRrqVsg1wCcSDLefL/4Dbe9EQcJ+0WY2qx8dLHnqW8jEMHn8zqiNEnV9bFN5aDs1XAMBwaHM6+YB5fEOpeAx9tLLF8v0l7I8I1ZSt1bdUtA0GL/Jl1WjbeI8/a3ntWv+dObxJwMyNbd/JHdqVRpFudYtq6ogqUKfz2Y9tQPwpcmdTBNFQ3qASX9R+gLQcUd0fBE1uCPumGB/IxiSFuet1++r4F7V6B+srWkWh/oSj8b1XvdPutS7DdC1MM7hfdrSNO4zztxb9rRDMQuTYw5puxV54lTSz9mHUbTKgYtTNQ5x/dWWFImrFzwKYsMlljx1CDt/MZxo9Sdw7T5tqRU4zZIIR5f+eXeG6Tf+RmfkNJlQMkoe7M5tI9/vQkULGA2W9uMaNAOwQIR1Yre9LPRvU= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: aa613ea2-9f55-4c20-f6ca-08dc5969bca7 X-MS-Exchange-CrossTenant-AuthSource: MW4PR10MB6608.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 10 Apr 2024 14:23:05.3715 (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: qeYz0TJ2U1yXTD2ploUJnLZ0TNGIX7tyOoJHWZy8hd10ssuj3lySKkKdgI0Z9Gga1yg4Bo43/ftPU5Qk/pmN+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR10MB5112 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-04-10_04,2024-04-09_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 phishscore=0 adultscore=0 malwarescore=0 bulkscore=0 suspectscore=0 mlxscore=0 spamscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2404010000 definitions=main-2404100104 X-Proofpoint-GUID: dTNp-ME0fDusjKMEn3A7UsrttPdIADKQ X-Proofpoint-ORIG-GUID: dTNp-ME0fDusjKMEn3A7UsrttPdIADKQ X-Spam-Status: No, score=-12.2 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_LOW,RCVD_IN_MSPIKE_H4,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP 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 10 Apr 2024, Alan Modra spake thusly: > On Tue, Apr 09, 2024 at 08:07:57PM +0100, Nick Alcock wrote: >> On 9 Apr 2024, Alan Modra said: >>=20 >> > Seen with every compiler I have: >> > home/alan/src/binutils-gdb/libctf/ctf-create.c: In function =E2=80=98c= tf_add_encoded=E2=80=99: >> > /home/alan/src/binutils-gdb/libctf/ctf-create.c:555:3: warning: =E2=80= =98encoding=E2=80=99 may be used uninitialized [-Wmaybe-uninitialized] >> > 555 | memcpy (dtd->dtd_vlen, &encoding, sizeof (encoding)); >>=20 >> Never seen this one. Does it apply to prehistoric compilers only? > > No, but I neglected to mention this was bulding with -O1 -fno-inlines. > To be honest, I'd forgotten that was the way I was building.. > (-O1 -fno-inlines can help quite a bit when debugging.) Oh, maybe I should add that to my test vector :) if this happens on non-prehistoric compilers, by all means fix it! >> objectionable is the bit that's actually broken, below (the rest is just >> me wondering why on earth anyone would care about warnings seen only >> with decade-old compilers). > > Because people build binutils on older systems with decades-old > compilers. Yes, but do we care about *warnings* there, particularly when they're fps, as opposed to actual problems? As I see it the purpose of a warning is to highlight real problems: if the warning is false, and only happens on ancient compilers, then quiescing it is only worthwhile if it doesn't increase the risk of missing real problems in future. (But if it happens on newer compilers too, that's different.) >> > diff --git a/libctf/ctf-create.c b/libctf/ctf-create.c >> > index d0255e5ba7f..99ff4882fd9 100644 >> > --- a/libctf/ctf-create.c >> > +++ b/libctf/ctf-create.c >> > @@ -551,6 +551,10 @@ ctf_add_encoded (ctf_dict_t *fp, uint32_t flag, >> > case CTF_K_FLOAT: >> > encoding =3D CTF_FP_DATA (ep->cte_format, ep->cte_offset, ep->c= te_bits); >> > break; >> > + default: >> > + /* ctf_assert is opaque to compilers. This dead code avoids a >> > + warning about "encoding" being used uninitialized. */ >>=20 >> Hmm. Do you know of any way to make it *less* opaque? :/ > > Um, my comment is wrong. ctf_assert is only opague with -fno-inlines. > I'd forgotten I was using that option. Sorry. Hm. Is there some way to *detect* -fno-inlines? Because I'm quite happy to define away ctf_assert() to nothing when that flag is in use, if that would help. (Alas, I can't immediately see a useful predefined preprocessor flag.) >> > diff --git a/libctf/ctf-link.c b/libctf/ctf-link.c >> > index d5433b9d9bd..360bc1a0e63 100644 >> > --- a/libctf/ctf-link.c >> > +++ b/libctf/ctf-link.c >> > @@ -762,7 +762,7 @@ ctf_link_deduplicating_open_inputs (ctf_dict_t *fp= , ctf_dynhash_t *cu_names, >> > ctf_link_input_t *one_input; >> > ctf_dict_t *one_fp; >> > ctf_dict_t *parent_fp =3D NULL; >> > - uint32_t parent_i; >> > + uint32_t parent_i =3D 0; >> > ctf_next_t *j =3D NULL; >> > /* If we are processing CU names, get the real input. All the = inputs >>=20 >> Again, if this is only seen with GCC 4.5, I'm tempted to just ignore >> warnings from a compiler this prehistoric. > > It also might be seen with newer compilers and some optimisation > options other than plain -O2. That's OK then, initialize away. >> > diff --git a/libctf/ctf-serialize.c b/libctf/ctf-serialize.c >> > index 8645f32ab20..11cbe75601e 100644 >> > --- a/libctf/ctf-serialize.c >> > +++ b/libctf/ctf-serialize.c >> > @@ -202,17 +202,15 @@ symtypetab_density (ctf_dict_t *fp, ctf_dict_t *= symfp, ctf_dynhash_t *symhash, >> > } >> > =20 >> > ctf_dynhash_remove (linker_known, name); >> > - } >> > - *unpadsize +=3D sizeof (uint32_t); >> > - (*count)++; >> > =20 >> > - if (!(flags & CTF_SYMTYPETAB_FORCE_INDEXED)) >> > - { >> > if (*max < sym->st_symidx) >> > *max =3D sym->st_symidx; >> > } >> > else >> > (*max)++; >> > + >> > + *unpadsize +=3D sizeof (uint32_t); >> > + (*count)++; >>=20 >> I think this is a change in semantics. (That (*max++) branch is no >> longer executed when sym->st_type !=3D STT_FUNC, whether or not (flags & >> CTF_SYMTYPETAB_EMIT_FUNCTION) is turned on. > > I think you may be reading the patch wrong. The "else" now belongs to > the earlier "if (!(flags & CTF_SYMTYPETAB_FORCE_INDEXED))". The only > semantic change is that *max now changes before *unpadsize and *count. If the only difference is ordering, go for it (on re-examination it looks like you're right). Tab-based indentation makes this very hard to read :( >> > /* < C11? define away static assertions. */ >> > =20 >> > #if !defined (__STDC_VERSION__) || __STDC_VERSION__ < 201112L >> > +#undef _Static_assert >> > #define _Static_assert(cond, err) >> > #endif >>=20 >> I do wish there was some way to say 'use the compiler's _Static_assert' >> if available', but there's no requirement it's a macro... > > Right, but in the case I hit, it *is* a macro. Would you prefer > #ifndef instead? That sounds like a good idea. --=20 NULL && (void)