diff mbox series

scsi: FlashPoint: Remove unnecessary parentheses

Message ID 20180920211032.21840-1-natechancellor@gmail.com (mailing list archive)
State Accepted
Headers show
Series scsi: FlashPoint: Remove unnecessary parentheses | expand

Commit Message

Nathan Chancellor Sept. 20, 2018, 9:10 p.m. UTC
Clang warns when multiple pairs of parentheses are used for a single
conditional statement.

In file included from drivers/scsi/BusLogic.c:57:
drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
                                if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
                                     ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
drivers/scsi/FlashPoint.c:2947:34: note: remove extraneous parentheses around the comparison to silence this warning
                                if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
                                    ~                        ^              ~
drivers/scsi/FlashPoint.c:2947:34: note: use '=' to turn this equality comparison into an assignment
                                if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
                                                             ^~
                                                             =
drivers/scsi/FlashPoint.c:2956:39: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
                                else if ((currSCCB->Sccb_scsistat ==
                                          ~~~~~~~~~~~~~~~~~~~~~~~~^~
drivers/scsi/FlashPoint.c:2956:39: note: remove extraneous parentheses around the comparison to silence this warning
                                else if ((currSCCB->Sccb_scsistat ==
                                         ~                        ^
drivers/scsi/FlashPoint.c:2956:39: note: use '=' to turn this equality comparison into an assignment
                                else if ((currSCCB->Sccb_scsistat ==
                                                                  ^~
                                                                  =
2 warnings generated.

Link: https://github.com/ClangBuiltLinux/linux/issues/156
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
---
 drivers/scsi/FlashPoint.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Khalid Aziz Sept. 21, 2018, 3:19 p.m. UTC | #1
On 09/20/2018 03:10 PM, Nathan Chancellor wrote:
> Clang warns when multiple pairs of parentheses are used for a single
> conditional statement.
> 
> In file included from drivers/scsi/BusLogic.c:57:
> drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
>                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
>                                      ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> drivers/scsi/FlashPoint.c:2947:34: note: remove extraneous parentheses around the comparison to silence this warning
>                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
>                                     ~                        ^              ~
> drivers/scsi/FlashPoint.c:2947:34: note: use '=' to turn this equality comparison into an assignment
>                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
>                                                              ^~
>                                                              =
> drivers/scsi/FlashPoint.c:2956:39: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
>                                 else if ((currSCCB->Sccb_scsistat ==
>                                           ~~~~~~~~~~~~~~~~~~~~~~~~^~
> drivers/scsi/FlashPoint.c:2956:39: note: remove extraneous parentheses around the comparison to silence this warning
>                                 else if ((currSCCB->Sccb_scsistat ==
>                                          ~                        ^
> drivers/scsi/FlashPoint.c:2956:39: note: use '=' to turn this equality comparison into an assignment
>                                 else if ((currSCCB->Sccb_scsistat ==
>                                                                   ^~
>                                                                   =
> 2 warnings generated.
> 
> Link: https://github.com/ClangBuiltLinux/linux/issues/156
> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
> ---
>  drivers/scsi/FlashPoint.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 

There are more places in this file with extraneous parentheses, for example:

 952         if ((RD_HARPOON(ioport + hp_vendor_id_1) != ORION_VEND_1))
 953                 return (int)FAILURE;
 954
 955         if ((RD_HARPOON(ioport + hp_device_id_0) != ORION_DEV_0))
 956                 return (int)FAILURE;
 957
 958         if ((RD_HARPOON(ioport + hp_device_id_1) != ORION_DEV_1))

Wonder why the compiler does not complain about these, but this patch is
good for now. I will clean up the rest in another patch.

James, Martin, please pull this patch into the scsi tree.

Acked-by: Khalid Aziz <khalid@gonehiking.org>
Nathan Chancellor Sept. 21, 2018, 6:17 p.m. UTC | #2
On Fri, Sep 21, 2018 at 09:19:40AM -0600, Khalid Aziz wrote:
> On 09/20/2018 03:10 PM, Nathan Chancellor wrote:
> > Clang warns when multiple pairs of parentheses are used for a single
> > conditional statement.
> > 
> > In file included from drivers/scsi/BusLogic.c:57:
> > drivers/scsi/FlashPoint.c:2947:34: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
> >                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
> >                                      ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> > drivers/scsi/FlashPoint.c:2947:34: note: remove extraneous parentheses around the comparison to silence this warning
> >                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
> >                                     ~                        ^              ~
> > drivers/scsi/FlashPoint.c:2947:34: note: use '=' to turn this equality comparison into an assignment
> >                                 if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
> >                                                              ^~
> >                                                              =
> > drivers/scsi/FlashPoint.c:2956:39: warning: equality comparison with extraneous parentheses [-Wparentheses-equality]
> >                                 else if ((currSCCB->Sccb_scsistat ==
> >                                           ~~~~~~~~~~~~~~~~~~~~~~~~^~
> > drivers/scsi/FlashPoint.c:2956:39: note: remove extraneous parentheses around the comparison to silence this warning
> >                                 else if ((currSCCB->Sccb_scsistat ==
> >                                          ~                        ^
> > drivers/scsi/FlashPoint.c:2956:39: note: use '=' to turn this equality comparison into an assignment
> >                                 else if ((currSCCB->Sccb_scsistat ==
> >                                                                   ^~
> >                                                                   =
> > 2 warnings generated.
> > 
> > Link: https://github.com/ClangBuiltLinux/linux/issues/156
> > Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
> > ---
> >  drivers/scsi/FlashPoint.c | 6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> 
> There are more places in this file with extraneous parentheses, for example:
> 
>  952         if ((RD_HARPOON(ioport + hp_vendor_id_1) != ORION_VEND_1))
>  953                 return (int)FAILURE;
>  954
>  955         if ((RD_HARPOON(ioport + hp_device_id_0) != ORION_DEV_0))
>  956                 return (int)FAILURE;
>  957
>  958         if ((RD_HARPOON(ioport + hp_device_id_1) != ORION_DEV_1))
> 
> Wonder why the compiler does not complain about these, but this patch is
> good for now. I will clean up the rest in another patch.
> 
> James, Martin, please pull this patch into the scsi tree.
> 
> Acked-by: Khalid Aziz <khalid@gonehiking.org>

Hi Khalid,

Clang only warns about this construct when the left hand is a variable
because it thinks that an assignment may have been intended so macros
and functions don't trigger it.

Thank you for the review, I appreciate it,
Nathan
Martin K. Petersen Sept. 26, 2018, 12:47 a.m. UTC | #3
Nathan,

> Clang warns when multiple pairs of parentheses are used for a single
> conditional statement.

Applied to 4.20/scsi-queue, thanks!
diff mbox series

Patch

diff --git a/drivers/scsi/FlashPoint.c b/drivers/scsi/FlashPoint.c
index 867b864f5047..0f17bd51088a 100644
--- a/drivers/scsi/FlashPoint.c
+++ b/drivers/scsi/FlashPoint.c
@@ -2944,7 +2944,7 @@  static void FPT_sdecm(unsigned char message, u32 port, unsigned char p_card)
 			}
 
 			if (currSCCB->Lun == 0x00) {
-				if ((currSCCB->Sccb_scsistat == SELECT_SN_ST)) {
+				if (currSCCB->Sccb_scsistat == SELECT_SN_ST) {
 
 					currTar_Info->TarStatus |=
 					    (unsigned char)SYNC_SUPPORTED;
@@ -2953,8 +2953,8 @@  static void FPT_sdecm(unsigned char message, u32 port, unsigned char p_card)
 					    ~EE_SYNC_MASK;
 				}
 
-				else if ((currSCCB->Sccb_scsistat ==
-					  SELECT_WN_ST)) {
+				else if (currSCCB->Sccb_scsistat ==
+					  SELECT_WN_ST) {
 
 					currTar_Info->TarStatus =
 					    (currTar_Info->