File tree 1 file changed +6
-2
lines changed
1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -39,7 +39,6 @@ mod c_char_definition {
39
39
// These are the targets on which c_char is unsigned. Usually the
40
40
// signedness is the same for all target_os values on a given architecture
41
41
// but there are some exceptions (see isSignedCharDefault() in clang).
42
- //
43
42
// aarch64:
44
43
// Section 10 "Arm C and C++ language mappings" in Procedure Call Standard for the Arm®
45
44
// 64-bit Architecture (AArch64) says C/C++ char is unsigned byte.
@@ -97,14 +96,19 @@ mod c_char_definition {
97
96
// are promoted to int as if from type signed char by default, unless the /J compilation
98
97
// option is used."
99
98
// https://learn.microsoft.com/en-us/cpp/cpp/fundamental-types-cpp?view=msvc-170#character-types
99
+ // Vita:
100
+ // Chars are signed by default on the Vita, and VITASDK follows that convention.
101
+ // https://github.com/vitasdk/buildscripts/blob/09c533b771591ecde88864b6acad28ffb688dbd4/patches/gcc/0001-gcc-10.patch#L33-L34
102
+ //
100
103
// L4Re:
101
- // The kernel builds with -funsigned-char on all targets (but useserspace follows the
104
+ // The kernel builds with -funsigned-char on all targets (but userspace follows the
102
105
// architecture defaults). As we only have a target for userspace apps so there are no
103
106
// special cases for L4Re below.
104
107
// https://github.com/rust-lang/rust/pull/132975#issuecomment-2484645240
105
108
if #[ cfg( all(
106
109
not( windows) ,
107
110
not( target_vendor = "apple" ) ,
111
+ not( target_os = "vita" ) ,
108
112
any(
109
113
target_arch = "aarch64" ,
110
114
target_arch = "arm" ,
You can’t perform that action at this time.
0 commit comments