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

Reply via email to