Просмотр исходного кода

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 лет назад
Родитель
Сommit
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;
     using is_always_equal = std::true_type;
 
 
 public:
 public:
+    constexpr AlignmentAllocator() noexcept = default;
+
+    template <typename T2>
+    constexpr AlignmentAllocator(const AlignmentAllocator<T2, Align>&) noexcept {}
+
     pointer address(reference r) noexcept {
     pointer address(reference r) noexcept {
         return std::addressof(r);
         return std::addressof(r);
     }
     }