Make sure we don't have an operator void(), ICC doesn't like it.
ICC is right: this function will never be called. But we didn't want it called anyway. Just make it be something non-void. qdbuspendingreply.h(185): error #597: "QDBusPendingReply<T1, T2, T3, T4, T5, T6, T7, T8>::operator void() const [with T1=void, T2=void, T3=void, T4=void, T5=void, T6=void, T7=void, T8=void]" will not be called for implicit or explicit conversions Change-Id: I5e067bd03aafc6d6772cc1e0f8f8ae8bfa1712d7 Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
This commit is contained in:
parent
02c3e955e3
commit
29c80d0232
@ -105,6 +105,10 @@ namespace QDBusPendingReplyTypes {
|
||||
static inline void fillMetaTypes(int *)
|
||||
{ }
|
||||
};
|
||||
|
||||
struct TypeIsVoid {};
|
||||
template <typename T> struct NotVoid { typedef T Type; };
|
||||
template <> struct NotVoid<void> { typedef TypeIsVoid Type; };
|
||||
} // namespace QDBusPendingReplyTypes
|
||||
|
||||
template<typename T1 = void, typename T2 = void, typename T3 = void, typename T4 = void,
|
||||
@ -176,7 +180,7 @@ public:
|
||||
return argumentAt<0>();
|
||||
}
|
||||
|
||||
inline operator typename Select<0>::Type() const
|
||||
inline operator typename QDBusPendingReplyTypes::NotVoid<T1>::Type() const
|
||||
{
|
||||
return argumentAt<0>();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user