brainboxdotcc / DPP

C++ Discord API Bot Library - D++ is Lightweight and scalable for small and huge bots!
https://dpp.dev/
Apache License 2.0
1.04k stars 158 forks source link

std::basic_string<uint8_t> is broken for LLVM-19 #1129

Closed ghost closed 1 month ago

ghost commented 4 months ago

Describe the bug The uint8_t type is typedef'ed as unsigned char in glibc. However the support for unsigned char type has been removed from std::char_traits in libc++ according to https://reviews.llvm.org/D138307. This gives an "implicit instantiation of undefined template std::char_traits<unsigned char>" error, during build.

To Reproduce Steps to reproduce the behavior:

  1. Compile D++ using the latest libc++.

System Details:

Additional context I would like to know what could be the proposed fix for this? I wouldn't mind sending the PR.

braindigitalis commented 4 months ago

what thing in dpp actually causes the warning, under what compiler and version?

ghost commented 4 months ago

It's on this line https://github.com/brainboxdotcc/DPP/blob/89b43ba1445f99114f1c583529d01ad210918c35/include/dpp/dispatcher.h#L2016. The compiler is Clang 19.

braindigitalis commented 4 months ago

I'm not sure this needs to be a string, perhaps a vector would suffice? it is important for it to be unsigned 8 bit wide elements though.

ghost commented 4 months ago

Yeah, I agree.

Jaskowicz1 commented 3 months ago

Any news on this?

Mishura4 commented 3 months ago

Idk we just need to have someone pick this up

Mishura4 commented 3 months ago

I can look into this next week

Jaskowicz1 commented 2 months ago

I can look into this next week

image

Mishura4 commented 2 months ago

No unfortunately I just got extremely busy 😔

ruslan-ilesik commented 1 month ago

I think we should close this issue.