From c9014a0df63932eacc402990ca86ee945bef4c0b Mon Sep 17 00:00:00 2001 From: Andrea Bolognani Date: Mon, 2 Nov 2015 12:12:22 +0100 Subject: [PATCH] syntax-check: Add prohibit_space_in_label rule This guards against code such as cleanup : which is happily accepted by the compiler but does not conform to our style guidelines. --- cfg.mk | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cfg.mk b/cfg.mk index db513be730..fd9fd75ae5 100644 --- a/cfg.mk +++ b/cfg.mk @@ -919,6 +919,15 @@ sc_require_space_before_label: halt="Top-level labels should be indented by one space" \ $(_sc_search_regexp) +# Allow for up to three spaces before the label: this is to avoid running +# into situations where neither this rule nor require_space_before_label +# would apply, eg. a line matching ^[a-zA-Z0-9]+ :$ +sc_prohibit_space_in_label: + @prohibit='^ {0,3}[_a-zA-Z0-9]+ +:$$' \ + in_vc_files='\.[ch]$$' \ + halt="There should be no space between label name and colon" \ + $(_sc_search_regexp) + # Doesn't catch all cases of mismatched braces across if-else, but it helps sc_require_if_else_matching_braces: @prohibit='( else( if .*\))? {|} else( if .*\))?$$)' \