Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp1360148pxb; Wed, 2 Feb 2022 03:14:54 -0800 (PST) X-Google-Smtp-Source: ABdhPJzqxGdpsx3OAqxK+EGHFgTvHHxM3t3h4dl0ZIsEDk7eY+xR5r3CcECpKD6vtkbUuf0241IQ X-Received: by 2002:a63:f50f:: with SMTP id w15mr8555953pgh.113.1643800493919; Wed, 02 Feb 2022 03:14:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643800493; cv=none; d=google.com; s=arc-20160816; b=Sgu5sVJrWth55t5GkiW7mBefm0ggYksUTWMoB1aPslE4LouzXr10dBnMTPSBY1/FS0 y417H06HGK8r0Pt9qSegxVLi/maLBbHthBoqu+lTdqMrtaUMvJ4Fa75lDtHos2Af7zdy bK0M1pKnVegMKl32smePu+I6N3OfDUnhy44R91WPvIYPzUTSNoJJ6MJf+j3P4XqhnQMF 39TfISZev3hVW/3BQp/nvrqQjtC+lEynoNPte4DgGkws31w3GbmSQpwWhTiXGNxUUIEB 2P1sLOhvYNUn9b5oOF9q/lAk5iiehILyfP2+u9tXLz+McvDmyYoZCDQiRxuWh2tlF5qb syPQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :mime-version:accept-language:in-reply-to:references:message-id:date :thread-index:thread-topic:subject:cc:to:from; bh=yIeCearlL6/lRzdQugSXJXwkUYF2RIWpEMzCTTklHQs=; b=zuHcLQlIfTkw4BCH1FVHSwzOpBRXs18DO3bEyRNYFNNcF/uu4qWDkLY8tYZuRaJ0cY dlpVjnqUMGilfsxHBklI0vBU/FomYDOPj3GLuwTtd/bir8V1vl9S44WDV3jxS8ZbKIRw 4siiZnJpVvHWVqb/jhP/1MxRJ+gkDIaNPMDVAYI7y/apN726RN+Zd6pYxGwLMyhnLuYz DDhisWMZBlmBBZ/jKb9sAqNev2hW+wCCAQprTavz73bxbYAo0tbufUprlvcbN6c9Dldr 6Ct1ArYt2e1qCE0EG9BA8LD2ZYdURbTb8I2WVVffvlGM/YrjQJavqGHyC/e/T06oxcD5 4teQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=aculab.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 62si6534734pgb.772.2022.02.02.03.14.42; Wed, 02 Feb 2022 03:14:53 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=aculab.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245204AbiBBItj convert rfc822-to-8bit (ORCPT + 99 others); Wed, 2 Feb 2022 03:49:39 -0500 Received: from eu-smtp-delivery-151.mimecast.com ([185.58.85.151]:53285 "EHLO eu-smtp-delivery-151.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S245198AbiBBIti (ORCPT ); Wed, 2 Feb 2022 03:49:38 -0500 Received: from AcuMS.aculab.com (156.67.243.121 [156.67.243.121]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id uk-mta-146-b17IQterPEaZVCdKoaVgMA-1; Wed, 02 Feb 2022 08:49:35 +0000 X-MC-Unique: b17IQterPEaZVCdKoaVgMA-1 Received: from AcuMS.Aculab.com (fd9f:af1c:a25b:0:994c:f5c2:35d6:9b65) by AcuMS.aculab.com (fd9f:af1c:a25b:0:994c:f5c2:35d6:9b65) with Microsoft SMTP Server (TLS) id 15.0.1497.28; Wed, 2 Feb 2022 08:49:33 +0000 Received: from AcuMS.Aculab.com ([fe80::994c:f5c2:35d6:9b65]) by AcuMS.aculab.com ([fe80::994c:f5c2:35d6:9b65%12]) with mapi id 15.00.1497.028; Wed, 2 Feb 2022 08:49:33 +0000 From: David Laight To: 'Rasmus Villemoes' , Kees Cook , Jonathan Corbet CC: Linus Torvalds , Martin Uecker , Ingo Molnar , Miguel Ojeda , Rikard Falkeborn , Arnd Bergmann , "linux-doc@vger.kernel.org" , Tetsuo Handa , Andrew Morton , Andy Shevchenko , Nick Desaulniers , "Gustavo A. R. Silva" , "linux-kernel@vger.kernel.org" , "linux-hardening@vger.kernel.org" Subject: RE: [PATCH] linux/const.h: Explain how __is_constexpr() works Thread-Topic: [PATCH] linux/const.h: Explain how __is_constexpr() works Thread-Index: AQHYF2x1W+MAhayA/keZ5Xju46h+qqx/89kw Date: Wed, 2 Feb 2022 08:49:33 +0000 Message-ID: <8e166131c01b4fbc83a1ca95b83bc362@AcuMS.aculab.com> References: <20220131204357.1133674-1-keescook@chromium.org> In-Reply-To: Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.202.205.107] MIME-Version: 1.0 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=C51A453 smtp.mailfrom=david.laight@aculab.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: aculab.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Rasmus Villemoes > Sent: 01 February 2022 13:06 ... > > + * - The C standard defines an "integer constant expression" as different > > + * from a "null pointer constant" (an integer constant 0 pointer). > > I don't see the point of this bullet. Yes, an ICE is a distinct concept > from a null pointer constant, obviously. One is defined in terms of the > other - and your parenthesis is not an accurate paraphrase of the > definition of a null pointer constant. From what I remember a "null pointer constant" is in "integer constant expression with value 0 cast to a pointer type". So (void *)(1-1) is just as valid as (void *)0. Not sure any of it is relevant here. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)