[PATCH] Tame a few enum size tests when using -fshort-enums on ARM.
Jon Roelofs
jonathan at codesourcery.com
Tue Aug 12 09:54:36 PDT 2014
Hi mclow.lists,
http://reviews.llvm.org/D4869
Files:
libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
Index: libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
===================================================================
--- libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
+++ libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_signed.pass.cpp
@@ -52,7 +52,11 @@
test_make_signed< unsigned long long, signed long long >();
test_make_signed< wchar_t, std::conditional<sizeof(wchar_t) == 4, int, short>::type >();
test_make_signed< const wchar_t, std::conditional<sizeof(wchar_t) == 4, const int, const short>::type >();
+#if defined(__ARM_SIZEOF_MINIMAL_ENUM) && __ARM_SIZEOF_MINIMAL_ENUM == 1
+ test_make_signed< const Enum, const signed char >();
+#else
test_make_signed< const Enum, const int >();
+#endif
test_make_signed< BigEnum, std::conditional<sizeof(long) == 4, long long, long>::type >();
#ifndef _LIBCPP_HAS_NO_INT128
test_make_signed< __int128_t, __int128_t >();
Index: libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
===================================================================
--- libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
+++ libcxx/test/utilities/meta/meta.trans/meta.trans.sign/make_unsigned.pass.cpp
@@ -52,7 +52,11 @@
test_make_unsigned<unsigned long long, unsigned long long> ();
test_make_unsigned<wchar_t, std::conditional<sizeof(wchar_t) == 4, unsigned int, unsigned short>::type> ();
test_make_unsigned<const wchar_t, std::conditional<sizeof(wchar_t) == 4, const unsigned int, const unsigned short>::type> ();
+#if defined(__ARM_SIZEOF_MINIMAL_ENUM) && __ARM_SIZEOF_MINIMAL_ENUM == 1
+ test_make_unsigned<const Enum, const unsigned char> ();
+#else
test_make_unsigned<const Enum, const unsigned int> ();
+#endif
test_make_unsigned<BigEnum,
std::conditional<sizeof(long) == 4, unsigned long long, unsigned long>::type> ();
#ifndef _LIBCPP_HAS_NO_INT128
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D4869.12402.patch
Type: text/x-patch
Size: 1994 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140812/388b45f8/attachment.bin>
More information about the cfe-commits
mailing list