diff options
19 files changed, 71 insertions, 43 deletions
diff --git a/src/libs/3rdparty/cplusplus/Parser.cpp b/src/libs/3rdparty/cplusplus/Parser.cpp index 16f351077a1..3547041212e 100644 --- a/src/libs/3rdparty/cplusplus/Parser.cpp +++ b/src/libs/3rdparty/cplusplus/Parser.cpp @@ -2565,7 +2565,7 @@ bool Parser::parseMemberSpecification(DeclarationAST *&node, ClassSpecifierAST * case T_STATIC_ASSERT: if (_languageFeatures.cxx11Enabled) CACHE_AND_RETURN(cacheKey, parseStaticAssertDeclaration(node)); - // fall-through + Q_FALLTHROUGH(); default: CACHE_AND_RETURN(cacheKey, parseSimpleDeclaration(node, declaringClass)); @@ -3830,7 +3830,7 @@ bool Parser::parseBlockDeclaration(DeclarationAST *&node) case T_STATIC_ASSERT: if (_languageFeatures.cxx11Enabled) return parseStaticAssertDeclaration(node); - // fall-through + Q_FALLTHROUGH(); default: return parseSimpleDeclaration(node); @@ -3914,7 +3914,7 @@ bool Parser::lookAtStorageClassSpecifier() const case T_CONSTEXPR: if (_languageFeatures.cxx11Enabled) return true; - // fall-through + Q_FALLTHROUGH(); default: return false; } @@ -4514,7 +4514,7 @@ bool Parser::parsePrimaryExpression(ExpressionAST *&node) case T_NULLPTR: if (_languageFeatures.cxx11Enabled) return parsePointerLiteral(node); - // fall-through + Q_FALLTHROUGH(); case T_CHAR_LITERAL: // ### FIXME don't use NumericLiteral for chars case T_WIDE_CHAR_LITERAL: diff --git a/src/libs/qmljs/parser/qmljslexer.cpp b/src/libs/qmljs/parser/qmljslexer.cpp index d24920e24d9..0fa9c748052 100644 --- a/src/libs/qmljs/parser/qmljslexer.cpp +++ b/src/libs/qmljs/parser/qmljslexer.cpp @@ -754,7 +754,7 @@ again: u = QLatin1Char('\0'); break; } - // fall through + Q_FALLTHROUGH(); case '1': case '2': case '3': diff --git a/src/libs/qmljs/qmljscodeformatter.cpp b/src/libs/qmljs/qmljscodeformatter.cpp index 5d974d735b0..8c34cdc4acb 100644 --- a/src/libs/qmljs/qmljscodeformatter.cpp +++ b/src/libs/qmljs/qmljscodeformatter.cpp @@ -278,7 +278,7 @@ void CodeFormatter::recalculateStateAfter(const QTextBlock &block) enter(expression_continuation); break; } - // fallthrough + Q_FALLTHROUGH(); case ternary_op_after_colon: case expression: if (tryInsideExpression()) @@ -1142,7 +1142,7 @@ void QtStyleCodeFormatter::onEnter(int newState, int *indentDepth, int *savedInd *savedIndentDepth = parentState.savedIndentDepth; break; } - // fallthrough + Q_FALLTHROUGH(); case substatement_open: // special case for "foo: {" and "property int foo: {" if (parentState.type == binding_assignment) diff --git a/src/libs/qmljs/qmljsevaluate.cpp b/src/libs/qmljs/qmljsevaluate.cpp index 0659ee8fb19..26ba2e56b5b 100644 --- a/src/libs/qmljs/qmljsevaluate.cpp +++ b/src/libs/qmljs/qmljsevaluate.cpp @@ -444,7 +444,7 @@ bool Evaluate::visit(AST::BinaryExpression *ast) //case QSOperator::And: // ### enable once implemented below //case QSOperator::Or: lhs = value(ast->left); - // fallthrough + Q_FALLTHROUGH(); case QSOperator::Assign: rhs = value(ast->right); break; diff --git a/src/libs/qmljs/qmljsmodelmanagerinterface.cpp b/src/libs/qmljs/qmljsmodelmanagerinterface.cpp index 74fa69d8c90..b14bd39a52b 100644 --- a/src/libs/qmljs/qmljsmodelmanagerinterface.cpp +++ b/src/libs/qmljs/qmljsmodelmanagerinterface.cpp @@ -37,6 +37,7 @@ #include <cplusplus/cppmodelmanagerbase.h> #include <utils/algorithm.h> #include <utils/hostosinfo.h> +#include <utils/qtcfallthrough.h> #include <utils/runextensions.h> #include <QDir> @@ -1391,7 +1392,7 @@ ViewerContext ModelManagerInterface::completeVContext(const ViewerContext &vCtx, break; case ViewerContext::AddAllPathsAndDefaultSelectors: res.selectors.append(defaultVCtx.selectors); - // fallthrough + Q_FALLTHROUGH(); case ViewerContext::AddAllPaths: { foreach (const QString &path, defaultVCtx.paths) @@ -1400,10 +1401,10 @@ ViewerContext ModelManagerInterface::completeVContext(const ViewerContext &vCtx, case Dialect::AnyLanguage: case Dialect::Qml: res.maybeAddPath(info.qtQmlPath); - // fallthrough + Q_FALLTHROUGH(); case Dialect::QmlQtQuick1: res.maybeAddPath(info.qtImportsPath); - // fallthrough + Q_FALLTHROUGH(); case Dialect::QmlQtQuick2: case Dialect::QmlQtQuick2Ui: { @@ -1439,7 +1440,7 @@ ViewerContext ModelManagerInterface::completeVContext(const ViewerContext &vCtx, } case ViewerContext::AddDefaultPathsAndSelectors: res.selectors.append(defaultVCtx.selectors); - // fallthrough + Q_FALLTHROUGH(); case ViewerContext::AddDefaultPaths: foreach (const QString &path, defaultVCtx.paths) res.maybeAddPath(path); diff --git a/src/libs/ssh/sshchannelmanager.cpp b/src/libs/ssh/sshchannelmanager.cpp index 364d1dcfe24..589cdab73bd 100644 --- a/src/libs/ssh/sshchannelmanager.cpp +++ b/src/libs/ssh/sshchannelmanager.cpp @@ -266,7 +266,7 @@ SshTcpIpForwardServer::Ptr SshChannelManager::createForwardServer(const QString switch (state) { case SshTcpIpForwardServer::Closing: m_listeningForwardServers.removeOne(server); - // fall through + Q_FALLTHROUGH(); case SshTcpIpForwardServer::Initializing: m_waitingForwardServers.append(server); break; diff --git a/src/libs/ssh/sshconnection.cpp b/src/libs/ssh/sshconnection.cpp index e1f98da06dc..efcded094c4 100644 --- a/src/libs/ssh/sshconnection.cpp +++ b/src/libs/ssh/sshconnection.cpp @@ -519,7 +519,7 @@ void SshConnectionPrivate::handleServiceAcceptPacket() switch (m_connParams.authenticationType) { case SshConnectionParameters::AuthenticationTypeTryAllPasswordBasedMethods: m_triedAllPasswordBasedMethods = false; - // Fall-through. + Q_FALLTHROUGH(); case SshConnectionParameters::AuthenticationTypePassword: m_sendFacility.sendUserAuthByPasswordRequestPacket(m_connParams.userName().toUtf8(), SshCapabilities::SshConnectionService, m_connParams.password().toUtf8()); diff --git a/src/plugins/autotest/testcodeparser.cpp b/src/plugins/autotest/testcodeparser.cpp index ea2d59d3d19..6ebc559597d 100644 --- a/src/plugins/autotest/testcodeparser.cpp +++ b/src/plugins/autotest/testcodeparser.cpp @@ -42,6 +42,7 @@ #include <utils/algorithm.h> #include <utils/mapreduce.h> #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> #include <utils/runextensions.h> #include <QDirIterator> @@ -276,7 +277,7 @@ bool TestCodeParser::postponed(const QStringList &fileList) m_reparseTimer.start(); return true; } - // intentional fall-through + Q_FALLTHROUGH(); default: m_postponedFiles.insert(fileList.first()); m_reparseTimer.stop(); diff --git a/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp b/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp index 54d960ff03c..644c5d778c9 100644 --- a/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp +++ b/src/plugins/clangcodemodel/clangcompletionassistprocessor.cpp @@ -54,6 +54,7 @@ #include <utils/textutils.h> #include <utils/mimetypes/mimedatabase.h> #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> #include <QDirIterator> #include <QTextDocument> @@ -242,7 +243,7 @@ IAssistProposal *ClangCompletionAssistProcessor::startCompletionHelper() case ClangCompletionContextAnalyzer::CompleteSlot: modifiedFileContent = modifyInput(m_interface->textDocument(), analyzer.positionEndOfExpression()); - // Fall through! + Q_FALLTHROUGH(); case ClangCompletionContextAnalyzer::PassThroughToLibClang: { m_addSnippets = m_completionOperator == T_EOF_SYMBOL; m_sentRequestType = NormalCompletion; diff --git a/src/plugins/clangstaticanalyzer/clangstaticanalyzerlogfilereader.cpp b/src/plugins/clangstaticanalyzer/clangstaticanalyzerlogfilereader.cpp index 5b394d60d32..6e361b0a1aa 100644 --- a/src/plugins/clangstaticanalyzer/clangstaticanalyzerlogfilereader.cpp +++ b/src/plugins/clangstaticanalyzer/clangstaticanalyzerlogfilereader.cpp @@ -32,6 +32,7 @@ #include <QXmlStreamReader> #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> namespace ClangStaticAnalyzer { namespace Internal { @@ -100,22 +101,26 @@ QList<Diagnostic> LogFileReader::read(const QString &filePath, QString *errorMes if (errorMessage) { *errorMessage = tr("Could not read file \"%1\": UnexpectedElementError.") .arg(filePath); - } // fall-through + } + Q_FALLTHROUGH(); case QXmlStreamReader::CustomError: if (errorMessage) { *errorMessage = tr("Could not read file \"%1\": CustomError.") .arg(filePath); - } // fall-through + } + Q_FALLTHROUGH(); case QXmlStreamReader::NotWellFormedError: if (errorMessage) { *errorMessage = tr("Could not read file \"%1\": NotWellFormedError.") .arg(filePath); - } // fall-through + } + Q_FALLTHROUGH(); case QXmlStreamReader::PrematureEndOfDocumentError: if (errorMessage) { *errorMessage = tr("Could not read file \"%1\": PrematureEndOfDocumentError.") .arg(filePath); - } // fall-through + } + Q_FALLTHROUGH(); default: return emptyList; } diff --git a/src/plugins/cpptools/cppcodeformatter.cpp b/src/plugins/cpptools/cppcodeformatter.cpp index 68c83f29f9a..064479b9d57 100644 --- a/src/plugins/cpptools/cppcodeformatter.cpp +++ b/src/plugins/cpptools/cppcodeformatter.cpp @@ -29,6 +29,7 @@ #include <cplusplus/Lexer.h> #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> #include <QDebug> #include <QMetaEnum> @@ -848,7 +849,7 @@ bool CodeFormatter::tryDeclaration() return true; } } - // fallthrough + Q_FALLTHROUGH(); case T_CHAR: case T_CHAR16_T: case T_CHAR32_T: @@ -1231,7 +1232,7 @@ void QtStyleCodeFormatter::onEnter(int newState, int *indentDepth, int *savedInd case assign_open: if (parentState.type == assign_open_or_initializer) break; - // fallthrough + Q_FALLTHROUGH(); case assign_open_or_initializer: if (!lastToken && m_styleSettings.alignAssignments) *paddingDepth = nextTokenPosition-*indentDepth; diff --git a/src/plugins/cpptools/cppqtstyleindenter.cpp b/src/plugins/cpptools/cppqtstyleindenter.cpp index 8877d5b49c9..8f5993d2bfa 100644 --- a/src/plugins/cpptools/cppqtstyleindenter.cpp +++ b/src/plugins/cpptools/cppqtstyleindenter.cpp @@ -29,6 +29,8 @@ #include "cpptoolssettings.h" #include "cppcodestylepreferences.h" +#include <utils/qtcfallthrough.h> + #include <QChar> #include <QTextDocument> #include <QTextBlock> @@ -79,7 +81,7 @@ static bool isElectricInLine(const QChar ch, const QString &text) return true; } - // fall-through + Q_FALLTHROUGH(); // lines that start with : might have a constructor initializer list case '<': case '>': { diff --git a/src/plugins/debugger/namedemangler/parsetreenodes.cpp b/src/plugins/debugger/namedemangler/parsetreenodes.cpp index 3f40136fbe2..1d706e6c9bd 100644 --- a/src/plugins/debugger/namedemangler/parsetreenodes.cpp +++ b/src/plugins/debugger/namedemangler/parsetreenodes.cpp @@ -27,6 +27,8 @@ #include "demanglerexceptions.h" +#include <utils/qtcfallthrough.h> + #include <iostream> #include <cctype> #include <cstring> @@ -1293,25 +1295,29 @@ void ExprPrimaryNode::parse() switch (typeNode->type()) { case BuiltinTypeNode::UnsignedShortType: case BuiltinTypeNode::UnsignedIntType: - m_suffix = "U"; // Fall-through. + m_suffix = "U"; + Q_FALLTHROUGH(); case BuiltinTypeNode::SignedShortType: case BuiltinTypeNode::SignedIntType: PARSE_RULE_AND_ADD_RESULT_AS_CHILD(NumberNode); break; case BuiltinTypeNode::UnsignedLongType: - m_suffix = "U"; // Fall-through. + m_suffix = "U"; + Q_FALLTHROUGH(); case BuiltinTypeNode::SignedLongType: m_suffix = "L"; PARSE_RULE_AND_ADD_RESULT_AS_CHILD(NumberNode); break; case BuiltinTypeNode::UnsignedLongLongType: - m_suffix = "U"; // Fall-through. + m_suffix = "U"; + Q_FALLTHROUGH(); case BuiltinTypeNode::SignedLongLongType: m_suffix = "LL"; PARSE_RULE_AND_ADD_RESULT_AS_CHILD(NumberNode); break; case BuiltinTypeNode::FloatType: - m_suffix = "f"; // Fall-through. + m_suffix = "f"; + Q_FALLTHROUGH(); case BuiltinTypeNode::DoubleType: PARSE_RULE_AND_ADD_RESULT_AS_CHILD(FloatValueNode); break; diff --git a/src/plugins/fakevim/fakevimhandler.cpp b/src/plugins/fakevim/fakevimhandler.cpp index 74a9fc169fc..60b277f5b98 100644 --- a/src/plugins/fakevim/fakevimhandler.cpp +++ b/src/plugins/fakevim/fakevimhandler.cpp @@ -60,6 +60,7 @@ #include <utils/hostosinfo.h> #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> #include <QDebug> #include <QFile> @@ -5662,7 +5663,7 @@ bool FakeVimHandler::Private::handleExMapCommand(const ExCommand &cmd0) // :map foreach (char c, modes) MappingsIterator(&g.mappings, c, key).remove(); break; - case Map: // fall through + case Map: Q_FALLTHROUGH(); case Noremap: { Inputs inputs(rhs, type == Noremap, silent); foreach (char c, modes) diff --git a/src/plugins/projectexplorer/abi.cpp b/src/plugins/projectexplorer/abi.cpp index 054889c8666..e287de6f556 100644 --- a/src/plugins/projectexplorer/abi.cpp +++ b/src/plugins/projectexplorer/abi.cpp @@ -26,6 +26,7 @@ #include "abi.h" #include <utils/fileutils.h> +#include <utils/qtcfallthrough.h> #include <QDebug> #include <QtEndian> @@ -681,7 +682,8 @@ QString Abi::toString(const Architecture &a) return QLatin1String("itanium"); case ShArchitecture: return QLatin1String("sh"); - case UnknownArchitecture: // fall through! + case UnknownArchitecture: + Q_FALLTHROUGH(); default: return QLatin1String("unknown"); } @@ -706,7 +708,8 @@ QString Abi::toString(const OS &o) return QLatin1String("qnx"); case BareMetalOS: return QLatin1String("baremetal"); - case UnknownOS: // fall through! + case UnknownOS: + Q_FALLTHROUGH(); default: return QLatin1String("unknown"); }; @@ -754,7 +757,8 @@ QString Abi::toString(const OSFlavor &of) case GenericQnxFlavor: case GenericBareMetalFlavor: return QLatin1String("generic"); - case UnknownFlavor: // fall through! + case UnknownFlavor: + Q_FALLTHROUGH(); default: return QLatin1String("unknown"); } @@ -771,7 +775,8 @@ QString Abi::toString(const BinaryFormat &bf) return QLatin1String("mach_o"); case RuntimeQmlFormat: return QLatin1String("qml_rt"); - case UnknownFormat: // fall through! + case UnknownFormat: + Q_FALLTHROUGH(); default: return QLatin1String("unknown"); } diff --git a/src/plugins/qmlprofiler/inputeventsmodel.cpp b/src/plugins/qmlprofiler/inputeventsmodel.cpp index 2c8be86fe43..6af76231959 100644 --- a/src/plugins/qmlprofiler/inputeventsmodel.cpp +++ b/src/plugins/qmlprofiler/inputeventsmodel.cpp @@ -29,6 +29,8 @@ #include <timeline/timelineformattime.h> +#include <utils/qtcfallthrough.h> + #include <QKeyEvent> #include <QMouseEvent> #include <QMetaEnum> @@ -84,7 +86,7 @@ QVariantMap InputEventsModel::details(int index) const switch (event.type) { case InputKeyPress: type = tr("Key Press"); - // fallthrough + Q_FALLTHROUGH(); case InputKeyRelease: if (type.isEmpty()) type = tr("Key Release"); @@ -98,11 +100,11 @@ QVariantMap InputEventsModel::details(int index) const break; case InputMouseDoubleClick: type = tr("Double Click"); - // fallthrough + Q_FALLTHROUGH(); case InputMousePress: if (type.isEmpty()) type = tr("Mouse Press"); - // fallthrough + Q_FALLTHROUGH(); case InputMouseRelease: if (type.isEmpty()) type = tr("Mouse Release"); diff --git a/src/plugins/scxmleditor/plugin_interface/scxmltagutils.cpp b/src/plugins/scxmleditor/plugin_interface/scxmltagutils.cpp index 41e114e160a..4bf84f8782b 100644 --- a/src/plugins/scxmleditor/plugin_interface/scxmltagutils.cpp +++ b/src/plugins/scxmleditor/plugin_interface/scxmltagutils.cpp @@ -29,6 +29,7 @@ #include "serializer.h" #include <utils/qtcassert.h> +#include <utils/qtcfallthrough.h> #include <QAction> #include <QPointF> @@ -112,7 +113,7 @@ QVector<TagType> allowedChildTypes(TagType tagType) case State: childTags << Initial; childTags << Final; - // FALL THROUGH + Q_FALLTHROUGH(); case Parallel: childTags << OnEntry; childTags << OnExit; @@ -135,7 +136,7 @@ QVector<TagType> allowedChildTypes(TagType tagType) case If: childTags << ElseIf; childTags << Else; - // FALL THROUGH + Q_FALLTHROUGH(); case Transition: case OnEntry: case OnExit: @@ -169,7 +170,7 @@ QVector<TagType> allowedChildTypes(TagType tagType) break; case Invoke: childTags << Finalize; - // FALL THROUGH + Q_FALLTHROUGH(); case Donedata: case Send: childTags << Param; @@ -211,7 +212,7 @@ QVector<TagType> childTypes(TagType tagType) case If: childTags << ElseIf; childTags << Else; - // FALL THROUGH + Q_FALLTHROUGH(); case Transition: case OnEntry: case OnExit: @@ -245,7 +246,7 @@ QVector<TagType> childTypes(TagType tagType) break; case Invoke: childTags << Finalize; - // FALL THROUGH + Q_FALLTHROUGH(); case Donedata: case Send: childTags << Param; diff --git a/src/plugins/winrt/winrtrunnerhelper.cpp b/src/plugins/winrt/winrtrunnerhelper.cpp index 60ca4f870c8..44dfd25710b 100644 --- a/src/plugins/winrt/winrtrunnerhelper.cpp +++ b/src/plugins/winrt/winrtrunnerhelper.cpp @@ -37,6 +37,7 @@ #include <projectexplorer/target.h> #include <qtsupport/baseqtversion.h> #include <qtsupport/qtkitinformation.h> +#include <utils/qtcfallthrough.h> #include <utils/qtcprocess.h> #include <QDir> @@ -169,7 +170,7 @@ void WinRtRunnerHelper::startWinRtRunner(const RunConf &conf) QtcProcess::addArg(&runnerArgs, QStringLiteral("--debugger-arguments")); QtcProcess::addArg(&runnerArgs, m_debuggerArguments); } - // fall through + Q_FALLTHROUGH(); case Start: QtcProcess::addArgs(&runnerArgs, QStringLiteral("--start --stop --install --wait 0")); connectProcess = true; diff --git a/src/shared/json/json.cpp b/src/shared/json/json.cpp index 58e6beb06d1..eab44f4659a 100644 --- a/src/shared/json/json.cpp +++ b/src/shared/json/json.cpp @@ -51,6 +51,7 @@ #include "json.h" +#include "../../libs/utils/qtcfallthrough.h" //#define PARSER_DEBUG #ifdef PARSER_DEBUG @@ -4843,7 +4844,7 @@ bool Value::isValid(const Base *b) const case JsonValue::Double: if (intValue) break; - // fall through + Q_FALLTHROUGH(); case JsonValue::String: case JsonValue::Array: case JsonValue::Object: @@ -4922,7 +4923,7 @@ uint32_t Value::valueToStore(const JsonValue &v, uint32_t offset) if (c != INT_MAX) return c; } - // fall through + Q_FALLTHROUGH(); case JsonValue::String: case JsonValue::Array: case JsonValue::Object: |