OSDN Git Service

remove Qt 4.3 binary compatibility for MSVC
authorIvailo Monev <xakepa10@gmail.com>
Thu, 28 Apr 2016 23:50:19 +0000 (23:50 +0000)
committerIvailo Monev <xakepa10@gmail.com>
Thu, 28 Apr 2016 23:50:19 +0000 (23:50 +0000)
https://github.com/qtproject/qtbase/commit/d9bec0a1d2d7ac18a9a8ae5eff8dd8204eb6bf70

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
src/core/global/qglobal.h.cmake
src/core/tools/qbytearray.h
src/core/tools/qchar.cpp
src/core/tools/qchar.h
src/core/tools/qstring.cpp
src/core/tools/qstring.h

index cf9068a..7567617 100644 (file)
@@ -1041,12 +1041,6 @@ namespace QT_NAMESPACE {}
 #  endif
 #endif
 
-#ifndef Q_COMPILER_MANGLES_RETURN_TYPE
-#  if defined(Q_CC_MSVC)
-#    define Q_COMPILER_MANGLES_RETURN_TYPE
-#  endif
-#endif
-
 #ifdef __cplusplus
 # if defined(Q_OS_QNX) || defined(Q_OS_BLACKBERRY)
 #  include <utility>
index 7fd6361..fd0e928 100644 (file)
@@ -175,15 +175,9 @@ public:
     inline bool isSharedWith(const QByteArray &other) const { return d == other.d; }
     void clear();
 
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-    const char at(int i) const;
-    const char operator[](int i) const;
-    const char operator[](uint i) const;
-#else
     char at(int i) const;
     char operator[](int i) const;
     char operator[](uint i) const;
-#endif
     QByteRef operator[](int i);
     QByteRef operator[](uint i);
 
@@ -368,21 +362,12 @@ inline QByteArray::~QByteArray() { if (!d->ref.deref()) free(d); }
 inline int QByteArray::size() const
 { return d->size; }
 
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-inline const char QByteArray::at(int i) const
-{ Q_ASSERT(i >= 0 && i < size()); return d->data[i]; }
-inline const char QByteArray::operator[](int i) const
-{ Q_ASSERT(i >= 0 && i < size()); return d->data[i]; }
-inline const char QByteArray::operator[](uint i) const
-{ Q_ASSERT(i < uint(size())); return d->data[i]; }
-#else
 inline char QByteArray::at(int i) const
 { Q_ASSERT(uint(i) < uint(size())); return d->data[i]; }
 inline char QByteArray::operator[](int i) const
 { Q_ASSERT(uint(i) < uint(size())); return d->data[i]; }
 inline char QByteArray::operator[](uint i) const
 { Q_ASSERT(i < uint(size())); return d->data[i]; }
-#endif
 
 inline bool QByteArray::isEmpty() const
 { return d->size == 0; }
@@ -421,13 +406,8 @@ class Q_CORE_EXPORT QByteRef {
         : a(array),i(idx) {}
     friend class QByteArray;
 public:
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-    inline operator const char() const
-        { return i < a.d->size ? a.d->data[i] : char(0); }
-#else
     inline operator char() const
         { return i < a.d->size ? a.d->data[i] : char(0); }
-#endif
     inline QByteRef &operator=(char c)
         { if (i >= a.d->size) a.expand(i); else a.detach();
           a.d->data[i] = c;  return *this; }
index 071d720..b58e87c 100644 (file)
@@ -1295,11 +1295,7 @@ ushort QChar::toCaseFolded(ushort ucs2)
 
     \sa toLatin1(), unicode(), QTextCodec::codecForCStrings()
 */
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-const char QChar::toAscii() const
-#else
 char QChar::toAscii() const
-#endif
 {
 #ifndef QT_NO_CODEC_FOR_C_STRINGS
     if (QTextCodec::codecForCStrings())
index c2aed56..414bc09 100644 (file)
@@ -54,13 +54,8 @@ struct QLatin1Char
 {
 public:
     inline explicit QLatin1Char(char c) : ch(c) {}
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-    inline const char toLatin1() const { return ch; }
-    inline const ushort unicode() const { return ushort(uchar(ch)); }
-#else
     inline char toLatin1() const { return ch; }
     inline ushort unicode() const { return ushort(uchar(ch)); }
-#endif
 
 private:
     char ch;
@@ -227,15 +222,9 @@ public:
 
     UnicodeVersion unicodeVersion() const;
 
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-    const char toAscii() const;
-    inline const char toLatin1() const;
-    inline const ushort unicode() const { return ucs; }
-#else
     char toAscii() const;
     inline char toLatin1() const;
     inline ushort unicode() const { return ucs; }
-#endif
 #ifdef Q_NO_PACKED_REFERENCE
     inline ushort &unicode() { return const_cast<ushort&>(ucs); }
 #else
@@ -341,11 +330,7 @@ Q_DECLARE_TYPEINFO(QChar, Q_MOVABLE_TYPE);
 
 inline QChar::QChar() : ucs(0) {}
 
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-inline const char QChar::toLatin1() const { return ucs > 0xff ? '\0' : char(ucs); }
-#else
 inline char QChar::toLatin1() const { return ucs > 0xff ? '\0' : char(ucs); }
-#endif
 inline QChar QChar::fromLatin1(char c) { return QChar(ushort(uchar(c))); }
 
 inline QChar::QChar(uchar c, uchar r) : ucs(ushort((r << 8) | c)){}
index e2de44b..ae222d9 100644 (file)
@@ -3684,10 +3684,6 @@ QByteArray QString::toLatin1() const
     return toLatin1_helper(unicode(), length());
 }
 
-// ### Qt 5: Change the return type of at least toAscii(),
-// toLatin1() and unicode() such that the use of Q_COMPILER_MANGLES_RETURN_TYPE
-// isn't necessary in the header. See task 177402.
-
 /*!
     Returns an 8-bit representation of the string as a QByteArray.
 
index c3a53ef..030385b 100644 (file)
@@ -752,15 +752,9 @@ public:
     inline void setCell(uchar cell);
     inline void setRow(uchar row);
 
-#ifdef Q_COMPILER_MANGLES_RETURN_TYPE
-    const char toAscii() const { return QChar(*this).toAscii(); }
-    const char toLatin1() const { return QChar(*this).toLatin1(); }
-    const ushort unicode() const { return QChar(*this).unicode(); }
-#else
     char toAscii() const { return QChar(*this).toAscii(); }
     char toLatin1() const { return QChar(*this).toLatin1(); }
     ushort unicode() const { return QChar(*this).unicode(); }
-#endif
     ushort& unicode() { return s.data()[i].unicode(); }
 
 };