Control: reassign -1 icu
Control: found -1 76.1-3
Control: retitle -1 unicode/localpointer.h fails to build with -std=c++11
Control: affects -1 + compiz-plugins-main
Hello,
Santiago Vila, le mar. 25 mars 2025 00:10:42 +0000, a ecrit:
> libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../.. -I../../include
> -I/usr/include/uuid -I/usr/include/libxml2
> -I/usr/include/startup-notification-1.0 -I/usr/include/compiz
> -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0
> -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/glib-2.0
> -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/sysprof-6
> -I/usr/include/libmount -I/usr/include/blkid -pthread
> -DDATADIR=\"/usr/share/compiz\" -DLIBDIR=\"/usr/lib\"
> -DLOCALEDIR=\"/usr/share/locale\" -DIMAGEDIR=\"/usr/share/compiz\"
> -Wdate-time -D_FORTIFY_SOURCE=2 -std=c++11 -g -O2
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -c
> focuspoll.cpp -fPIC -DPIC -o .libs/focuspoll.o
> In file included from /usr/include/unicode/uenum.h:25,
> from /usr/include/unicode/ucnv.h:52,
> from /usr/include/libxml2/libxml/encoding.h:31,
> from /usr/include/libxml2/libxml/parser.h:812,
> from /usr/include/compiz/compiz.h:29,
> from /usr/include/compiz/compiz-plugin.h:29,
> from /usr/include/compiz/compiz-core.h:29,
> from focuspoll.cpp:36:
> /usr/include/unicode/localpointer.h:561:26: error: parameter declared 'auto'
> 561 | template <typename Type, auto closeFunction>
> | ^~~~
> /usr/include/unicode/localpointer.h:573:76: error: template argument 2 is
> invalid
> 573 | explicit LocalOpenPointer(std::unique_ptr<Type,
> decltype(closeFunction)> &&p)
> |
> ^
> /usr/include/unicode/localpointer.h:583:78: error: template argument 2 is
> invalid
> 583 | LocalOpenPointer &operator=(std::unique_ptr<Type,
> decltype(closeFunction)> &&p) {
> |
> ^
> /usr/include/unicode/localpointer.h:599:59: error: template argument 2 is
> invalid
> 599 | operator std::unique_ptr<Type, decltype(closeFunction)> () && {
> | ^
> /usr/include/unicode/uenum.h:69:1: note: invalid template non-type parameter
> 69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration,
> uenum_close);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/include/unicode/ucnv.h:597:1: note: invalid template non-type parameter
> 597 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer, UConverter,
> ucnv_close);
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/unicode/localpointer.h is not part of compiz-plugins-main.
Merely compiling
#include <unicode/localpointer.h>
int main(void) {
}
with
g++ test.cpp -o test -std=c++11
fails with the same error, thus reassigning.
Samuel