From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH] eal: remove variable length array Date: Thu, 20 Dec 2018 12:03:06 +0100 Message-ID: <2132371.0rAaFhJRHa@xps> References: <20181214163827.9403-1-jeffrey.b.shaw@intel.com> <27594774.hr4jPcleJC@xps> 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 To: Mattias =?ISO-8859-1?Q?R=F6nnblom?= , Jason Messer , harini.ramakrishnan@microsoft.com Return-path: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id E434C1BB4F for ; Thu, 20 Dec 2018 12:03:13 +0100 (CET) In-Reply-To: List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 20/12/2018 11:53, Mattias R=C3=B6nnblom: > On 2018-12-19 22:45, Thomas Monjalon wrote: > > 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 j= ust > >>>> achieves the same thing in an uglier, less portable way than VLAs. > >>> > >>> I agree that it is much less elegant than a VLA. This is in preparati= on > >>> for DPDK on Windows, which using the Microsoft Visual C++ (MSVC) comp= iler. > >>> MSVC does not support variable length arrays. It does, however, suppo= rt > >>> alloca(), as does GCC/ICC. > >>> > >>> 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 n= ot > >>> 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. > >> > >> If Microsoft's C compiler doesn't support C99, some 20 years after its > >> release, maybe it's time to find a new compiler, instead of messing up > >> the DPDK code in a ~100 instances. > >=20 > > If think there is no reasonnable compiler for Windows. > > Yes I know, it's crazy. > >=20 > With's wrong with the Windows version of Clang? I agree it should be the preferred compiler for DPDK on Windows. But Microsoft told there are some issues working with clang. Jason, Harini, please, could you elaborate?