[dpdk-dev] [PATCH] eal: remove variable length array

Thomas Monjalon thomas at monjalon.net
Thu Dec 20 12:03:06 CET 2018


20/12/2018 11:53, Mattias Rönnblom:
> On 2018-12-19 22:45, Thomas Monjalon wrote:
> > 14/12/2018 21:28, Mattias Rönnblom:
> >> On 2018-12-14 20:07, Jeff Shaw wrote:
> >>>>> The code prior to this commit produced the following warning when
> >>>>> compiled with "-Wvla -std=c90".
> >>>>>
> >>>>>      warning: ISO C90 forbids variable length array ‘array’ [-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.
> >>>
> >>> 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) compiler.
> >>> MSVC does not support variable length arrays. It does, however, support
> >>> 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 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.
> >>
> >> 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.
> > 
> > If think there is no reasonnable compiler for Windows.
> > Yes I know, it's crazy.
> > 
> 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?




More information about the dev mailing list