diff --git a/src/libs/3rdparty/cplusplus/FullySpecifiedType.h b/src/libs/3rdparty/cplusplus/FullySpecifiedType.h index 498e190330e..4c7a21ddc35 100644 --- a/src/libs/3rdparty/cplusplus/FullySpecifiedType.h +++ b/src/libs/3rdparty/cplusplus/FullySpecifiedType.h @@ -33,7 +33,7 @@ public: ~FullySpecifiedType(); bool isValid() const; - operator bool() const; + explicit operator bool() const; Type *type() const; void setType(Type *type); diff --git a/src/libs/cplusplus/pp-engine.cpp b/src/libs/cplusplus/pp-engine.cpp index d3b49953649..fa96c54176d 100644 --- a/src/libs/cplusplus/pp-engine.cpp +++ b/src/libs/cplusplus/pp-engine.cpp @@ -297,7 +297,7 @@ public: trivial.utf16charOffset = last->utf16charOffset; } - inline operator bool() const + inline explicit operator bool() const { return first != last; } inline bool isValid() const diff --git a/src/libs/glsl/glslsemantic.h b/src/libs/glsl/glslsemantic.h index 3c992514142..cb8dc464a73 100644 --- a/src/libs/glsl/glslsemantic.h +++ b/src/libs/glsl/glslsemantic.h @@ -56,7 +56,7 @@ public: return true; } - operator bool() const { return isValid(); } + explicit operator bool() const { return isValid(); } const Type *type; bool isConstant; diff --git a/src/libs/qmljs/qmljsmodelmanagerinterface.h b/src/libs/qmljs/qmljsmodelmanagerinterface.h index 18ed602fc40..551db94da55 100644 --- a/src/libs/qmljs/qmljsmodelmanagerinterface.h +++ b/src/libs/qmljs/qmljsmodelmanagerinterface.h @@ -78,7 +78,7 @@ public: , tryQmlDump(false), qmlDumpHasRelocatableFlag(true) { } - operator bool() const + explicit operator bool() const { return ! project.isNull(); } bool isValid() const diff --git a/src/libs/qtcreatorcdbext/iinterfacepointer.h b/src/libs/qtcreatorcdbext/iinterfacepointer.h index 4fbbad1590d..674e880a9ad 100644 --- a/src/libs/qtcreatorcdbext/iinterfacepointer.h +++ b/src/libs/qtcreatorcdbext/iinterfacepointer.h @@ -51,7 +51,7 @@ public: inline IInterface *operator->() const { return m_instance; } inline IInterface *data() const { return m_instance; } inline bool isNull() const { return m_instance == 0; } - inline operator bool() const { return !isNull(); } + explicit inline operator bool() const { return !isNull(); } inline HRESULT hr() const { return m_hr; } // This is for creating a IDebugClient from scratch. Not matches by a constructor, diff --git a/src/libs/qtcreatorcdbext/symbolgroupvalue.h b/src/libs/qtcreatorcdbext/symbolgroupvalue.h index 9bbef1ff822..9a36d02e38a 100644 --- a/src/libs/qtcreatorcdbext/symbolgroupvalue.h +++ b/src/libs/qtcreatorcdbext/symbolgroupvalue.h @@ -63,7 +63,7 @@ public: explicit SymbolGroupValue(SymbolGroupNode *node, const SymbolGroupValueContext &c); SymbolGroupValue(); - operator bool() const { return isValid(); } + explicit operator bool() const { return isValid(); } bool isValid() const; // Access children by name or index (0-based) diff --git a/src/plugins/coreplugin/vcsmanager.cpp b/src/plugins/coreplugin/vcsmanager.cpp index f4ec9e84735..1214215f242 100644 --- a/src/plugins/coreplugin/vcsmanager.cpp +++ b/src/plugins/coreplugin/vcsmanager.cpp @@ -511,7 +511,7 @@ public: ExtensionSystem::PluginManager::addObject(watch); } - operator bool() { return m_watched; } + explicit operator bool() { return m_watched; } bool operator !() { return !m_watched; } T &operator*() { return *m_watched; } T *operator->() { return m_watched; } diff --git a/src/plugins/designer/editordata.h b/src/plugins/designer/editordata.h index aada8d9b54e..cff993a3010 100644 --- a/src/plugins/designer/editordata.h +++ b/src/plugins/designer/editordata.h @@ -42,7 +42,7 @@ namespace Internal { class EditorData { public: - operator bool() const { return formWindowEditor != 0; } + explicit operator bool() const { return formWindowEditor != 0; } FormWindowEditor *formWindowEditor = nullptr; SharedTools::WidgetHost *widgetHost = nullptr;