diff options
author | Ben Pfaff <blp@nicira.com> | 2010-11-10 09:39:27 -0800 |
---|---|---|
committer | Ben Pfaff <blp@nicira.com> | 2010-11-10 10:55:10 -0800 |
commit | c214278b0d0e9b574a1f505f14a47d3d8d81aea1 (patch) | |
tree | 99193ec768d893be2548d214c1d0e5fe66c5a8f6 /CodingStyle | |
parent | 14c3b13622af672ca0868dcab4e0e4c591dd70fb (diff) |
CodingStyle: Clarify C dialect section and add rationale.
Requested-by: Ethan Jackson <ethan@nicira.com>
Diffstat (limited to 'CodingStyle')
-rw-r--r-- | CodingStyle | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/CodingStyle b/CodingStyle index 2ee189fa..b0aeb4e6 100644 --- a/CodingStyle +++ b/CodingStyle @@ -474,9 +474,8 @@ global variables. C DIALECT - Try to avoid using GCC extensions where possible. - - Some C99 extensions are OK: + Some C99 features are OK because they are widely implemented even in +older compilers: * Flexible array members (e.g. struct { int foo[]; }). @@ -491,9 +490,8 @@ C DIALECT only take on the values 0 or 1, because this behavior can't be simulated on C89 compilers. - Don't use other C99 extensions, and especially: - - * Don't use // comments. + Don't use other C99 features that are not widely implemented in +older compilers: * Don't use designated initializers (e.g. don't write "struct foo foo = {.a = 1};" or "int a[] = {[2] = 5};"). @@ -505,3 +503,10 @@ C DIALECT * Don't put a trailing comma in an enum declaration (e.g. don't write "enum { x = 1, };"). + + As a matter of style, avoid // comments. + + Avoid using GCC extensions unless you also add a fallback for +non-GCC compilers. You can, however, use GCC extensions and C99 +features in code that compiles only on GNU/Linux (such as +lib/netdev-linux.c), because GCC is the system compiler there. |