Skip to content

make: use -std=c99 as default#5824

Merged
OlegHahm merged 6 commits intoRIOT-OS:masterfrom
kaspar030:change_default_c_dialect
Dec 8, 2016
Merged

make: use -std=c99 as default#5824
OlegHahm merged 6 commits intoRIOT-OS:masterfrom
kaspar030:change_default_c_dialect

Conversation

@kaspar030
Copy link
Copy Markdown
Contributor

Previously, the fallback was "gnu99", but we don't allow GNU extensions by convention.

@kaspar030 kaspar030 added Area: build system Area: Build system Discussion: RFC The issue/PR is used as a discussion starting point about the item of the issue/PR CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Sep 5, 2016
@kaspar030 kaspar030 mentioned this pull request Sep 5, 2016
@Kijewski
Copy link
Copy Markdown
Contributor

Kijewski commented Sep 6, 2016

NACK because the code is full of GNU extensions ...

@Kijewski Kijewski added the Process: API change Integration Process: PR contains or issue proposes an API change. Should be handled with care. label Sep 6, 2016
@kaspar030
Copy link
Copy Markdown
Contributor Author

NACK because the code is full of GNU extensions ...

Apart from the ones fixed by this PR, where?

@Kijewski
Copy link
Copy Markdown
Contributor

Kijewski commented Sep 6, 2016

E.g. git grep __extension__, git grep '({', git grep typeof'.

@kaspar030
Copy link
Copy Markdown
Contributor Author

"full of" is a little bit exaggerated.

E.g. git grep extension, git grep '({', git grep typeof'.

The former is used in "kernel_defines.h", but guarded. Keep in mind that gcc sets "GNUC" also for "-std=c99".

The latter is used for the x86 port. That could still compile with "-std=gnu99", like this PR sets for native.

Don't you think it is desirable to not use the extensions where not needed? This PR is about setting the default...

@Kijewski
Copy link
Copy Markdown
Contributor

Kijewski commented Sep 9, 2016

Though I like the GNU extensions, because IMO they allow you to write more readable code in some cases, I won't get a rage fit if this PR gets adopted. And finding two core developers who like this "restriction" should not be too difficult, I guess.

Copy link
Copy Markdown
Contributor

@Kijewski Kijewski left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NACK because the code is full of GNU extensions ...

I guess Murdock proved me wrong. I'm OK with this change. ACK.

@kaspar030 kaspar030 force-pushed the change_default_c_dialect branch from 6b720f7 to 1f70e65 Compare November 15, 2016 13:59
@kaspar030
Copy link
Copy Markdown
Contributor Author

  • rebased (to see if this still builds cleanly)

@kaspar030
Copy link
Copy Markdown
Contributor Author

@ALL Any opinions on this?

@kaspar030
Copy link
Copy Markdown
Contributor Author

I'll leave this open for two more days and then merge if noone complains.

@LudwigKnuepfer
Copy link
Copy Markdown
Member

@kaspar030 second thoughts?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: build system Area: Build system CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Discussion: RFC The issue/PR is used as a discussion starting point about the item of the issue/PR Process: API change Integration Process: PR contains or issue proposes an API change. Should be handled with care.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants