Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp4858566pxk; Wed, 30 Sep 2020 13:41:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy2KOkaD6wxABiV71h+IBjwVAgPLbK5Jq10pP49BEdgfPIgQgT89SqZZ4okh7ag1j4mAUFa X-Received: by 2002:a17:906:e18:: with SMTP id l24mr4675035eji.334.1601498509540; Wed, 30 Sep 2020 13:41:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601498509; cv=none; d=google.com; s=arc-20160816; b=X9GZR85NIYGQQG0a+1JutRAIk2ia12lNbaPPrqgYnNsoxlZMfsZdZ9OZMJ9etUs/N+ XgQ3OPjjYl+BJ0rHqKd6IowBz0GNa/xRHDSFvHHdQ0uZkRDWsp9UeLSY+e4Rmzz7owtE mg+dh+CQbA3uxcpv2z8Fxibannukz/gBrUrnEb6Y6H/Y/WXfHeIwNtoBbX7LOBxaiGEZ jFhXD7j/7Ou7SCazednP7n89hx5KXMApx3Riol3orLYPO+TWq9D9j0oUEZpoG66jIt8z vq9CCXiyxvuO4UYGdQE5uOqk3uxoh0KphBAmFVvOwqPjGbpljjILi4FidRihXAxCRRFA +fVQ== 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 :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=kWgkpLvm1cT61Rwr6FQTOx9p/15lipPZOguXw9B3gcE=; b=N0ArkIP2zmBOGFNTbb9Il1gItRjc/ovrJ2uCT3DbiHa5FM76RgIlflLXF0KpIqiVmn rs4BqVUpf8L9OzmBB7f3M/EjlneaiUxGUCMKkAPUBzKm606FsqUPInF+1x92a0y8ouMw Pqh2mrliblICQGXoqTo4M0pdBq6M53EGf1kbIdq3Dtl2NOu5zhFy2CA0lQf8OZJXGx+9 Q3j5mJKqyuhoiLCt+0cPpug10e/3oofS8qQjdWPbzTULSHxPAvc67lEVoXG32K6zWjbT hvMeGM+oaONhx7xRpS5V/ft8BpoXgEJ6TYRmbBc4fwEyNIOroPBcGdJcbjQ0UZiU2EA4 5b0A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=TtuDbyrs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b7si1824101edq.91.2020.09.30.13.41.26; Wed, 30 Sep 2020 13:41:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=TtuDbyrs; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729688AbgI3UjN (ORCPT + 99 others); Wed, 30 Sep 2020 16:39:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33854 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725355AbgI3UjN (ORCPT ); Wed, 30 Sep 2020 16:39:13 -0400 Received: from mail-wr1-x433.google.com (mail-wr1-x433.google.com [IPv6:2a00:1450:4864:20::433]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CB593C061755; Wed, 30 Sep 2020 13:39:11 -0700 (PDT) Received: by mail-wr1-x433.google.com with SMTP id c18so3221232wrm.9; Wed, 30 Sep 2020 13:39:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=kWgkpLvm1cT61Rwr6FQTOx9p/15lipPZOguXw9B3gcE=; b=TtuDbyrsSzGi1v5+uNy0CWKqSpJT9aR3qVX9OOQBPqZtEY5U/sHGUi1z+29bLfNhIM ehcO6AnVvdu6OUK4NE5yxK9gJ2sEUABOUu8ovtKz4fwrim+TvobYqho/kQgaFibGNGir kZnGPEOfV9bxOnlMOUjY59qvpGxWznq7p8GRtccLsfpteWEHRCIM/j8tN6jLr8AK9DYf HAOoT7oZKHFXU+hT4P9i1hwEOp/OE3lT4YOzh6noYm+hz/yKMqTk3cI5umSREubQGTd7 GowbC+f5BFrnmtTp3C2LLb4m3GBSDJnjI6Nyc7LCqtllDQPoGFHwVBNUH9oSV1pTFBgn P4Yg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=kWgkpLvm1cT61Rwr6FQTOx9p/15lipPZOguXw9B3gcE=; b=KzDTbm+KcaaTjoOrKabbKdGyMx3Np8H0LSUco29AGGkX10+GoMg8cSM2oVmTn17U0i C6YTWlmCZ3LPjvD1tAjJYd0Aw18EtNJDhNgSISYYLZUMVIWCxlZsyIaaYELHNSCyn0uc 4tOa1PrD5UnsDcRAmzR8LgHqbVlpFZ40iZbLMfHV7ffL5tA1tGuX0L2tejdxbr8JSyYs bid9UCHJxfATzTPQn6/D+xlkxFj52twaC+QUrfbdY0/ZhGGwNCASoUd00aUhHx/Kc+Rb TxgVRB5wgEE8UIReHeaPhDJ2sMJtVsXFd+nl/rH3lc5b+Dp86HR50faKjGPCOuWA13vt uHkA== X-Gm-Message-State: AOAM530K/pfqEJoAvpf8Hqptyi+yg/6bvom4zVdSjPHA2zTkDEAEOw3S uJXmkkLyHvPsmCVdO25dW6s= X-Received: by 2002:adf:f4c6:: with SMTP id h6mr4911812wrp.310.1601498350284; Wed, 30 Sep 2020 13:39:10 -0700 (PDT) Received: from [192.168.1.143] ([170.253.60.68]) by smtp.gmail.com with ESMTPSA id w5sm4667132wmg.42.2020.09.30.13.39.08 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 30 Sep 2020 13:39:09 -0700 (PDT) Subject: Re: Expose 'array_length()' macro in or To: Joseph Myers Cc: libc-alpha@sourceware.org, libc-coord@lists.openwall.com, libstdc++ , gcc@gcc.gnu.org, "linux-kernel@vger.kernel.org" , linux-man , Jonathan Wakely , Florian Weimer , Ville Voutilainen , enh@google.com, Rusty Russell , Alejandro Colomar References: <946e9377-0558-3adf-3eb9-38c507afe2d0@gmail.com> From: Alejandro Colomar Message-ID: <1aa963ec-0f44-4948-d862-7808b0b86a7a@gmail.com> Date: Wed, 30 Sep 2020 22:39:08 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2020-09-30 17:58, Joseph Myers wrote: > For some reason http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2529.pdf > doesn't seem to have reached the agenda of a WG14 meeting yet, but adding > a language feature like that to the standard would be another approach. > Hi Joseph, Yes, that would be great! I hope they add that to the language. When/if that happens, nitems() could be `#define nitems(arr) _Lengthof(arr)` for std >= c2x. In the meantime, I would add this macro to libc. Maybe gcc could add such a great feature as an extension even before the standard does... Too many wishes :) BTW, I sent a PATCH v4 that I should've sent --in-reply-to PATCH v3 in this thread (but I forgot to do so); I'll link to it here: https://sourceware.org/pipermail/libc-alpha/2020-September/117986.html Thanks, Alex