diff options
Diffstat (limited to 'src/corelib/global/qflags.h')
-rw-r--r-- | src/corelib/global/qflags.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/corelib/global/qflags.h b/src/corelib/global/qflags.h index b907caa9b6..a6bd37c33f 100644 --- a/src/corelib/global/qflags.h +++ b/src/corelib/global/qflags.h @@ -111,8 +111,8 @@ public: typedef Enum enum_type; // compiler-generated copy/move ctor/assignment operators are fine! #ifdef Q_QDOC - inline QFlags(const QFlags &other); - inline QFlags &operator=(const QFlags &other); + Q_DECL_CONSTEXPR inline QFlags(const QFlags &other); + Q_DECL_CONSTEXPR inline QFlags &operator=(const QFlags &other); #endif Q_DECL_CONSTEXPR inline QFlags(Enum f) Q_DECL_NOTHROW : i(Int(f)) {} Q_DECL_CONSTEXPR inline QFlags(Zero = Q_NULLPTR) Q_DECL_NOTHROW : i(0) {} @@ -163,8 +163,10 @@ private: Int i; }; +#ifndef Q_MOC_RUN #define Q_DECLARE_FLAGS(Flags, Enum)\ typedef QFlags<Enum> Flags; +#endif #define Q_DECLARE_INCOMPATIBLE_FLAGS(Flags) \ Q_DECL_CONSTEXPR inline QIncompatibleFlag operator|(Flags::enum_type f1, int f2) Q_DECL_NOTHROW \ @@ -179,8 +181,11 @@ Q_DECL_CONSTEXPR inline QFlags<Flags::enum_type> operator|(Flags::enum_type f1, #else /* Q_NO_TYPESAFE_FLAGS */ +#ifndef Q_MOC_RUN #define Q_DECLARE_FLAGS(Flags, Enum)\ typedef uint Flags; +#endif + #define Q_DECLARE_OPERATORS_FOR_FLAGS(Flags) #endif /* Q_NO_TYPESAFE_FLAGS */ |