Opened 5 years ago

Closed 5 years ago

#59622 closed defect (fixed)

py27-shiboken @1.2.4: error: expected ';' at end of declaration list

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: mamoll (Mark Moll)
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: Cc:
Port: py-shiboken

Description

py27-shiboken does not build:

In file included from /opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_python_py-shiboken/py27-shiboken/work/Shiboken-1.2.4/ApiExtractor/docparser.cpp:29:
In file included from /opt/local/include/libxslt/xsltutils.h:19:
In file included from /opt/local/include/libxml2/libxml/xpath.h:26:
In file included from /opt/local/include/libxml2/libxml/xmlerror.h:10:
In file included from /opt/local/include/libxml2/libxml/parser.h:810:
In file included from /opt/local/include/libxml2/libxml/encoding.h:31:
In file included from /opt/local/include/unicode/ucnv.h:53:
In file included from /opt/local/include/unicode/uenum.h:23:
/opt/local/include/unicode/localpointer.h:71:51: warning: deleted function definitions are a C++11 extension [-Wc++11-extensions]
    static void* U_EXPORT2 operator new(size_t) = delete;
                                                  ^
/opt/local/include/unicode/localpointer.h:72:53: warning: deleted function definitions are a C++11 extension [-Wc++11-extensions]
    static void* U_EXPORT2 operator new[](size_t) = delete;
                                                    ^
/opt/local/include/unicode/localpointer.h:74:58: warning: deleted function definitions are a C++11 extension [-Wc++11-extensions]
    static void* U_EXPORT2 operator new(size_t, void*) = delete;
                                                         ^
/opt/local/include/unicode/localpointer.h:224:34: warning: rvalue references are a C++11 extension [-Wc++11-extensions]
    LocalPointer(LocalPointer<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
                                 ^
/opt/local/include/unicode/localpointer.h:224:40: error: expected ';' at end of declaration list
    LocalPointer(LocalPointer<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
                                       ^
                                       ;
/opt/local/include/unicode/localpointer.h:405:30: warning: rvalue references are a C++11 extension [-Wc++11-extensions]
    LocalArray(LocalArray<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
                             ^
/opt/local/include/unicode/localpointer.h:405:36: error: expected ';' at end of declaration list
    LocalArray(LocalArray<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
                                   ^
                                   ;

Looks like because shiboken uses libxslt, which uses libxml2, which uses icu, which now requires C++11, shiboken will require C++11 too. To indicate that requirement, put this into the Portfile:

compiler.cxx_standard 2011

Probably this will be needed too:

configure.cxxflags-append -std=c++11

You can ignore the other error in that logfile:

/opt/local/include/sparsehash/dense_hash_map:106:10: fatal error: 'tr1/functional' file not found
#include HASH_FUN_H                 // for hash<>
         ^
/opt/local/include/sparsehash/internal/sparseconfig.h:10:20: note: expanded from macro 'HASH_FUN_H'
#define HASH_FUN_H <tr1/functional>
                   ^
1 error generated.

I've already fixed that in [18a1b6b37472aa4a717e03e70a51cac3b6fe1590/macports-ports].

There are a lot of other open tickets about shiboken which you might want to review as well.

Change History (1)

comment:1 Changed 5 years ago by mamoll (Mark Moll)

Resolution: fixed
Status: assignedclosed

In e6316eff0372ba2ef5e8216a3fe7e2073057cf3e/macports-ports (master):

py-shiboken: require C++11 compiler

Closes #59622 and
#58633.

Note: See TracTickets for help on using tickets.