Remove default argument from declarations of qHash as friend
It's illegal in C++11: §8.3.6.4 [dcl.fct.default] "If a friend declaration specifies a default argument expression, that declaration shall be a definition and shall be the only declaration of the function or function template in the translation unit." Clang is starting to enforce this, thus it's making qtbase not compiling. Task-number: QTBUG-32100 Change-Id: Ifd9d4f62354d7cf4ccf275f36aab64e05c59efff Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Mitch Curtis <mitch.curtis@digia.com> Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
This commit is contained in:
parent
6177a3026b
commit
658dfef500
@ -114,6 +114,10 @@ public:
|
|||||||
template<typename E1, typename E2>
|
template<typename E1, typename E2>
|
||||||
class QTypeInfo<QUrlTwoFlags<E1, E2> > : public QTypeInfoMerger<QUrlTwoFlags<E1, E2>, E1, E2> {};
|
class QTypeInfo<QUrlTwoFlags<E1, E2> > : public QTypeInfoMerger<QUrlTwoFlags<E1, E2>, E1, E2> {};
|
||||||
|
|
||||||
|
class QUrl;
|
||||||
|
// qHash is a friend, but we can't use default arguments for friends (§8.3.6.4)
|
||||||
|
Q_CORE_EXPORT uint qHash(const QUrl &url, uint seed = 0) Q_DECL_NOTHROW;
|
||||||
|
|
||||||
class Q_CORE_EXPORT QUrl
|
class Q_CORE_EXPORT QUrl
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -324,7 +328,7 @@ public:
|
|||||||
static QList<QUrl> fromStringList(const QStringList &uris, ParsingMode mode = TolerantMode);
|
static QList<QUrl> fromStringList(const QStringList &uris, ParsingMode mode = TolerantMode);
|
||||||
|
|
||||||
static void setIdnWhitelist(const QStringList &);
|
static void setIdnWhitelist(const QStringList &);
|
||||||
friend Q_CORE_EXPORT uint qHash(const QUrl &url, uint seed = 0) Q_DECL_NOTHROW;
|
friend Q_CORE_EXPORT uint qHash(const QUrl &url, uint seed) Q_DECL_NOTHROW;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QUrlPrivate *d;
|
QUrlPrivate *d;
|
||||||
|
@ -98,6 +98,9 @@ Q_CORE_EXPORT QDebug operator<<(QDebug, const QModelIndex &);
|
|||||||
|
|
||||||
class QPersistentModelIndexData;
|
class QPersistentModelIndexData;
|
||||||
|
|
||||||
|
// qHash is a friend, but we can't use default arguments for friends (§8.3.6.4)
|
||||||
|
uint qHash(const QPersistentModelIndex &index, uint seed = 0);
|
||||||
|
|
||||||
class Q_CORE_EXPORT QPersistentModelIndex
|
class Q_CORE_EXPORT QPersistentModelIndex
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -128,7 +131,7 @@ public:
|
|||||||
bool isValid() const;
|
bool isValid() const;
|
||||||
private:
|
private:
|
||||||
QPersistentModelIndexData *d;
|
QPersistentModelIndexData *d;
|
||||||
friend uint qHash(const QPersistentModelIndex &, uint seed = 0);
|
friend uint qHash(const QPersistentModelIndex &, uint seed);
|
||||||
#ifndef QT_NO_DEBUG_STREAM
|
#ifndef QT_NO_DEBUG_STREAM
|
||||||
friend Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &);
|
friend Q_CORE_EXPORT QDebug operator<<(QDebug, const QPersistentModelIndex &);
|
||||||
#endif
|
#endif
|
||||||
|
@ -64,6 +64,10 @@ public:
|
|||||||
|
|
||||||
typedef QIPv6Address Q_IPV6ADDR;
|
typedef QIPv6Address Q_IPV6ADDR;
|
||||||
|
|
||||||
|
class QHostAddress;
|
||||||
|
// qHash is a friend, but we can't use default arguments for friends (§8.3.6.4)
|
||||||
|
Q_NETWORK_EXPORT uint qHash(const QHostAddress &key, uint seed = 0);
|
||||||
|
|
||||||
class Q_NETWORK_EXPORT QHostAddress
|
class Q_NETWORK_EXPORT QHostAddress
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
@ -121,7 +125,7 @@ public:
|
|||||||
|
|
||||||
static QPair<QHostAddress, int> parseSubnet(const QString &subnet);
|
static QPair<QHostAddress, int> parseSubnet(const QString &subnet);
|
||||||
|
|
||||||
friend Q_NETWORK_EXPORT uint qHash(const QHostAddress &key, uint seed = 0);
|
friend Q_NETWORK_EXPORT uint qHash(const QHostAddress &key, uint seed);
|
||||||
protected:
|
protected:
|
||||||
QScopedPointer<QHostAddressPrivate> d;
|
QScopedPointer<QHostAddressPrivate> d;
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user