Opened 4 years ago

Closed 4 years ago

#59565 closed defect (fixed)

lttoolbox: error: expected ';' at end of declaration list

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone:
Component: ports Version: 2.6.2
Keywords: Cc:
Port: lttoolbox

Description

lttoolbox does not build:

In file included from expander.cc:20:
In file included from ../lttoolbox/compiler.h:31:
In file included from /opt/local/include/libxml2/libxml/xmlreader.h:14:
In file included from /opt/local/include/libxml2/libxml/tree.h:1307:
In file included from /opt/local/include/libxml2/libxml/xmlmemory.h:218:
In file included from /opt/local/include/libxml2/libxml/threads.h:35:
In file included from /opt/local/include/libxml2/libxml/globals.h:18:
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/libxml2/unicode/uenum.h:23:
/opt/local/include/libxml2/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/libxml2/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/libxml2/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/libxml2/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/libxml2/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/libxml2/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/libxml2/unicode/localpointer.h:405:36: error: expected ';' at end of declaration list
    LocalArray(LocalArray<T> &&src) U_NOEXCEPT : LocalPointerBase<T>(src.ptr) {
                                   ^
                                   ;

This has been discussed elsewhere with other ports, but it seems that because libxml2 uses icu, and because icu now requires C++11, anything that uses this part of libxml2 now also requires C++11.

Change History (1)

comment:1 Changed 4 years ago by jmroot (Joshua Root)

Owner: set to jmroot
Resolution: fixed
Status: newclosed

In 134cb9c9d05ee6e044dc330204d9dc33ee495f73/macports-ports (master):

libxml2: update to 2.9.10

Also, don't expose the ICU C++ API via libxml/encoding.h if the C++
version is too old.

Fixes: #59499
Fixes: #59519
Fixes: #59565
Fixes: #59567
Fixes: #59645
Fixes: #59721
Fixes: #59736

Note: See TracTickets for help on using tickets.