From fb81858c96772ef2c9f64997a13ba4b8a3356bfd Mon Sep 17 00:00:00 2001 From: David Garcia Quintas Date: Fri, 15 Jul 2016 08:05:07 -0700 Subject: Forbade atexit() --- doc/c-style-guide.md | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) (limited to 'doc/c-style-guide.md') diff --git a/doc/c-style-guide.md b/doc/c-style-guide.md index 517f60a219..369bd56a46 100644 --- a/doc/c-style-guide.md +++ b/doc/c-style-guide.md @@ -17,7 +17,7 @@ Header Files ------------ - Public header files (those in the include/grpc tree) should compile as - pedantic C89 + pedantic C89. - Public header files should be includable from C++ programs. That is, they should include the following: ```c @@ -52,10 +52,10 @@ initialize them to `NULL`. C99 Features ------------ -- Variable sized arrays are not allowed -- Do not use the 'inline' keyword +- Variable sized arrays are not allowed. +- Do not use the 'inline' keyword. - Flexible array members are allowed - (https://en.wikipedia.org/wiki/Flexible_array_member) + (https://en.wikipedia.org/wiki/Flexible_array_member). Comments -------- @@ -70,7 +70,15 @@ ALL comments within that file must be single line comments). Symbol Names ------------ -- Non-static functions must be prefixed by grpc_ -- static functions must not be prefixed by grpc_ -- enumeration values and #define names are uppercased, all others are lowercased -- Multiple word identifiers use underscore as a delimiter (NEVER camel casing) +- Non-static functions must be prefixed by `grpc_` +- Static functions must *not* be prefixed by `grpc_` +- Enumeration values and `#define` names must be uppercase. All other values + must be lowercase. +- Multiple word identifiers use underscore as a delimiter, *never* camel + case. E.g. `variable_name`. + +Functions +---------- + +- The use of [`atexit()`](http://man7.org/linux/man-pages/man3/atexit.3.html) is + in forbidden in libgrpc. -- cgit v1.2.3