Re: [PATCH 02/47] IB/cm: Suppress gcc 7 fall-through complaints

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 10, 2017 at 03:27:11PM -0400, Dennis Dalessandro wrote:
> On 10/6/2017 5:32 PM, Bart Van Assche wrote:
> > Avoid that gcc 7 reports the following warning when building with W=1:
> >
> > warning: this statement may fall through [-Wimplicit-fallthrough=]
> >
> > Signed-off-by: Bart Van Assche <bart.vanassche@xxxxxxx>
> > Cc: Sean Hefty <sean.hefty@xxxxxxxxx>
> > ---
> >   drivers/infiniband/core/cm.c | 1 +
> >   1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/infiniband/core/cm.c b/drivers/infiniband/core/cm.c
> > index d80911d4abb7..5927ee4e57ca 100644
> > --- a/drivers/infiniband/core/cm.c
> > +++ b/drivers/infiniband/core/cm.c
> > @@ -2808,6 +2808,7 @@ int ib_send_cm_mra(struct ib_cm_id *cm_id,
> >   			msg_response = CM_MSG_RESPONSE_OTHER;
> >   			break;
> >   		}
> > +		/* fall through */
> >   	default:
> >   		ret = -EINVAL;
> >   		goto error1;
> >
>
> So adding the comment is enough to make gcc shut up? Or are you just
> annotating the code so it's obvious it was intentional?

GCC is looking for the specific comment.
---
-Wimplicit-fallthrough warns when a switch case falls through.
This warning has five different levels. The compiler is able to parse a wide range of fallthrough comments,
depending on the level. It also handles control-flow statements, such as ifs.
It's possible to suppress the warning by either adding a fallthrough comment,
or by using a null statement: __attribute__ ((fallthrough)); (C, C++),
or [[fallthrough]]; (C++17), or [[gnu::fallthrough]]; (C++11/C++14).
---
https://gcc.gnu.org/gcc-7/changes.html

Thanks

>
> -Dennis
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux