CodingGuidelines: mention "static" and "extern"

It perhaps goes without saying that file-local stuff should be marked static, but it does not hurt to remind people. Less obvious is that we are settling on "do not include extern in function declarations". It is already the default unless the function was previously declared static (but if you are following a static declaration with an unmarked one, you should think about why you are declaring the thing twice). And so it just becomes an extra noise-word in our header files. We used to give the opposite advice, so there are quite a few "extern" markers in early Git code. But this at least makes a concrete suggestion that we can follow going forward. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Jeff King committed Feb 8, 2018 at 16:38 UTC 89a9f2c862db52d99e4dd78e799f4b36dac597ac
1 file changed +5
Documentation/CodingGuidelines
+5
@@ -386,6 +386,11 @@ For C programs:
386 - Use Git's gettext wrappers to make the user interface
387 translatable. See "Marking strings for translation" in po/README.
388
389 + - Variables and functions local to a given source file should be marked
390 + with "static". Variables that are visible to other source files
391 + must be declared with "extern" in header files. However, function
392 + declarations should not use "extern", as that is already the default.
393 +
394 For Perl programs:
395
396 - Most of the C guidelines above apply.