From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] eal: remove variable length array Date: Wed, 19 Dec 2018 22:45:58 +0100 Message-ID: <27594774.hr4jPcleJC@xps> References: <20181214163827.9403-1-jeffrey.b.shaw@intel.com> <20181214190713.GB9964@ae13-28.jf.intel.com> <3a573b56-6ea0-812c-4641-830fbd3c59cc@ericsson.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: dev@dpdk.org, Jeff Shaw , stephen@networkplumber.org, harini.ramakrishnan@microsoft.com To: Mattias =?ISO-8859-1?Q?R=F6nnblom?= , Jason Messer Return-path: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id 73F071B296 for ; Wed, 19 Dec 2018 22:46:01 +0100 (CET) In-Reply-To: <3a573b56-6ea0-812c-4641-830fbd3c59cc@ericsson.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 14/12/2018 21:28, Mattias R=C3=B6nnblom: > On 2018-12-14 20:07, Jeff Shaw wrote: > >>> The code prior to this commit produced the following warning when > >>> compiled with "-Wvla -std=3Dc90". > >>> > >>> warning: ISO C90 forbids variable length array =E2=80=98array=E2= =80=99 [-Wvla] > >>> > >>> This commit removes the variable length array from the PMD debug > >>> trace function by allocating memory dynamically on the stack using > >>> alloca(). > >> > >> Is alloca() even included in *any* C standard? As far as I see, it just > >> achieves the same thing in an uglier, less portable way than VLAs. > >=20 > > I agree that it is much less elegant than a VLA. This is in preparation > > for DPDK on Windows, which using the Microsoft Visual C++ (MSVC) compil= er. > > MSVC does not support variable length arrays. It does, however, support > > alloca(), as does GCC/ICC. > >=20 > > For this particular instance, the point is moot, since the function is > > not used anywhere and can just as easily be removed. Though it does not > > address the issue for the ~100 other instances where VLAs are used. We > > will be submitting patches for those as more common files are ported to > > Windows. >=20 > If Microsoft's C compiler doesn't support C99, some 20 years after its=20 > release, maybe it's time to find a new compiler, instead of messing up=20 > the DPDK code in a ~100 instances. If think there is no reasonnable compiler for Windows. Yes I know, it's crazy. Microsoft, should we wait 10 more years to have C99 supported in MSVC?