[libc][NFC] change isblank and iscntrl from implicit casting
authorMichael Jones <michaelrj@google.com>
Wed, 13 Jan 2021 21:36:05 +0000 (21:36 +0000)
committerMichael Jones <michaelrj@google.com>
Wed, 13 Jan 2021 22:06:56 +0000 (22:06 +0000)
isblank and iscntrl were casting an int to a char implicitly and this
was throwing errors under Fuchsia. I've added a static cast to resolve
this issue.

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D94634

libc/src/ctype/isblank.cpp
libc/src/ctype/iscntrl.cpp

index b29d19a..1c30613 100644 (file)
@@ -15,7 +15,7 @@ namespace __llvm_libc {
 // TODO: Currently restricted to default locale.
 // These should be extended using locale information.
 LLVM_LIBC_FUNCTION(int, isblank, (int c)) {
-  const unsigned char ch = c;
+  const unsigned char ch = static_cast<char>(c);
   return ch == ' ' || ch == '\t';
 }
 
index 8962bca..b061199 100644 (file)
@@ -15,7 +15,7 @@ namespace __llvm_libc {
 // TODO: Currently restricted to default locale.
 // These should be extended using locale information.
 LLVM_LIBC_FUNCTION(int, iscntrl, (int c)) {
-  const unsigned char ch = c;
+  const unsigned char ch = static_cast<char>(c);
   return ch < 0x20 || ch == 0x7f;
 }