Ceva we just added this week also supports C99, so we just need to check
avr, misoc, or1k, z16 and z80.

On Sat, Jan 8, 2022 at 1:35 PM Petro Karashchenko <
petro.karashche...@gmail.com> wrote:

> In addition I just checked latest GCC with HC12 support is 3.0.4 version.
> It have C99 integrated. Will check with AVR32, but will probably need some
> help with others.
>
> Best regards,
> Petro
>
> On Sat, Jan 8, 2022, 7:15 AM Petro Karashchenko <
> petro.karashche...@gmail.com> wrote:
>
> > Hi,
> >
> > What about inline functions? Those are also a part on C99.
> >
> > Are those old architectures checked by the CI? I mean do we have a proof
> > that those are still compilable with the latest release?
> >
> > Best regards,
> > Petro
> >
> > On Sat, Jan 8, 2022, 6:37 AM Xiang Xiao <xiaoxiang781...@gmail.com>
> wrote:
> >
> >>
> >>
> >> On Sat, Jan 8, 2022 at 6:29 AM Petro Karashchenko <
> >> petro.karashche...@gmail.com> wrote:
> >>
> >>> Hello team,
> >>>
> >>> Recently I mr. @Xiang Xiao <xiaoxiang781...@gmail.com> had a
> discussion
> >>> in one of the PR's related to C89 code compliance. Particularly
> related to
> >>> initializing a structure by field names (designated initializers). Mr.
> @Xiang
> >>> Xiao <xiaoxiang781...@gmail.com> pointed out that "for the common code
> >>> it is better to avoid C99 only features".
> >>> I examined the current NuttX code and see that currently common code is
> >>> far away from C89 already and things like "<stdbool.h>",
> "<inttypes.h>",
> >>> "snprintf", "designated initializers", "__VA_ARGS__" (variadic macro)
> are
> >>> deeply embedded into the code.
> >>>
> >>>
> >> We need separate the features that come from the compiler and the
> >> standard library. Since the libc is provided by NuttX self:
> >>
> >>    1. The header files(e.g.stdbool.h, intttyes.h) and function(e.g.
> >>    snprintf) can be used in common code since NuttX can provide the
> >>    implementation for all arch even the arch use a very old compiler
> >>    2. The preprocessor (e.g.  __VA_ARGS__) or language( designated
> >>    initializers) feature need to avoid or incorporate into the
> conditional
> >>    macro
> >>
> >> .
> >>
> >>> I would like to come up with the suggestion to make C99 as a
> >>> prerequisite for the compiler that is used to build NuttX code.
> >>>
> >>
> >> As Greg said, if compilers used on all arch supported by NuttX support
> >> C99, there is no reason to limit us to C89. The compiler status is a
> >> keypoint.
> >>
> >>
> >>>
> >>> Best regards,
> >>> Petro
> >>>
> >>>
>

Reply via email to