Opened 6 years ago

Closed 6 years ago

#56952 closed defect (fixed)

py-pyqt5 @5.10.1: fails to build on 10.7

Reported by: dliessi (Davide Liessi) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version:
Keywords: lion Cc: mamoll (Mark Moll), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: py-pyqt5

Description

E.g. from py27-pyqt5

In file included from config-tests/cfgtest_QtCore.cpp:3:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/QCoreApplication:1:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcoreapplication.h:38:
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:756:55: error: no type named 'u16string' in namespace 'std'
    static inline QString fromStdU16String(const std::u16string &s);
                                                 ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:757:17: error: no type named 'u16string' in namespace 'std'
    inline std::u16string toStdU16String() const;
           ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:758:55: error: no type named 'u32string' in namespace 'std'
    static inline QString fromStdU32String(const std::u32string &s);
                                                 ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:759:17: error: no type named 'u32string' in namespace 'std'
    inline std::u32string toStdU32String() const;
           ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1066:17: error: exception specification in declaration does not match previous declaration
inline QString::~QString() { if (!d->ref.deref()) Data::deallocate(d); }
                ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:221:12: note: previous declaration is here
    inline ~QString();
           ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1094:28: error: calling a private constructor of class 'QCharRef'
{ Q_ASSERT(i >= 0); return QCharRef(*this, i); }
                           ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:973:12: note: implicitly declared private here
    inline QCharRef(QString &str, int idx)
           ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1096:10: error: calling a private constructor of class 'QCharRef'
{ return QCharRef(*this, i); }
         ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:973:12: note: implicitly declared private here
    inline QCharRef(QString &str, int idx)
           ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1320:53: error: no type named 'u16string' in namespace 'std'
inline QString QString::fromStdU16String(const std::u16string &s)
                                               ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1323:13: error: no type named 'u16string' in namespace 'std'
inline std::u16string QString::toStdU16String() const
       ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1324:15: error: no member named 'u16string' in namespace 'std'
{ return std::u16string(reinterpret_cast<const char16_t*>(utf16()), length()); }
         ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1326:53: error: no type named 'u32string' in namespace 'std'
inline QString QString::fromStdU32String(const std::u32string &s)
                                               ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1329:13: error: no type named 'u32string' in namespace 'std'
inline std::u32string QString::toStdU32String() const
       ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1331:10: error: no member named 'u32string' in namespace 'std'
    std::u32string u32str(length(), char32_t(0));
    ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1332:75: error: use of undeclared identifier 'u32str'
    int len = toUcs4_helper(d->data(), length(), reinterpret_cast<uint*>(&u32str[0]));
                                                                          ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1333:5: error: use of undeclared identifier 'u32str'
    u32str.resize(len);
    ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qstring.h:1334:12: error: use of undeclared identifier 'u32str'
    return u32str;
           ^
In file included from config-tests/cfgtest_QtCore.cpp:3:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/QCoreApplication:1:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcoreapplication.h:40:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qobject.h:43:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qlist.h:41:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qhashfunctions.h:39:
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qpair.h:62:44: error: no member named 'declval' in namespace 'std'
        Q_DECL_NOEXCEPT_EXPR(noexcept(std::declval<T1&>() = p.first) && noexcept(std::declval<T2&>() = p.second))
                                      ~~~~~^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcompilerdetection.h:1060:43: note: expanded from macro 'Q_DECL_NOEXCEPT_EXPR'
# define Q_DECL_NOEXCEPT_EXPR(x) noexcept(x)
                                          ^
In file included from config-tests/cfgtest_QtCore.cpp:3:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/QCoreApplication:1:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcoreapplication.h:40:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qobject.h:43:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qlist.h:41:
In file included from /opt/local/libexec/qt5/lib/QtCore.framework/Headers/qhashfunctions.h:39:
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qpair.h:62:52: error: 'T1' does not refer to a value
        Q_DECL_NOEXCEPT_EXPR(noexcept(std::declval<T1&>() = p.first) && noexcept(std::declval<T2&>() = p.second))
                                                   ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcompilerdetection.h:1060:43: note: expanded from macro 'Q_DECL_NOEXCEPT_EXPR'
# define Q_DECL_NOEXCEPT_EXPR(x) noexcept(x)
                                          ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qpair.h:42:17: note: declared here
template <class T1, class T2>
                ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qpair.h:62:55: error: expected expression
        Q_DECL_NOEXCEPT_EXPR(noexcept(std::declval<T1&>() = p.first) && noexcept(std::declval<T2&>() = p.second))
                                                      ^
/opt/local/libexec/qt5/lib/QtCore.framework/Headers/qcompilerdetection.h:1060:43: note: expanded from macro 'Q_DECL_NOEXCEPT_EXPR'
# define Q_DECL_NOEXCEPT_EXPR(x) noexcept(x)
                                          ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.

See the buildbot logs:
py27: https://build.macports.org/builders/ports-10.7_x86_64_legacy-builder/builds/71491
py34: https://build.macports.org/builders/ports-10.7_x86_64_legacy-builder/builds/71493
py35: https://build.macports.org/builders/ports-10.7_x86_64_legacy-builder/builds/71494
py36: https://build.macports.org/builders/ports-10.7_x86_64_legacy-builder/builds/71495
py37: https://build.macports.org/builders/ports-10.7_x86_64_legacy-builder/builds/71496

Change History (2)

comment:1 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: MarcusCalhoun-Lopez added

comment:2 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Owner: set to MarcusCalhoun-Lopez
Resolution: fixed
Status: newclosed

In 7a6601549a3b6e7fb213dbc972b2df56921ad919/macports-ports (master):

py-pyqt5: require C++11 compiler

Fixes #56952

Note: See TracTickets for help on using tickets.