Fix -Wimplicit-fallthrough warnings from GCC 8

Adds `FALLTHROUGH` macro to specify when a fallthrough is intentional.
Can be replaced by `[[fallthrough]]` if/when we switch to C++17.

The warning is now enabled by default for GCC on `extra` warnings level
(part of GCC's `-Wextra`). It's not enabled in Clang's `-Wextra` yet,
but we could enable it manually once we switch to C++11. There's no
equivalent feature in MSVC for now.

Fixes #26135.
This commit is contained in:
Rémi Verschelde
2019-04-05 14:06:16 +02:00
parent e4a96164b6
commit fc370b3feb
18 changed files with 82 additions and 67 deletions

View File

@@ -1900,7 +1900,8 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
break;
}
} // fallthrough
FALLTHROUGH;
}
case SCENE_TAB_CLOSE:
case FILE_SAVE_SCENE: {
@@ -1919,8 +1920,8 @@ void EditorNode::_menu_option_confirm(int p_option, bool p_confirmed) {
break;
}
// fallthrough to save_as
};
FALLTHROUGH;
}
case FILE_SAVE_AS_SCENE: {
int scene_idx = (p_option == FILE_SAVE_SCENE || p_option == FILE_SAVE_AS_SCENE) ? -1 : tab_closing;