git: 82a3337952b9 - main - pmc: Use isascii(3) to check if a character is ASCII
John Baldwin <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.cvs.src,gmane.os.freebsd.current.scm |
|---|---|
| Message-ID | <[email protected]> |
The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=82a3337952b922c48c55d1359ab0472f1d116c7a commit 82a3337952b922c48c55d1359ab0472f1d116c7a Author: John Baldwin <[email protected]> AuthorDate: 2026-08-21 20:19:56 +0000 Commit: John Baldwin <[email protected]> CommitDate: 2026-08-21 20:56:05 +0000 pmc: Use isascii(3) to check if a character is ASCII The previous check did not work on architectures where `char` is unsigned as noted by GCC on aarch64: usr.sbin/pmc/view.cc: In member function 'void pmcview::loadsymboltable(image*, Elf*, Elf_Scn*, GElf_Shdr*)': usr.sbin/pmc/view.cc:627:38: error: comparison is always false due to limited range of data type [-Werror=type-limits] 627 | if (fname[i] < 0) { | ~~~~~~~~~^~~ Reported by: GCC 15 --- usr.sbin/pmc/view.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/pmc/view.cc b/usr.sbin/pmc/view.cc index a678c061d490..f3585ac75043 100644 --- a/usr.sbin/pmc/view.cc +++ b/usr.sbin/pmc/view.cc @@ -624,7 +624,7 @@ pmcview::loadsymboltable(image *im, Elf *e, Elf_Scn *scn, GElf_Shdr *sh) // XXX: Extra checks to make sure we don't get corrupted for (int i = 0; fname[i] != 0 && i < 32; i++) { - if (fname[i] < 0) { + if (!isascii(fname[i])) { printf("EEEK SYMBOL\n"); printf("%s\n", fname); assert(false);