[libcxx-commits] [libcxx] r361917 - Fix build breakage on 32-bit machines

Eric Fiselier via libcxx-commits libcxx-commits at lists.llvm.org
Tue May 28 19:38:19 PDT 2019


Author: ericwf
Date: Tue May 28 19:38:19 2019
New Revision: 361917

URL: http://llvm.org/viewvc/llvm-project?rev=361917&view=rev
Log:
Fix build breakage on 32-bit machines

Modified:
    libcxx/trunk/include/typeinfo

Modified: libcxx/trunk/include/typeinfo
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/typeinfo?rev=361917&r1=361916&r2=361917&view=diff
==============================================================================
--- libcxx/trunk/include/typeinfo (original)
+++ libcxx/trunk/include/typeinfo Tue May 28 19:38:19 2019
@@ -237,7 +237,10 @@ struct __type_info_implementations {
     }
 
    private:
-    typedef std::integral_constant<__type_name_t, (1ULL << 63)> __non_unique_rtti_bit;
+    // The unique bit is the top bit. It is expected that __type_name_t is 64 bits when
+    // this implementation is actually used.
+    typedef std::integral_constant<__type_name_t,
+      (1ULL << ((__CHAR_BIT__ * sizeof(__type_name_t)) - 1))> __non_unique_rtti_bit;
 
     _LIBCPP_INLINE_VISIBILITY
     static bool __is_type_name_unique(__type_name_t __lhs) _NOEXCEPT {




More information about the libcxx-commits mailing list