-Wreturn-type and -Wredundant-move reminders
Hi devs, A reminder about this common idiom: switch (...) { case Foo: return ...; case Bar: return ...; } RELEASE_ASSERT_NOT_REACHED(); When it's intended that the code always returns inside the switch statement, the RELEASE_ASSERT_NOT_REACHED() is required to avoid tripping GCC's -Wreturn-type. If you forget it, I or somebody else will wind up adding it later to avoid the warning. Clang does not warn here, and this is the most common type of warning I clean up, so please don't forget! :) This warning is useful in other situations, and it seems nicer to placate GCC than to disable it. I'll sneak in another reminder: "return WTFMove()" is almost always not needed. Clang warns only if the move prevents return value optimization, but GCC will always warn if it detects the move is unneeded. Have a nice day, Michael
On Oct 19, 2021, at 1:15 PM, Michael Catanzaro via webkit-dev <webkit-dev@lists.webkit.org> wrote:
Hi devs,
A reminder about this common idiom:
switch (...) { case Foo: return ...; case Bar: return ...; } RELEASE_ASSERT_NOT_REACHED();
When it's intended that the code always returns inside the switch statement, the RELEASE_ASSERT_NOT_REACHED() is required to avoid tripping GCC's -Wreturn-type. If you forget it, I or somebody else will wind up adding it later to avoid the warning. Clang does not warn here, and this is the most common type of warning I clean up, so please don't forget! :) This warning is useful in other situations, and it seems nicer to placate GCC than to disable it.
I'll sneak in another reminder: "return WTFMove()" is almost always not needed. Clang warns only if the move prevents return value optimization, but GCC will always warn if it detects the move is unneeded.
Will GTK/WPE EWS catch these errors?
Have a nice day,
Michael
_______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-dev
On Fri, Oct 29 2021 at 03:06:17 PM -0700, Myles Maxfield <mmaxfield@apple.com> wrote:
Will GTK/WPE EWS catch these errors?
Currently no, but they will once we solve https://bugs.webkit.org/show_bug.cgi?id=155047.
participants (2)
-
Michael Catanzaro
-
Myles Maxfield