Skip to content

C99/C++03 standard compliance #2152

Closed
Closed
@geky

Description

@geky

Currently, there are no barriers in place for using compiler extensions. This makes it difficult to know when code is inherently unportable. Allowing compiler extensions hurts reproducibility across toolchains.

From previous discussions these appear to be our target standards:

  • C99
  • C++03 (C++11 is unsupported in IAR)

Here is a quick checklist of what is needed to bring mbed up to compliance:

  • strict c99/c++03 flags in gcc
  • strict c99/c++03 flags in armc5
  • strict c99/c++03 flags in iar
  • compile in gcc
  • compile in armc5
  • compile in iar
  • warning free in gcc
  • warning free in armc5
  • warning free in iar

Previous issue: #241

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions