On Wed, May 03, 2023 at 04:57:40PM +0100, Bruce Richardson wrote: > On Wed, May 03, 2023 at 04:39:14PM +0100, Ferruh Yigit wrote: > > On 5/3/2023 4:14 PM, Bruce Richardson wrote: > > > Add a deprecation notice informing users that we will require a C11 > > > compiler from 23.11 release onwards. This requirement was agreed by > > > technical board to enable use of newer C language features, e.g. > > > standard atomics. [1] > > > > > > [1] > > > http://inbox.dpdk.org/dev/dbapr08mb58148cec3e1454e8848a938998...@dbapr08mb5814.eurprd08.prod.outlook.com/ > > > > > > Signed-off-by: Bruce Richardson <bruce.richard...@intel.com> > > > --- > > > doc/guides/rel_notes/deprecation.rst | 6 ++++++ > > > 1 file changed, 6 insertions(+) > > > > > > diff --git a/doc/guides/rel_notes/deprecation.rst > > > b/doc/guides/rel_notes/deprecation.rst > > > index dcc1ca1696..9a391d2c49 100644 > > > --- a/doc/guides/rel_notes/deprecation.rst > > > +++ b/doc/guides/rel_notes/deprecation.rst > > > @@ -11,6 +11,12 @@ here. > > > Deprecation Notices > > > ------------------- > > > > > > +* C Compiler: From DPDK 23.11 onwards, > > > + building DPDK will require a C compiler which supports the C11 > > > standard, or later. > > > + Please note: > > > + - C11 is supported from GCC version 5 onwards, and is the default > > > language version in that release > > > + - C11 is the default compilation mode in Clang from version 3.6 > > > + > > > * kvargs: The function ``rte_kvargs_process`` will get a new parameter > > > for returning key match count. It will ease handling of no-match case. > > > > > > > This only applies to DPDK internals, right? > > Application linked with DPDK library won't have this requirement, > > meaning DPDK public headers won't rely on C99 and C11 features. > > > No, AFAIK, that is not correct. Originally I had thought that that would be > the case - hence the special-case tests for the headers in my previous C99 > patch - but the consensus at the DPDK techboard was that we won't require > all headers to remain C89 compatible. >
this is my recollection as well, everything is being aligned to C11, which is why we are waiting for 23.11 release before the changes can come in. > Originally, I was unsure about this, but now I agree with this position, on > the basis that since GCC 5, unless you have been explicitly requesting an > older standard, the compiler is using C11 rules. Therefore, everyone using > these later GCC versions is already using C11+. > > /Bruce