diff options
Diffstat (limited to 'clang-tools-extra/clangd/index/Ref.cpp')
| -rw-r--r-- | clang-tools-extra/clangd/index/Ref.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/clang-tools-extra/clangd/index/Ref.cpp b/clang-tools-extra/clangd/index/Ref.cpp index 9eb645059b8..3f0fea5602a 100644 --- a/clang-tools-extra/clangd/index/Ref.cpp +++ b/clang-tools-extra/clangd/index/Ref.cpp @@ -51,9 +51,7 @@ RefSlab RefSlab::Builder::build() && { SymRefs.erase(std::unique(SymRefs.begin(), SymRefs.end()), SymRefs.end()); NumRefs += SymRefs.size(); - auto *Array = Arena.Allocate<Ref>(SymRefs.size()); - std::uninitialized_copy(SymRefs.begin(), SymRefs.end(), Array); - Result.emplace_back(Sym.first, llvm::ArrayRef<Ref>(Array, SymRefs.size())); + Result.emplace_back(Sym.first, llvm::ArrayRef<Ref>(SymRefs).copy(Arena)); } return RefSlab(std::move(Result), std::move(Arena), NumRefs); } |

