diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 4680ccf7760c4c96c1ec6358a40e21dd04f1b0a1..c479bdefc77986a8a182257f95cc130342e2bab0 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -1468,6 +1468,12 @@ sub process { while ($cond_ptr != $cond_lines) { $cond_ptr = $cond_lines; + # If we see an #else/#elif then the code + # is not linear. + if ($s =~ /^\s*\#\s*(?:else|elif)/) { + $check = 0; + } + # Ignore: # 1) blank lines, they should be at 0, # 2) preprocessor lines, and