Browse Source

test: get around an unexpected optimiziation by clang

Michele Caini 2 years ago
parent
commit
48011dcbf8
1 changed files with 6 additions and 1 deletions
  1. 6 1
      test/entt/core/compressed_pair.cpp

+ 6 - 1
test/entt/core/compressed_pair.cpp

@@ -10,10 +10,15 @@
 #include <entt/core/compressed_pair.hpp>
 
 TEST(CompressedPair, Size) {
+    struct local {
+        int value;
+        test::empty empty;
+    };
+
     ASSERT_EQ(sizeof(entt::compressed_pair<int, int>), sizeof(int) * 2u);
     ASSERT_EQ(sizeof(entt::compressed_pair<test::empty, int>), sizeof(int));
     ASSERT_EQ(sizeof(entt::compressed_pair<int, test::empty>), sizeof(int));
-    ASSERT_LT(sizeof(entt::compressed_pair<int, test::empty>), sizeof(std::tuple<int, test::empty>));
+    ASSERT_LT(sizeof(entt::compressed_pair<int, test::empty>), sizeof(local));
     ASSERT_LT(sizeof(entt::compressed_pair<int, test::empty>), sizeof(std::pair<int, test::empty>));
 }