1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 06:17:35 +00:00

AK+Toolchain: Make char and wchar_t behave on AARCH64

By default char and wchar_t are unsigned on AARCH64. This fixes a
bunch of related compiler errors.
This commit is contained in:
Gunnar Beutner 2022-10-12 22:00:21 +02:00 committed by Linus Groh
parent 31bd5b1a02
commit a650c74b27
4 changed files with 29 additions and 10 deletions

View file

@ -274,6 +274,12 @@ template<>
struct __MakeUnsigned<bool> {
using Type = bool;
};
#ifdef AK_ARCH_AARCH64
template<>
struct __MakeUnsigned<wchar_t> {
using Type = wchar_t;
};
#endif
template<typename T>
using MakeUnsigned = typename __MakeUnsigned<T>::Type;
@ -326,6 +332,12 @@ template<>
struct __MakeSigned<char> {
using Type = char;
};
#ifdef AK_ARCH_AARCH64
template<>
struct __MakeSigned<wchar_t> {
using Type = void;
};
#endif
template<typename T>
using MakeSigned = typename __MakeSigned<T>::Type;