From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754187AbdBRUvV (ORCPT ); Sat, 18 Feb 2017 15:51:21 -0500 Received: from smtprelay0252.hostedemail.com ([216.40.44.252]:33273 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753537AbdBRUvT (ORCPT ); Sat, 18 Feb 2017 15:51:19 -0500 X-Session-Marker: 6A6F6540706572636865732E636F6D X-Spam-Summary: 2,0,0,,d41d8cd98f00b204,joe@perches.com,:::::::::::,RULES_HIT:41:355:379:541:599:973:988:989:1260:1277:1311:1313:1314:1345:1359:1373:1437:1515:1516:1518:1534:1540:1593:1594:1711:1730:1747:1777:1792:2194:2199:2393:2553:2559:2562:2828:3138:3139:3140:3141:3142:3352:3622:3865:3867:3868:3871:3872:4321:4384:4605:5007:7875:7903:8957:10004:10400:10848:11232:11658:11914:12043:12740:12760:12895:13069:13311:13357:13439:14659:21080:30054:30090:30091,0,RBL:none,CacheIP:none,Bayesian:0.5,0.5,0.5,Netcheck:none,DomainCache:0,MSF:not bulk,SPF:fn,MSBL:0,DNSBL:none,Custom_rules:0:0:0,LFtime:1,LUA_SUMMARY:none X-HE-Tag: lamp41_b31b13d45e4d X-Filterd-Recvd-Size: 1650 Message-ID: <1487451075.2198.29.camel@perches.com> Subject: Re: [PATCH 1/6] staging: vt6655: Compress return logic From: Joe Perches To: simran singhal , forest@alittletooquiet.net Cc: gregkh@linuxfoundation.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, outreachy-kernel@googlegroups.com Date: Sat, 18 Feb 2017 12:51:15 -0800 In-Reply-To: <20170218202056.GA3995@singhal-Inspiron-5558> References: <20170218202056.GA3995@singhal-Inspiron-5558> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.22.3-0ubuntu0.1 Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 2017-02-19 at 01:50 +0530, simran singhal wrote: > Simplify function returns by merging assignment and return into > one command line. > Found with Coccinelle > @@ > local idexpression ret; > expression e; > @@ > > -ret = > +return > e; > -return ret; [] > diff --git a/drivers/staging/vt6655/card.c b/drivers/staging/vt6655/card.c [] > @@ -920,7 +920,7 @@ u64 CARDqGetTSFOffset(unsigned char byRxRate, u64 qwTSF1, u64 qwTSF2) > > qwTSFOffset = qwTSF1 - qwTSF2; > > - return qwTSFOffset; > + return qwTSF1 - qwTSF2; > } It's not a problem here but generically, this transformation may introduce defects when the local idexpression being assigned to is a smaller type than the return type. e.g.: u64 foo(u64 a, u64 b) { u8 bar = a - b; return bar; }