From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id BAEA88D85 for ; Fri, 8 Jul 2016 16:15:45 +0200 (CEST) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga102.jf.intel.com with ESMTP; 08 Jul 2016 07:15:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.28,330,1464678000"; d="scan'208";a="1018046299" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by fmsmga002.fm.intel.com with ESMTP; 08 Jul 2016 07:15:38 -0700 Received: from fmsmsx119.amr.corp.intel.com (10.18.124.207) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.248.2; Fri, 8 Jul 2016 07:15:38 -0700 Received: from fmsmsx113.amr.corp.intel.com ([169.254.13.33]) by FMSMSX119.amr.corp.intel.com ([169.254.14.74]) with mapi id 14.03.0248.002; Fri, 8 Jul 2016 07:15:37 -0700 From: "Wiles, Keith" To: "Yigit, Ferruh" CC: "dev@dpdk.org" Thread-Topic: [dpdk-dev] [PATCH v3 00/11] Fix build errors related to exported headers Thread-Index: AQHR2O+YMp4iBaGf40SnWbEto7dz2qAOwZmAgABIQ4A= Date: Fri, 8 Jul 2016 14:15:37 +0000 Message-ID: References: <10B01822-557C-400A-A6BE-DBFF60AF90E4@intel.com> <20160708080543.GB7621@6wind.com> <577F78E9.8020705@intel.com> In-Reply-To: <577F78E9.8020705@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.252.196.38] Content-Type: text/plain; charset="Windows-1252" Content-ID: <90972FC4627F9342BFB66B23886EDC83@intel.com> Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v3 00/11] Fix build errors related to exported headers X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jul 2016 14:15:46 -0000 > On Jul 8, 2016, at 4:56 AM, Yigit, Ferruh wrote: >=20 > On 7/8/2016 9:05 AM, Adrien Mazarguil wrote: >> On Thu, Jul 07, 2016 at 06:33:17PM +0000, Wiles, Keith wrote: >>>=20 >>>> On Jul 7, 2016, at 10:49 AM, Adrien Mazarguil wrote: >>>>=20 >>>> DPDK uses GNU C language extensions in most of its code base. This is = fine >>>> for internal source files whose compilation flags are controlled by DP= DK, >>>> however user applications that use exported "public" headers may exper= ience >>>> compilation failures when enabling strict error/standard checks (-std = and >>>> -pedantic for instance). >>>=20 >>> Do you try compiling these changes with CLANG and/or ICC compilers? >>=20 >> clang/clang++ yes, works fine. I did not try with ICC however. >=20 > I tested with icc, getting following error [1], compiler warning seems > valid, but didn't investigate what in your patch cause this. >=20 > [1] > .../app/test/test_table_acl.c(487): error #2405: array of elements > containing a flexible array member is nonstandard > struct rte_pipeline_table_entry entries[5]; > ^ >=20 > .../app/test/test_table_acl.c(492): error #2405: array of elements > containing a flexible array member is nonstandard > struct rte_pipeline_table_entry entries_ptr[5]; I am guessing it does not like the uint8_t action_data[0] in the rte_pipeli= ne_table_entry structure. I can see why it would be non-standard allocated = on the stack in this case. Maybe a keyword like __extension__ needs to be a= dded or pragma. >=20 >>=20 >> Note that considering "({ ... })" is a GNU extension, compilers that do >> support this syntax also support the GNU __extension__ keyword. As a res= ult, >> those that do not support this keyword most likely already cannot compil= e >> DPDK at all. >>=20 >=20