Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 940196 - app-arch/pbzip2-1.1.13 - does not compile with >=clang-19
Summary: app-arch/pbzip2-1.1.13 - does not compile with >=clang-19
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: systemwide-libcxx
  Show dependency tree
 
Reported: 2024-09-24 09:16 UTC by David Carlos Manuelda
Modified: 2024-12-24 10:19 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (amd64, 1.1.13) (pbzip2-1.1.13:20241018-165846.log,16.23 KB, text/plain)
2024-10-18 17:02 UTC, ernsteiswuerfel
Details
emerge --info (file_940196.txt,7.67 KB, text/plain)
2024-10-18 17:03 UTC, ernsteiswuerfel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description David Carlos Manuelda 2024-09-24 09:16:12 UTC
While updating to clang 19 (on a LLVM profile) I found that this no longer compiles. Digging more into it, it seems that it is related to the removal of char_traits generic template as it was not mandatory in the standard.

This leads that char_traits<unsigned char> is no longer usable and thus the compilation fails, I reported it upstream (in the see also section where there is more info also about the compile error)
Comment 1 Mike Gilbert gentoo-dev 2024-09-24 16:12:37 UTC
Please attach a build log.
Comment 2 ernsteiswuerfel archtester 2024-10-18 17:02:54 UTC
Created attachment 906281 [details]
build.log (amd64, 1.1.13)

Same here.

But with build log. ;)
Comment 3 ernsteiswuerfel archtester 2024-10-18 17:03:39 UTC
Created attachment 906282 [details]
emerge --info
Comment 4 David Carlos Manuelda 2024-10-18 17:04:01 UTC
(In reply to ernsteiswuerfel from comment #2)
> Created attachment 906281 [details]
> build.log (amd64, 1.1.13)
> 
> Same here.
> 
> But with build log. ;)

Oops sorry, I forgot this issue and to add it, thanks!
Comment 5 ernsteiswuerfel archtester 2024-10-18 17:07:34 UTC
Several of these:

[...]
In file included from BZ2StreamScanner.cpp:8:
In file included from ./pbzip2.h:16:
/usr/include/c++/v1/string:3736:22: error: implicit instantiation of
      undefined template 'std::char_traits<unsigned char>'
 3736 |   int __r          = traits_type::compare(data() + __pos1, __s, std::min(__rlen, __n2));
      |                      ^
BZ2StreamScanner.cpp:364:24: note: in instantiation of member function
      'std::basic_string<unsigned char>::compare' requested here
  364 |                 else if ( _bz2Header.compare( 0, prefixLen, getInBuffSearchPtr(), prefix...
      |                                      ^
/usr/include/c++/v1/__fwd/string.h:23:29: note: template is declared here
   23 | struct _LIBCPP_TEMPLATE_VIS char_traits;
      |                             ^
9 errors generated.
make: *** [Makefile:70: pbzip2] Error 1
Comment 6 David Carlos Manuelda 2024-10-19 17:25:03 UTC
I've removed the "musl-porting" block because this is not related to musl, this is caused by the removal of base char_traits template starting in libcxx 19 (see https://reviews.llvm.org/D138307).

As a side note: I am sure other packages will fail in the same way as char_traits for unsigned char were used by other stuff also.
Comment 7 ernsteiswuerfel archtester 2024-10-19 17:40:35 UTC
(In reply to David Carlos Manuelda from comment #6)
> As a side note: I am sure other packages will fail in the same way as
> char_traits for unsigned char were used by other stuff also.
Thanks for the hint! Yes, I encountered some of these already which then I wrongly attributed to be 'a musl thing' 'cause I encountered them only on my musl systems. ;)