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 E7B953858D32 for ; Thu, 25 May 2023 15:21:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E7B953858D32 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=oracle.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=oracle.com Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 34PExLOE001087; Thu, 25 May 2023 15:21:09 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-id : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=RQKfaXGKuoEv2JaZc0igDLMNVbrFCkjQNsqszNCTcqQ=; b=TGiT7oVkhAqrvdJ4dPbWmoD6UlF+3qRj0qfeKg/7Hr3tEB4VBaSZB0ThPIhQX2CUO3IT EO3AYuTy2lIRgXOPUwPoPDUgWqAWrLZq5kR+hAX35gUIDMfpMHCoLZ3off3t0VrOAItO ss6R+XeFVXBqeV4ZVSr6WHp6nrq+w5VWPcNJwZ9bizSFaP55bGA2g6KoSNR5MK9XK0Lh 41cF3zO4+wngsnKOvsMc95hhVtvFT3DgtmWAdJ2Byw9gfG756V8BrEErnFYx1jLfoluB yH7Q3HHxouOo7D2qJtyi04J08rqI3s1WKOzA3drxlkUgrGVV5KHgKw5tIJldY4Gn8TQe Eg== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3qt9wxr2tn-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 May 2023 15:21: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 34PEUYLW016030; Thu, 25 May 2023 15:21:08 GMT Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2108.outbound.protection.outlook.com [104.47.70.108]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3qqk6na66p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 25 May 2023 15:21:07 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cxnMxOQjAgDsC+d3kKp7bx7WbivL6YAJSry7cPKGFZhUTgFoWApkGlUvgaPEaxznKK14z/FN5qRWSLUpeq4tQsDKH1SVtAm487b/rBVuT0uIvJ4zV1YycoQ4vm2S8P9vfUStZGZV4niLpN9jP3Gi52J+aIb7yB5OpfW0eBK6xaQhS3TzbeTTSbAIpQThQBrG0ua++1G6sxKG30ynqwGdXa5iAa55/+QrDghoxZs2nS4QPR0RLNlP3+8d7JWFADs1JDaFRLDwDOjuxNhirhJ8X0s2lSjUnQ4SyJkU80hCE+2W9nQieevsCVMeM+t2zaRytjb1DFtfSE2KOuUdPilGhQ== 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=RQKfaXGKuoEv2JaZc0igDLMNVbrFCkjQNsqszNCTcqQ=; b=Ik+qostDG8tahnAGk6TebwdB5+sn4ZGEiLAIcBlmIdUPh5YmeTPvO/6EeRGshnXRcy1fKuGCJy8naQy3wFrMK2PKagHofTJWMcfpGcbqGlOXMTxTuqkQMLIupGNEV9hzt/PB2+304TF3NnDHS7Wezc65ar2jvxaMo3Co8D36khofv8cg6k76P4jZCUuf88f2aY9idRKUfBqGVivMdjOmBwthhzkdTbmHqssxAhhKMKxL2+oqKLJyX+tkZULcDZo9LxK/7QZwMSvPtQE5EgI7Mdwzz5S55lHcblWtwLjjBUEFVMnzumlIbKng+VAz+EFScKxBF6IkMCQy1RbF1LAcQQ== 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=RQKfaXGKuoEv2JaZc0igDLMNVbrFCkjQNsqszNCTcqQ=; b=tR7QoRWHSKPBaquK9TWhtKgkfgtH1BGUdgt8go3XfE0UqsOQSZqOap5OfTo2leOwzqhQ2U1mzcbZkfDDoiVWRPtHT/gRtwZjTPUEb0x6+DWD0usOQpPu4MVAej+u7IxDDPOqPmLO+JRHS2NQTsmSVVxdDX+9St2NwCJsAzVefZw= Received: from CH2PR10MB4344.namprd10.prod.outlook.com (2603:10b6:610:af::19) by SA1PR10MB7712.namprd10.prod.outlook.com (2603:10b6:806:3a3::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.16; Thu, 25 May 2023 15:21:04 +0000 Received: from CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::7aa1:df38:105a:21fa]) by CH2PR10MB4344.namprd10.prod.outlook.com ([fe80::7aa1:df38:105a:21fa%7]) with mapi id 15.20.6411.028; Thu, 25 May 2023 15:21:04 +0000 From: Qing Zhao To: Bernhard Reutner-Fischer CC: Qing Zhao via Gcc-patches , "joseph@codesourcery.com" , "richard.guenther@gmail.com" , "jakub@redhat.com" , "keescook@chromium.org" , "siddhesh@gotplt.org" , "uecker@tugraz.at" Subject: Re: [V7][PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832] Thread-Topic: [V7][PATCH 1/2] Handle component_ref to a structre/union field including flexible array member [PR101832] Thread-Index: AQHZipN7tY8it/pvIEGa+hbI+f1zVq9iOVmAgAdEKYCAAQSNAIAAodOA Date: Thu, 25 May 2023 15:21:04 +0000 Message-ID: <28506319-0176-4620-A17F-859EEA0F4B5A@oracle.com> References: <20230519204948.237791-1-qing.zhao@oracle.com> <20230519204948.237791-2-qing.zhao@oracle.com> <20230520011133.1d813add@nbbrfq.loc> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3696.120.41.1.3) x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CH2PR10MB4344:EE_|SA1PR10MB7712:EE_ x-ms-office365-filtering-correlation-id: 9af23c9d-63e6-422d-5b6a-08db5d33a808 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VvYAAtg9UULvWkgeqgxDbNoQh8QJGkpj0aXO2lglxufCsLzUiy6yIMnsb7iMc0VGQIMlx81tgsFRhlmlBNEPl6KhccotVp/xa7rZ5J33bCp/BUFIrbJ3BCtrWNCVJlnE9u81YlL4X3QEKQcBNWnAbtHMuSgTw7FdrLnpgjEYWHq5OUMJHn0WhhCPe52mOca1Fe2JH3xzQ508aF1tGpMNEX8euOutZeNW8i2bqjj0ZHyZYr1u2266od1AKtNyYRnr7QHk16ZhynZtxS3DcnohTmtjl7uMXupQlGlbWUx5aI1Y/qrYhHBVA32IKcZAJApZK7ulqmWEvwEEra9FoDEWpxTRGbvMKDset9gC8p1pKzMXCC8dEFOh/YIGYsFTOWyG9xXsEl2DkxVT50adAlSJa1cFrr1u5QZ+A1E1+RndoM19O9NahqMKOiPzbbTaQpzg2SuDAEEPvLMPO2UjCyhqQISxk3bRuBENMt2bl2L3lwHt69I0ZiSzbHVRKk1wYoSCT15ntpACxHQOFZgSdi14YY+kk0aJmttXNN4umfowShbXNVRoi0pvPWCLjb1oTGskH7NfZjhzQt3YkPqwDjMLhZFxk61TzHf5PAmPOMaZqugLavW1BvuF1xVlii6vOP5w6MSXh1RN+k+hrXCEqROHtQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH2PR10MB4344.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(136003)(366004)(376002)(346002)(396003)(451199021)(2906002)(316002)(86362001)(2616005)(5660300002)(8676002)(8936002)(44832011)(54906003)(41300700001)(66476007)(66556008)(66446008)(91956017)(64756008)(66946007)(76116006)(36756003)(6916009)(4326008)(6486002)(478600001)(33656002)(71200400001)(6512007)(186003)(6506007)(53546011)(26005)(83380400001)(38070700005)(38100700002)(122000001)(45980500001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?QQTDZhPxJgeForfXbKjHjCHWX5EkRnDF4ROwqFBMuYgRVk9YCnz+PJlsWdQP?= =?us-ascii?Q?XvMZsdxIhE5/leTcL1CqJnsIodcg7dsT6y8Spv6zXTry2Z3v8ZRYhjvHxnOw?= =?us-ascii?Q?lk+ooKiWZJ3QtsHEl2RVWWcNt7BCF9UWp1t4Om2GprEPOTXnEyc+ba5cECuD?= =?us-ascii?Q?ZjKApsKyJxdPkPomGjh/mSOE8lQSFPghBRRY6gIOAGTj2oDImf+amr6gUyJ2?= =?us-ascii?Q?x100DcRtdND6ZF96EaedgQuTonMCep7NjMgIjcruqgj1O/xP2dLMDdaf2zjW?= =?us-ascii?Q?zwJy8CVPUMRWAu+JnterguHrSvV76wAcfPt+T76X/nqHrLmia+Wuku20lvXu?= =?us-ascii?Q?AUXBYmZmL0q4+hivxjFc1qfMgMoyaLQiDCkKF59JeAawIQJoSfYwdqTeXWR1?= =?us-ascii?Q?iZHzeE0aK5SmAjKPZhufq+VCvWe7NVPs+J5BWHfWPM7tKdSiITFTTjH0PbkT?= =?us-ascii?Q?mTo/LpXSF36hEq5FCV43mm9sJxwjwKwhNtZOmvmb0xLD7M7gkF0u/S69I202?= =?us-ascii?Q?ac87x0ln/ZjCV8mCy6zyMaY41/0UitTBo+tJuZsPXuvRfuqxalYNCFaowjQE?= =?us-ascii?Q?6HPqly7arLVlMpbhpEcpZxy1452/SyXo2XAvvhZWOSdh1VmbwteW0GCoTzNJ?= =?us-ascii?Q?DhlnifGDYe9uwY55L/5nfSrLmFepWrDTucsD5IPTQ2II01lctGqjwj3OuXYg?= =?us-ascii?Q?aL292Q0DKuolrFSsVzuV7SE4GIypdXTYKxHIGMv/LRU+CcvLoiL7h/HcKEPt?= =?us-ascii?Q?w01qybrY/92fQtKCJKpZbB1waIQBPkYxxy127B9EZ0qE6PFjmk40N3t/7mKQ?= =?us-ascii?Q?EOx9ipqoktdJ42thJ4vdCPXHXTemufqBVfgNgRKnRAdE/ZzPEi3L5CQagKxC?= =?us-ascii?Q?NzxHfSaMPxTSRzmW7ljsCJPWvtziigxMWhEM0qSfu+nspm/CTg/Mbx4qj12h?= =?us-ascii?Q?iT3umugFROX51z3GxOniHOZdRxHCIFKuw6nLdCJcIKuFUg5KiF7R3uTS/m7U?= =?us-ascii?Q?1k05VGAzbe7LDEgyo/ZD+A2fKTMYuojtC9R8tM/Z8yApQ5LVFh3eqmATt//M?= =?us-ascii?Q?x17lf7RipoBgVMUS0CRBdGh2jOGyNbeVdFkgopKrtUn8h8bJYFtIv/mp/5Fz?= =?us-ascii?Q?5VXHQRxGsK71sESNjcJmicj0DKgKBCia3yMo1cS3mOlPXdUTTgzhVu3cG9sM?= =?us-ascii?Q?2tExjSfgkqQgRJSCFZPsKGj5HeN2fCk1pCeV0mDGqzxXLMECa0rxhoWKm/II?= =?us-ascii?Q?mg98Kz2cBwN1LOAwK/7K/IT+bwdtAWWSgChA88CeennWDTKUBDnai9qX8L+T?= =?us-ascii?Q?d5gtOYnrZ/vhRhLffsfl99IPrlzmIYYm6n4H8bnHwuCBDpWYh1/2rbmRMEJK?= =?us-ascii?Q?hlcgfHndVDeZrEr4aus+hOrpNJdOlnZHdrh9EkuVs69CRKn7KkAowwETHdAq?= =?us-ascii?Q?awlvYVwGojdlND3dyGZ+Yq+My1um1NeBxjcWHSqvkvWqIqLJiGk4mm6zhqAs?= =?us-ascii?Q?1B3VHgUvvcw6/CNy8l1yifkqyv6vBWk9XdEO9KWaLGDC/Rc39byIGc7Tab7y?= =?us-ascii?Q?365Qjf+GPhAd4wVK+xeTxLrAeEbNl3KG6vZ+1EFl?= Content-Type: text/plain; charset="us-ascii" Content-ID: <7D4F1E373A1DD34A9EBCC11A69796184@namprd10.prod.outlook.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?us-ascii?Q?WYQzxmMADTPvmA5C+GGHW8wkcrtIFSlACsQn021wKVrp1gveMQzENzVItkwg?= =?us-ascii?Q?uzbXZiu8yBqPw59ynwqTMA3L8ykhb+Fp0XAsgyaxgpghWcFtjC7EuImgJHwB?= =?us-ascii?Q?N06pEvePVNOL9S8SUHKu+87tKAVaYq0u+DuQxoN+4F8UNDrtizbjTnqxHTjW?= =?us-ascii?Q?Mpcn9NIepnVVq+uHFEsp3EmWWxpjGcS84lyx0K773UnY4yABqB8a9e9pWthq?= =?us-ascii?Q?k3iS9o4aCHSQlqy44sfZ6TZdvSrGv7NaepdKpftBsidRUq3xLRiRfk1ip0O7?= =?us-ascii?Q?5TeV/7h31hKVLz0EEp6j88exO14Vo/Mys775V4bUJFP1pIpXnp+ybq/+yghs?= =?us-ascii?Q?nxCUi9xkyMPc3GBdWT2krzElB84ZW1u6JlQV8xjxM2O9Zpxxz9+d91zs6SEo?= =?us-ascii?Q?h265TvUnp2dk4fsOrC67Uf8ARq3Ie2duW1R1m65wkNL8I/NbR8zhcHKOYVQJ?= =?us-ascii?Q?1Nsi6DLajSp+B0QsXDFF48NTcHyCIyzmjFhz1jJZwwq4Hiw+L3/fM67lz+bK?= =?us-ascii?Q?+8OHRnDbQXEaDddn3zPy6s4MTEfzT/ZH9CSv+OX6eOsMFXfQWP8VnWuNi7Ke?= =?us-ascii?Q?h+r8D1RyQppmNgInWRYUHH6OCuRwms76iEl1d9NIn2g+j3wwVaf+A0IrZixt?= =?us-ascii?Q?4poMOfTHkqsNOLmMZ7jxYzykKGEW9gE32jCL+gzXnIOWLmWlNVtCzEt8yxcB?= =?us-ascii?Q?dm3rVhWaWVNpzvKKEjwfdfMbNMeNLnWv4S1HGNMxg1kZwSKgHZWEXG7AMSzm?= =?us-ascii?Q?8m6chxHL5YvxtnxXIU1QIDfRLrmnsYW5QWrv6/Rhm7C3RTN1xl8juoXRZqCe?= =?us-ascii?Q?ouoK9jPz3K7z20ujY5xRtLg66lGbBDjTt5PqvFCYqBCwxsy3UrkznyKmtqfc?= =?us-ascii?Q?Frbln0hWP5yfW+aqqcl1T+H6ZStstNKlPelUmCptx2Hkpc5HNKEhgnDbA+wb?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CH2PR10MB4344.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9af23c9d-63e6-422d-5b6a-08db5d33a808 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 May 2023 15:21:04.6574 (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: zFVH5kVKROmZ/vIIncPcWNVMTKAAN2rEGEGmoVZQqBwwz4vRQroz7uXRHJ2dRZkubfArP1YD+oj04Rmc2IdtdA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR10MB7712 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.573,FMLib:17.11.176.26 definitions=2023-05-25_08,2023-05-25_03,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 phishscore=0 malwarescore=0 bulkscore=0 mlxlogscore=999 mlxscore=0 adultscore=0 spamscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2304280000 definitions=main-2305250126 X-Proofpoint-GUID: vTJxVIvrq_X6_Db1LEF-06T2qozAjlCt X-Proofpoint-ORIG-GUID: vTJxVIvrq_X6_Db1LEF-06T2qozAjlCt X-Spam-Status: No, score=-11.4 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_H5,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 May 25, 2023, at 1:41 AM, Bernhard Reutner-Fischer wrote: >=20 > On 24 May 2023 16:09:21 CEST, Qing Zhao wrote: >> Bernhard, >>=20 >> Thanks a lot for your comments. >>=20 >>> On May 19, 2023, at 7:11 PM, Bernhard Reutner-Fischer wrote: >>>=20 >>> On Fri, 19 May 2023 20:49:47 +0000 >>> Qing Zhao via Gcc-patches wrote: >>>=20 >>>> GCC extension accepts the case when a struct with a flexible array mem= ber >>>> is embedded into another struct or union (possibly recursively). >>>=20 >>> Do you mean TYPE_TRAILING_FLEXARRAY()? >>=20 >> The following might be more accurate description: >>=20 >> GCC extension accepts the case when a struct with a flexible array membe= r >> is embedded into another struct or union (possibly recursively) as the l= ast field. >>=20 >>=20 >>=20 >>>=20 >>>> diff --git a/gcc/tree.h b/gcc/tree.h >>>> index 0b72663e6a1..237644e788e 100644 >>>> --- a/gcc/tree.h >>>> +++ b/gcc/tree.h >>>> @@ -786,7 +786,12 @@ extern void omp_clause_range_check_failed (const_= tree, const char *, int, >>>> (...) prototype, where arguments can be accessed with va_start and >>>> va_arg), as opposed to an unprototyped function. */ >>>> #define TYPE_NO_NAMED_ARGS_STDARG_P(NODE) \ >>>> - (TYPE_CHECK (NODE)->type_common.no_named_args_stdarg_p) >>>> + (FUNC_OR_METHOD_CHECK (NODE)->type_common.no_named_args_stdarg_p) >>>> + >>>> +/* True if this RECORD_TYPE or UNION_TYPE includes a flexible array m= ember >>>> + at the last field recursively. */ >>>> +#define TYPE_INCLUDE_FLEXARRAY(NODE) \ >>>> + (RECORD_OR_UNION_CHECK (NODE)->type_common.no_named_args_stdarg_p) >>>=20 >>> Until i read the description above i read TYPE_INCLUDE_FLEXARRAY as an >>> option to include or not include something. The description hints more >>> at TYPE_INCLUDES_FLEXARRAY (with an S) to be a type which has at least >>> one member which has a trailing flexible array or which itself has a >>> trailing flexible array. >>=20 >> Yes, TYPE_INCLUDES_FLEXARRAY (maybe with a S is a better name) means the= structure/union TYPE includes a flexible array member or includes a struct= with a flexible array member as the last field. >>=20 >=20 > So ANY_TRAILING_FLEXARRAY or TYPE_CONTAINS_FLEXARRAY, TYPE_INCLUDES_FLEXA= RRAY or something like that would be more clear, i don't know. > I'd probably use the first, but that's enough bike shedding for me now. L= et's see what others think. Thanks. I changed it to TYPE_INCLUDES_FLEXARRAY. Qing >=20 > thanks, >=20 >> Hope this is clear. >> thanks. >>=20 >> Qing >>>=20 >>>>=20 >>>> /* In an IDENTIFIER_NODE, this means that assemble_name was called wit= h >>>> this string as an argument. */