Преглед изворни кода

alignment: Resolve allocator construction issues on debug

This was related to the source allocator being passed into the
constructor potentially having a different type than allocator being
constructed.

We simply need to provide a constructor to handle this case.

This resolves issues related to the allocator causing debug builds on
MSVC to fail.
Lioncash пре 6 година
родитељ
комит
57ffada746
1 измењених фајлова са 5 додато и 0 уклоњено
  1. 5 0
      src/common/alignment.h

+ 5 - 0
src/common/alignment.h

@@ -57,6 +57,11 @@ public:
     using is_always_equal = std::true_type;
 
 public:
+    constexpr AlignmentAllocator() noexcept = default;
+
+    template <typename T2>
+    constexpr AlignmentAllocator(const AlignmentAllocator<T2, Align>&) noexcept {}
+
     pointer address(reference r) noexcept {
         return std::addressof(r);
     }