diff options
author | Roland McGrath <mcgrathr@google.com> | 2024-06-13 23:40:58 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-13 23:40:58 -0700 |
commit | 4ab37e430d960b975bfdaf95516a39ea3468f7a1 (patch) | |
tree | ae548dae9f8d8c7046a6ed7945a922c7c6151089 /llvm/lib/ProfileData/Coverage/CoverageMapping.cpp | |
parent | d890dda16bf65bc36b783194afbe2ebc3e709afb (diff) | |
download | llvm-4ab37e430d960b975bfdaf95516a39ea3468f7a1.zip llvm-4ab37e430d960b975bfdaf95516a39ea3468f7a1.tar.gz llvm-4ab37e430d960b975bfdaf95516a39ea3468f7a1.tar.bz2 |
[clang][Fuchsia] Use unsigned int for wint_t on *-fuchsia targets (#95499)
This aligns Fuchsia targets with other similar OS targets such as
Linux. Fuchsia's libc already uses unsigned rather than the
compiler-provided __WINT_TYPE__ macro for its wint_t typedef, so
this just makes the compiler consistent with the OS's actual ABI.
The only known manifestation of the mismatch is -Wformat warnings
for %lc no matching wint_t arguments.
The closest thing I could see to existing tests for each target's
wint_t type setting was the predefine tests that check various
macros including __WINT_TYPE__ on a per-machine and/or per-OS
basis. While the setting is done per-OS in most of the target
implementations rather than actually varying by machine, the only
existing tests for __WINT_TYPE__ are in per-machine checks that
are also wholly or partly tagged as per-OS. x86_64 and riscv64
tests for respective *-linux-gnu targets now check for the same
definitions in the respective *-fuchsia targets. __WINT_TYPE__
is not among the type checked in the aarch64 tests and those lack
a section that's specifically tested for aarch64-linux-gnu; if
such is added then it can similarly be made to check for most or
all of the same value on aarch64-fuchsia as aarch64-linux-gnu.
But since the actual implementation of choosing the type is done
per-OS and not per-machine for the three machines with Fuchsia
target support, the x86 and riscv64 tests are already redundantly
testing that same code and seem sufficient.
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMapping.cpp')
0 files changed, 0 insertions, 0 deletions