[libcxxabi] r344564 - NFC: Fix a -Wsign-conversion warning
Erik Pilkington
erik.pilkington at gmail.com
Mon Oct 15 15:03:53 PDT 2018
Author: epilk
Date: Mon Oct 15 15:03:53 2018
New Revision: 344564
URL: http://llvm.org/viewvc/llvm-project?rev=344564&view=rev
Log:
NFC: Fix a -Wsign-conversion warning
Modified:
libcxxabi/trunk/src/cxa_demangle.cpp
Modified: libcxxabi/trunk/src/cxa_demangle.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp?rev=344564&r1=344563&r2=344564&view=diff
==============================================================================
--- libcxxabi/trunk/src/cxa_demangle.cpp (original)
+++ libcxxabi/trunk/src/cxa_demangle.cpp Mon Oct 15 15:03:53 2018
@@ -114,14 +114,20 @@ struct DumpVisitor {
printStr("}");
--Depth;
}
+
// Overload used when T is exactly 'bool', not merely convertible to 'bool'.
- template<typename T, T * = (bool*)nullptr>
- void print(T B) {
- printStr(B ? "true" : "false");
+ void print(bool B) { printStr(B ? "true" : "false"); }
+
+ template <class T>
+ typename std::enable_if<std::is_unsigned<T>::value>::type print(T N) {
+ fprintf(stderr, "%llu", (unsigned long long)N);
}
- void print(size_t N) {
- fprintf(stderr, "%zu", N);
+
+ template <class T>
+ typename std::enable_if<std::is_signed<T>::value>::type print(T N) {
+ fprintf(stderr, "%lld", (long long)N);
}
+
void print(ReferenceKind RK) {
switch (RK) {
case ReferenceKind::LValue:
More information about the libcxx-commits
mailing list