From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A64E6C433E7 for ; Sun, 18 Oct 2020 19:49:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 7558720714 for ; Sun, 18 Oct 2020 19:49:37 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387804AbgJRTtg (ORCPT ); Sun, 18 Oct 2020 15:49:36 -0400 Received: from smtprelay0162.hostedemail.com ([216.40.44.162]:34524 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729758AbgJRTt3 (ORCPT ); Sun, 18 Oct 2020 15:49:29 -0400 Received: from filter.hostedemail.com (clb03-v110.bra.tucows.net [216.40.38.60]) by smtprelay02.hostedemail.com (Postfix) with ESMTP id 805F012E9; Sun, 18 Oct 2020 19:49:28 +0000 (UTC) X-Session-Marker: 6A6F6540706572636865732E636F6D X-HE-Tag: pot35_22082b127231 X-Filterd-Recvd-Size: 2009 Received: from XPS-9350.home (unknown [47.151.133.149]) (Authenticated sender: joe@perches.com) by omf02.hostedemail.com (Postfix) with ESMTPA; Sun, 18 Oct 2020 19:49:27 +0000 (UTC) Message-ID: Subject: [PATCH] checkpatch: Allow --fix removal of unnecessary break statements From: Joe Perches To: Andrew Morton Cc: Julia Lawall , trix@redhat.com, linux-kernel@vger.kernel.org, cocci Date: Sun, 18 Oct 2020 12:49:26 -0700 In-Reply-To: References: <20201017160928.12698-1-trix@redhat.com> Content-Type: text/plain; charset="ISO-8859-1" User-Agent: Evolution 3.36.4-0ubuntu1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org switch/case use of break after a return or goto is unnecessary. There is an existing warning for these uses, so add a --fix option too. Signed-off-by: Joe Perches --- For today's next, this would remove ~300 instances like: case FOO: return bar; break; or case FOO: goto bar; break; scripts/checkpatch.pl | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index fab38b493cef..22263b278e87 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -3678,8 +3678,11 @@ sub process { if ($sline =~ /^\+([\t]+)break\s*;\s*$/) { my $tabs = $1; if ($prevline =~ /^\+$tabs(?:goto|return)\b/) { - WARN("UNNECESSARY_BREAK", - "break is not useful after a goto or return\n" . $hereprev); + if (WARN("UNNECESSARY_BREAK", + "break is not useful after a goto or return\n" . $hereprev) && + $fix) { + fix_delete_line($fixlinenr, $rawline); + } } }