From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 53053 invoked by alias); 21 Aug 2017 10:59:37 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 52784 invoked by uid 89); 21 Aug 2017 10:59:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-6.6 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_1,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_PASS,URIBL_RED autolearn=ham version=3.3.2 spammy=Hx-languages-length:2603 X-HELO: EUR01-DB5-obe.outbound.protection.outlook.com Received: from mail-db5eur01on0068.outbound.protection.outlook.com (HELO EUR01-DB5-obe.outbound.protection.outlook.com) (104.47.2.68) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 21 Aug 2017 10:59:31 +0000 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs.Nagy@arm.com; Received: from [10.2.206.69] (217.140.96.140) by HE1PR0802MB2491.eurprd08.prod.outlook.com (2603:10a6:3:d9::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1362.18; Mon, 21 Aug 2017 10:59:26 +0000 Message-ID: <599ABD0B.2000603@arm.com> Date: Mon, 21 Aug 2017 12:02:00 -0000 From: Szabolcs Nagy User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 MIME-Version: 1.0 To: "H.J. Lu" , Joseph Myers CC: nd@arm.com, Martin Sebor , Jason Merrill , GCC Patches Subject: Re: RFC: [PATCH] Add warn_if_not_aligned attribute References: <6c6c268d-a40b-cfa9-574c-ad235f9205b7@gmail.com> <4a4ac20f-9c27-4844-55dc-38ff56ac138b@gmail.com> <20170616115455.GA3457@gmail.com> <20170708134504.GA1303@gmail.com> In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-ClientProxiedBy: AM5PR04CA0030.eurprd04.prod.outlook.com (2603:10a6:206:1::43) To HE1PR0802MB2491.eurprd08.prod.outlook.com (2603:10a6:3:d9::23) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: dff5cb8c-7f4f-4f28-81de-08d4e883b0ec X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(48565401081)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:HE1PR0802MB2491; X-Microsoft-Exchange-Diagnostics: 1;HE1PR0802MB2491;3:1GJulZ48TE88RxoL8SJXItAUA6r1j6RqctVRBdFcPEM2cbcjraCnP7AcvmOXzZ3yomgo5PShUgTwRIlmJzUEBEBFGkP6XDImvCmipkJDqStAuSvEce6IwuF5vrOgaPJ1QAxdvNQMyi3DAh8tJXJVqbu8m4w4kmHBfMbqWiCsklTQUADVKy1CzIdR4EItbG1a7rK413kXqk0e7YSUctyBHKz1eBcBYFpGtdyf+XjWdef8pDnp2aWyCX+iXSGpgUlY;25:mOG4MC3oqVmAivghiGiUeFHPycqlMT6iOZHwe/uXp+ArWzSKO+YPmpLvHNiNuIFGtIfblzEJXCwXRzZR8AJwwK+QFk9zo8j3IUHeXaqvA8OwK9DgPsai5SwEC34arUeoJdXlpnGtoohuTOHJBIx1tViET+xzPj4+LnVgTnLIWeQkGLBR+3d0Dgq3/cDyis3xN6M14XOrkJOQYRXA/mjpcue74u+dOHni93ri5iaEPf0sOkiwzFOwGoqzyLWhrpJhAFOhRSE3Xk73C6V3e4U7elFoBhaInFvTteg3ejs/Xr5wks0ob4qx7t1B6nnF/IHiTMFspe5JY39iurGPDJSdmw==;31:t/6csWNcmD/qW+jfeR9diTtU0YYaNNvFF7em1KGzz2J+DEv1czPDGtYJ0tdJTzhU7S9lyyS2kB+RuvpHp7VuTVGwVEyVgH2HAs/vifRea53RleVzpEEryVyZHdy08HkFgo7Lo8itaQnHpfjeKWbpdYbxfCbGMhnZCRBAfsW96d7CBIeKgjU8AUb6AjLsJyVVU+h+OdPEShuM1fM3FQIzQEM9XHAnVk/UVim70k3i6kw= X-MS-TrafficTypeDiagnostic: HE1PR0802MB2491: NoDisclaimer: True X-Microsoft-Exchange-Diagnostics: 1;HE1PR0802MB2491;20:MOTKvvWwbd6TLVu6HP83f36AWgNhsjxK4u8s4GqOCcyvBq6Yri72IIfvCecy0IfoDHDOZdb4tbKOuJ4aDgVb6iQsyrJPwy0ctXEuBdnKtd4RQpHLwaoa9vkApkFspqmJ4SBqgh92VYtJByARQ2QolBIUNVv2OPkOYKpIBKkcLoM=;4:sbYSSXkupTR5al2Q3L7ZPpw+weRp0s2VKIalFk9s+cc6W/mKb0LCIPWVQ/w0FuiixW3z386rXXgxxYQQkDdeBSpjJeyE3NogMwOHhulibByEYWhQWd4k29po7sNP9cXZGlCUGgb9vYy1Siur60Pt/euzz+t6ARKqkT2PZ/C1+fOAbzKRCr33NLgegtUcYx4y4KZyDyRWDvCU/bfhPoY32/EoN+LjPtBov94W4CJLhKGTM0j02IUfYEtk+Gb/7eVk X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123564025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:HE1PR0802MB2491;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:HE1PR0802MB2491; X-Forefront-PRVS: 040655413E X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(7370300001)(4630300001)(6049001)(6009001)(39860400002)(24454002)(199003)(189002)(377454003)(42186005)(6246003)(4001350100001)(97736004)(105586002)(23746002)(72206003)(36756003)(2950100002)(53546010)(47776003)(65806001)(65956001)(66066001)(83506001)(6116002)(6666003)(3846002)(93886005)(80316001)(7350300001)(189998001)(230700001)(64126003)(7736002)(68736007)(86362001)(33656002)(77096006)(2906002)(50986999)(8676002)(5660300001)(305945005)(50466002)(81166006)(81156014)(65816999)(25786009)(229853002)(6486002)(54356999)(76176999)(53936002)(87266999)(59896002)(101416001)(4326008)(54906002)(478600001)(106356001);DIR:OUT;SFP:1101;SCL:1;SRVR:HE1PR0802MB2491;H:[10.2.206.69];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;HE1PR0802MB2491;23:eZKCGoWq//2fCNtczaFXmOa98fCTQSjNzFg?= =?Windows-1252?Q?AAFXoR+NR2W2boDzCvvGYFu94deMuCMDSMXUZWRsi2VvqZ6cFUH6VrEV?= =?Windows-1252?Q?vcyfw52FYkQg3NRYr6aY36tAdHMNOrc17QeqgAe7n8lJUiMp9c2VBHEa?= =?Windows-1252?Q?O3H5kq+ryXX16xGRt7mtHj/TNiGSrJb/jPzcTQyPIsTk2i+qmK9J71Yo?= =?Windows-1252?Q?yA8eTXnW76j2cvuthHqROtD1iFwB1s/3NFbVfQQWSFZiSMR7DHysejWV?= =?Windows-1252?Q?tlrHXmze3bCzNd7bq1lXJBOtW07H0wTnCMi6IXKVEdRehd58Js7ZD8nt?= =?Windows-1252?Q?Ta/yTusph175NE5Z7296qWkUxmSOI1T1a/WFeNKRzwqaPHRKOqFJYRqP?= =?Windows-1252?Q?dSRDcl3H1bgrxWHP0WmJN8b0s+EIjoE4OFKZWMGGGfQMmTLSTRR2cH5b?= =?Windows-1252?Q?aC0XbpyD7snT27+eY4HOhb7WWCGcfcWELxj8SJegk7p23uiDXoQm2SqL?= =?Windows-1252?Q?+1EESpVxWhHuoZMm8PXOM2HZ5SoiZQlh2rm67DaYu1rrXZHKa6HaSbCC?= =?Windows-1252?Q?LvKuOBn8YFcsGJ6GxIFzZ3ieZHw/gyCWhnr3T+nZ6ZFBSFDMubNi80Fx?= =?Windows-1252?Q?tBWiQJBt7TG64SHf3AkEIkfsMjifAmmwEd3BQUGB2l2t/Py/j+Q5IGw0?= =?Windows-1252?Q?g2xvF7CUOkAClt70KYvGcgaPI2eDR56sIbw+rRS1wYFdcBCfI+1Wbmbr?= =?Windows-1252?Q?jvMwh6Jy7wLELH3LPgP28o7NcWNWcQA3CpzLvCAINE430fzWvhdJtB4o?= =?Windows-1252?Q?Ql7yl+JZLjVJ3y88RPKgEB6WLRQRrONww4gqk0pksYHurp5krVbTZW2l?= =?Windows-1252?Q?L9J8sUPZk1gzxbub6sk0BUbqwuwhK2Ra+bOA1YXZWqID00TjPD0m2Oyq?= =?Windows-1252?Q?1WEXUooSNACsn2z34SdV8XxDylhX3HXCmSuSSwLR1EthGms+BUPL7nFe?= =?Windows-1252?Q?G95CvTQLiinbLYAm7s+8zbD3/lRQ17T90tTRlsh947YbadjxvS5cOU57?= =?Windows-1252?Q?GgTxirELdT2BQQU61Fho6rgaHh44pwi0bfFi3cCXP2ei2SiGWgIZykBX?= =?Windows-1252?Q?mjv/FfzP9DWYOsV6H3cwOWwGMMz+0uwoWzsNvL6FwYPolNtAvKCLtpKH?= =?Windows-1252?Q?3OJQekRBBYamHmyyV2pYWV8qzXOYzS5pydP/yPzpYXQf8QO6FymGFkay?= =?Windows-1252?Q?mI33FuTQFmP7LMKGONNg+LytRG9Yi2uaje9VFcN/A9XYLxSzeZtmRYQR?= =?Windows-1252?Q?iHj7SzDQERBBG7OX/nrdhfpXgSaeUrCRQMbQrQoZ1vIhUzbnlK1gXvvu?= =?Windows-1252?Q?HTNcN4RYN0Sj5LOJbGmWEem5OI6GZK3c5vF2DqeJRZkdYbc4ko0UXfek?= =?Windows-1252?Q?q2c0yOqeYfPjClKAerxi7qOJ3uvv0/p1qdlB6CTmWxd1RwsUWRGjf+yM?= =?Windows-1252?Q?dcfaMDQIjPnP7fsUHxPSOjGCh7GDKzKEeOH7MrnBVOz2dPTOLCD65bPV?= =?Windows-1252?Q?tM54iyKTGTERtbZ8=3D?= X-Microsoft-Exchange-Diagnostics: 1;HE1PR0802MB2491;6:YXmksUvO3F8aBp+qymczuVc26f90K4rFKjkC8rWuay0/6Ivu+D4VqFNHTgOiiZF3fjMWobfhHAYuXjlwvRDkE977KOuuRE2S7jEvtWvXgieXvH44/FvMl8jP3Qo1NYJ+OqrUsS7kmzpZhWCsgRePP3BUrkdIjo3urjJuwNWZVRHzAxu+4uXLMFFlDbp74loxG4nkzsgac/G8RpFmOBHmXMGH7P9KeXkpjz8M+BHF6jLNzrpU5Tkn5SAmdt6XkHs+FWGR89DiVDVjepJpGqusBreeAQCJpcCMqfY+361nHWPlI789h7IkxnkWxSKjso4Wj6H+h07dMD18QD6M1Qtp6g==;5:u+OcubSbBWorkFCmaxlKzjReHlh9wWJCqcKKcWOpDS4h27RZfEUvImXln6qflz3lJzhmxQrfPM5BSucFv2idEor2iTnlcrauULoAf8ZZJ0xV4JBlv7f/GjLFQ02m5uom3BRbahs8c7+eTIcOi4Zlvw==;24:cIagGME6/napFxe1QUwZqIdQ9fWKDr2ME5SMWCuYX6nxPRNCGlA4EMpvAcSDGQ44uP/vFIyGkDa8QMKKLM6wdnAKdUuDhn4jVsSvIhIXgR4=;7:vLwPO+xhd7GigRKpXd/QpEown9b5BMna99TgU1nkKWVILup6boL5ohate1H90U/HA7omuJ5sLjV4p+hFxDe9qG8U9tYyvJLQGp3lDBh2pzF2qStFYdWuk2ULVkWcpJ54hgX/iFL8FCRlyBwL2/0rmRcJcfruqOfRm1BgqYpGhd7HsmcVPAWpvYpbIuiBNjRrA1sRaB+9QVUDUsgu63GHLFPma+MujmqUxsMXQplPVEA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Aug 2017 10:59:26.6325 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2491 X-IsSubscribed: yes X-SW-Source: 2017-08/txt/msg01191.txt.bz2 On 17/08/17 15:56, H.J. Lu wrote: > On Thu, Aug 17, 2017 at 6:52 AM, Joseph Myers wrote: >> On Sat, 8 Jul 2017, H.J. Lu wrote: >> >>> +@item -Wpacked-not-aligned @r{(C, C++, Objective-C and Objective-C++ only)} >>> +@opindex Wpacked-not-aligned >>> +@opindex Wno-packed-not-aligned >>> +Warn if a structure field with explicitly specified alignment in a >>> +packed struct or union is misaligned. For example, a warning will >>> +be issued on @code{struct S}, like, @code{warning: alignment 1 of >>> +'struct S' is less than 8}, in this code: >> >> Use @samp for warnings quoted in the manual, as previously discussed. >> >> OK with that change, in the absence of C++ maintainer objections within 48 >> hours. >> > > Here is the updated patch. I moved c++ changes to merge_decls, where > alignment is merged, and check_bitfield_type_and_width, where bit-fields > are checked. > > Tested on x86-64 and i686. > i assume packed semantics is same on arm so these should warn on arm too ? on arm i see: FAIL: gcc.dg/pr53037-2.c (test for warnings, line 8) FAIL: gcc.dg/pr53037-2.c (test for warnings, line 16) FAIL: gcc.dg/pr53037-2.c (test for warnings, line 32) FAIL: gcc.dg/pr53037-3.c (test for warnings, line 8) FAIL: gcc.dg/pr53037-3.c (test for warnings, line 16) FAIL: gcc.dg/pr53037-3.c (test for warnings, line 32) FAIL: g++.dg/pr53037-2.C -std=gnu++98 (test for warnings, line 6) FAIL: g++.dg/pr53037-2.C -std=gnu++98 (test for warnings, line 16) FAIL: g++.dg/pr53037-2.C -std=gnu++98 (test for warnings, line 29) FAIL: g++.dg/pr53037-2.C -std=gnu++11 (test for warnings, line 6) FAIL: g++.dg/pr53037-2.C -std=gnu++11 (test for warnings, line 16) FAIL: g++.dg/pr53037-2.C -std=gnu++11 (test for warnings, line 29) FAIL: g++.dg/pr53037-2.C -std=gnu++14 (test for warnings, line 6) FAIL: g++.dg/pr53037-2.C -std=gnu++14 (test for warnings, line 16) FAIL: g++.dg/pr53037-2.C -std=gnu++14 (test for warnings, line 29) FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 6) FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 16) FAIL: g++.dg/pr53037-3.C -std=gnu++98 (test for warnings, line 29) FAIL: g++.dg/pr53037-3.C -std=gnu++11 (test for warnings, line 6) FAIL: g++.dg/pr53037-3.C -std=gnu++11 (test for warnings, line 16) FAIL: g++.dg/pr53037-3.C -std=gnu++11 (test for warnings, line 29) FAIL: g++.dg/pr53037-3.C -std=gnu++14 (test for warnings, line 6) FAIL: g++.dg/pr53037-3.C -std=gnu++14 (test for warnings, line 16) FAIL: g++.dg/pr53037-3.C -std=gnu++14 (test for warnings, line 29)