diff options
author | Kai Koehne <kai.koehne@qt.io> | 2016-08-05 10:12:12 +0200 |
---|---|---|
committer | Kai Koehne <kai.koehne@qt.io> | 2016-11-08 15:31:17 +0000 |
commit | ed7f77071dcca996a8c8147fd66344090666e60c (patch) | |
tree | 0f36d33272e9edf80f30f15d1fb4cc7026534267 /src/widgets/styles/qstyleoption.h | |
parent | b5fa247102c610d8ed4c1d88a7f1ea685b96c91f (diff) |
Replace custom type traits with std one's
Remove most type traits from qtypetraits.h, but keep the custom
implementation of is_signed/is_unsigned. This gets rid of
BSD-3 licensed code from Google in a public header (hugh!).
The custom implementations for is_signed/is_unsigned are kept
because the implementations in gcc's standard headers do not
work as we expect for enums - both is_signed and is_unsigned
always returns false there - see also
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59027
[ChangeLog][QtCore][General] Qt now relies on type traits from
the C++ standard library.
Change-Id: I3f2188b46949f04ca4482a6ac9afd3482103f0e1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/widgets/styles/qstyleoption.h')
-rw-r--r-- | src/widgets/styles/qstyleoption.h | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/widgets/styles/qstyleoption.h b/src/widgets/styles/qstyleoption.h index 9679411402..0e76d53eea 100644 --- a/src/widgets/styles/qstyleoption.h +++ b/src/widgets/styles/qstyleoption.h @@ -665,7 +665,7 @@ protected: template <typename T> T qstyleoption_cast(const QStyleOption *opt) { - typedef typename QtPrivate::remove_cv<typename QtPrivate::remove_pointer<T>::type>::type Opt; + typedef typename std::remove_cv<typename std::remove_pointer<T>::type>::type Opt; if (opt && opt->version >= Opt::Version && (opt->type == Opt::Type || int(Opt::Type) == QStyleOption::SO_Default || (int(Opt::Type) == QStyleOption::SO_Complex @@ -677,7 +677,7 @@ T qstyleoption_cast(const QStyleOption *opt) template <typename T> T qstyleoption_cast(QStyleOption *opt) { - typedef typename QtPrivate::remove_cv<typename QtPrivate::remove_pointer<T>::type>::type Opt; + typedef typename std::remove_cv<typename std::remove_pointer<T>::type>::type Opt; if (opt && opt->version >= Opt::Version && (opt->type == Opt::Type || int(Opt::Type) == QStyleOption::SO_Default || (int(Opt::Type) == QStyleOption::SO_Complex @@ -728,7 +728,7 @@ public: template <typename T> T qstyleoption_cast(const QStyleHintReturn *hint) { - typedef typename QtPrivate::remove_cv<typename QtPrivate::remove_pointer<T>::type>::type Opt; + typedef typename std::remove_cv<typename std::remove_pointer<T>::type>::type Opt; if (hint && hint->version <= Opt::Version && (hint->type == Opt::Type || int(Opt::Type) == QStyleHintReturn::SH_Default)) return static_cast<T>(hint); @@ -738,7 +738,7 @@ T qstyleoption_cast(const QStyleHintReturn *hint) template <typename T> T qstyleoption_cast(QStyleHintReturn *hint) { - typedef typename QtPrivate::remove_cv<typename QtPrivate::remove_pointer<T>::type>::type Opt; + typedef typename std::remove_cv<typename std::remove_pointer<T>::type>::type Opt; if (hint && hint->version <= Opt::Version && (hint->type == Opt::Type || int(Opt::Type) == QStyleHintReturn::SH_Default)) return static_cast<T>(hint); |