Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Andreas_Schwab:riscv:chromium
nodejs-electron
InternalAllocator-too-many-initializers.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File InternalAllocator-too-many-initializers.patch of Package nodejs-electron
From ee6e6d3e45af1f7210e144a17f14fb21a7e86588 Mon Sep 17 00:00:00 2001 From: mikt <mikt@google.com> Date: Tue, 30 Jan 2024 03:09:24 +0000 Subject: [PATCH] [PA] Fix InternalAllocator for GCC builds Internal Allocator has a few missing member functions, that are required as a part of named requirement Allocator. https://en.cppreference.com/w/cpp/named_req/Allocator It broke builds on GCC, so adding these to fix. https://crrev.com/c/5196856/comments/0c4bbfd9_6433016b Change-Id: Ifce5f3e47c94c7bb1e298ac4cd7d0d1e4c6de59c Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5231905 Commit-Queue: Mikihito Matsuura <mikt@google.com> Reviewed-by: Kalvin Lee <kdlee@chromium.org> Reviewed-by: Takashi Sakamoto <tasak@google.com> Cr-Commit-Position: refs/heads/main@{#1253709} --- .../internal_allocator_forward.h | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/base/allocator/partition_allocator/src/partition_alloc/internal_allocator_forward.h b/base/allocator/partition_allocator/src/partition_alloc/internal_allocator_forward.h index 45fec29f8cc93..b31a145ff6e99 100644 --- a/base/allocator/partition_allocator/src/partition_alloc/internal_allocator_forward.h +++ b/base/allocator/partition_allocator/src/partition_alloc/internal_allocator_forward.h @@ -27,11 +27,24 @@ PartitionRoot& InternalAllocatorRoot(); template <typename T> class InternalAllocator { public: - // Member types required by allocator completeness requirements. using value_type = T; - using size_type = std::size_t; - using difference_type = std::ptrdiff_t; - using propagate_on_container_move_assignment = std::true_type; + using is_always_equal = std::true_type; + + InternalAllocator() = default; + + template <typename U> + InternalAllocator(const InternalAllocator<U>&) {} // NOLINT + + template <typename U> + InternalAllocator& operator=(const InternalAllocator<U>&) { + return *this; + } + + template <typename U> + bool operator==(const InternalAllocator<U>&) { + // InternalAllocator<T> can free allocations made by InternalAllocator<U>. + return true; + } value_type* allocate(std::size_t count);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor