summaryrefslogtreecommitdiff
path: root/chromium-125-lp155-typename.patch
diff options
context:
space:
mode:
Diffstat (limited to 'chromium-125-lp155-typename.patch')
-rw-r--r--chromium-125-lp155-typename.patch376
1 files changed, 376 insertions, 0 deletions
diff --git a/chromium-125-lp155-typename.patch b/chromium-125-lp155-typename.patch
new file mode 100644
index 0000000..9c10a00
--- /dev/null
+++ b/chromium-125-lp155-typename.patch
@@ -0,0 +1,376 @@
+
+fixed error: missing 'typename' prior to dependent type name
+
+Index: chromium-123.0.6312.46/base/containers/map_util.h
+===================================================================
+--- chromium-123.0.6312.46.orig/base/containers/map_util.h
++++ chromium-123.0.6312.46/base/containers/map_util.h
+@@ -42,7 +42,7 @@ constexpr internal::MappedType<Map>* Fin
+ template <typename Map,
+ typename Key,
+ typename MappedElementType =
+- std::pointer_traits<internal::MappedType<Map>>::element_type>
++ typename std::pointer_traits<internal::MappedType<Map>>::element_type>
+ constexpr const MappedElementType* FindPtrOrNull(const Map& map,
+ const Key& key) {
+ auto it = map.find(key);
+@@ -60,7 +60,7 @@
+ template <typename Map,
+ typename Key,
+ typename MappedElementType =
+- std::pointer_traits<internal::MappedType<Map>>::element_type>
++ typename std::pointer_traits<internal::MappedType<Map>>::element_type>
+ constexpr MappedElementType* FindPtrOrNull(Map& map, const Key& key) {
+ auto it = map.find(key);
+ return it != map.end() ? base::to_address(it->second) : nullptr;
+Index: chromium-123.0.6312.46/base/functional/bind_internal.h
+===================================================================
+--- chromium-123.0.6312.46.orig/base/functional/bind_internal.h
++++ chromium-123.0.6312.46/base/functional/bind_internal.h
+@@ -1497,11 +1497,11 @@ template <int i,
+ typename Param>
+ struct ParamCanBeBound {
+ private:
+- using UnwrappedParam = BindArgument<i>::template ForwardedAs<
++ using UnwrappedParam = typename BindArgument<i>::template ForwardedAs<
+ Unwrapped>::template ToParamWithType<Param>;
+- using ParamStorage = BindArgument<i>::template ToParamWithType<
++ using ParamStorage = typename BindArgument<i>::template ToParamWithType<
+ Param>::template StoredAs<Storage>;
+- using BoundStorage =
++ using BoundStorage = typename
+ BindArgument<i>::template BoundAs<Arg>::template StoredAs<Storage>;
+
+ template <bool v = !UnwrappedParam::kRawPtr ||
+Index: chromium-123.0.6312.46/chrome/browser/download/bubble/download_bubble_update_service.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/chrome/browser/download/bubble/download_bubble_update_service.cc
++++ chromium-123.0.6312.46/chrome/browser/download/bubble/download_bubble_update_service.cc
+@@ -90,7 +90,7 @@ ItemSortKey GetSortKey(const Item& item)
+ // Helper to get an iterator to the last element in the cache. The cache
+ // must not be empty.
+ template <typename Item>
+-SortedItems<Item>::const_iterator GetLastIter(const SortedItems<Item>& cache) {
++typename SortedItems<Item>::const_iterator GetLastIter(const SortedItems<Item>& cache) {
+ CHECK(!cache.empty());
+ auto it = cache.end();
+ return std::prev(it);
+@@ -1090,9 +1090,9 @@ bool DownloadBubbleUpdateService::CacheM
+ }
+
+ template <typename Id, typename Item>
+-SortedItems<Item>::iterator
++typename SortedItems<Item>::iterator
+ DownloadBubbleUpdateService::CacheManager::RemoveItemFromCacheByIter(
+- SortedItems<Item>::iterator iter,
++ typename SortedItems<Item>::iterator iter,
+ SortedItems<Item>& cache,
+ IterMap<Id, Item>& iter_map) {
+ CHECK(iter != cache.end());
+Index: chromium-123.0.6312.46/components/optimization_guide/core/model_execution/model_execution_util.h
+===================================================================
+--- chromium-123.0.6312.46.orig/components/optimization_guide/core/model_execution/model_execution_util.h
++++ chromium-123.0.6312.46/components/optimization_guide/core/model_execution/model_execution_util.h
+@@ -25,7 +25,7 @@ void SetExecutionRequestTemplate(
+
+ // Request is set by the feature and should always be typed.
+ auto typed_request =
+- static_cast<const FeatureType::Request&>(request_metadata);
++ static_cast<const typename FeatureType::Request&>(request_metadata);
+ *(logging_data->mutable_request_data()) = typed_request;
+ }
+
+Index: chromium-123.0.6312.46/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+===================================================================
+--- chromium-123.0.6312.46.orig/components/optimization_guide/core/model_quality/model_quality_log_entry.h
++++ chromium-123.0.6312.46/components/optimization_guide/core/model_quality/model_quality_log_entry.h
+@@ -29,7 +29,7 @@ class ModelQualityLogEntry {
+ }
+
+ template <typename FeatureType>
+- FeatureType::Quality* quality_data() {
++ typename FeatureType::Quality* quality_data() {
+ return FeatureType::GetLoggingData(*log_ai_data_request_)
+ ->mutable_quality_data();
+ }
+Index: chromium-123.0.6312.46/components/optimization_guide/core/tflite_model_executor.h
+===================================================================
+--- chromium-123.0.6312.46.orig/components/optimization_guide/core/tflite_model_executor.h
++++ chromium-123.0.6312.46/components/optimization_guide/core/tflite_model_executor.h
+@@ -242,7 +242,7 @@ class TFLiteModelExecutor : public Model
+ void SendForBatchExecution(
+ BatchExecutionCallback callback_on_complete,
+ base::TimeTicks start_time,
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
+ override {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+@@ -264,7 +264,7 @@ class TFLiteModelExecutor : public Model
+ // Starts the synchronous execution of the model. Returns model outputs.
+ // Model needs to be loaded. Synchronous calls do not load or unload model.
+ std::vector<std::optional<OutputType>> SendForBatchExecutionSync(
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs)
+ override {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+@@ -422,7 +422,7 @@ class TFLiteModelExecutor : public Model
+ // executes it on the model execution thread.
+ void LoadModelFileAndBatchExecute(
+ BatchExecutionCallback callback_on_complete,
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) {
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs) {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+
+@@ -439,7 +439,7 @@ class TFLiteModelExecutor : public Model
+
+ // Batch executes the loaded model for inputs.
+ void BatchExecuteLoadedModel(
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs,
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs,
+ std::vector<std::optional<OutputType>>* outputs) {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+@@ -499,7 +499,7 @@ class TFLiteModelExecutor : public Model
+ // Unloads the model if needed.
+ void BatchExecuteLoadedModelAndRunCallback(
+ BatchExecutionCallback callback_on_complete,
+- ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs,
++ typename ModelExecutor<OutputType, InputType>::ConstRefInputVector inputs,
+ ExecutionStatus execution_status) {
+ DCHECK(execution_task_runner_->RunsTasksInCurrentSequence());
+ DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
+Index: chromium-123.0.6312.46/mojo/public/cpp/bindings/array_traits.h
+===================================================================
+--- chromium-123.0.6312.46.orig/mojo/public/cpp/bindings/array_traits.h
++++ chromium-123.0.6312.46/mojo/public/cpp/bindings/array_traits.h
+@@ -90,7 +90,7 @@ template <typename Container>
+ { c[i] } -> std::same_as<typename Container::reference>;
+ }
+ struct ArrayTraits<Container> {
+- using Element = Container::value_type;
++ using Element = typename Container::value_type;
+
+ // vector-like containers have no built-in null.
+ static bool IsNull(const Container& c) { return false; }
+Index: chromium-123.0.6312.46/third_party/blink/renderer/bindings/core/v8/async_iterable.h
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/blink/renderer/bindings/core/v8/async_iterable.h
++++ chromium-123.0.6312.46/third_party/blink/renderer/bindings/core/v8/async_iterable.h
+@@ -245,7 +245,7 @@
+ private:
+ virtual IterationSource* CreateIterationSource(
+ ScriptState* script_state,
+- IterationSource::Kind kind,
++ typename IterationSource::Kind kind,
+ InitArgs... args,
+ ExceptionState& exception_state) = 0;
+ };
+@@ -291,7 +291,7 @@
+ private:
+ virtual IterationSource* CreateIterationSource(
+ ScriptState* script_state,
+- IterationSource::Kind kind,
++ typename IterationSource::Kind kind,
+ InitArgs... args,
+ ExceptionState& exception_state) = 0;
+ };
+Index: chromium-123.0.6312.46/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
++++ chromium-123.0.6312.46/third_party/blink/renderer/core/html/parser/html_document_parser_fastpath.cc
+@@ -210,7 +210,7 @@ class HTMLFastPathParser {
+ using Span = base::span<const Char>;
+ using USpan = base::span<const UChar>;
+ // 32 matches that used by HTMLToken::Attribute.
+- typedef std::conditional<std::is_same_v<Char, UChar>,
++ typedef typename std::conditional<std::is_same_v<Char, UChar>,
+ UCharLiteralBuffer<32>,
+ LCharLiteralBuffer<32>>::type LiteralBufferType;
+ static_assert(std::is_same_v<Char, UChar> || std::is_same_v<Char, LChar>);
+Index: chromium-123.0.6312.46/base/functional/function_ref.h
+===================================================================
+--- chromium-123.0.6312.46.orig/base/functional/function_ref.h
++++ chromium-123.0.6312.46/base/functional/function_ref.h
+@@ -64,7 +64,7 @@ class FunctionRef;
+ template <typename R, typename... Args>
+ class FunctionRef<R(Args...)> {
+ template <typename Functor,
+- typename RunType = internal::FunctorTraits<Functor>::RunType>
++ typename RunType = typename internal::FunctorTraits<Functor>::RunType>
+ static constexpr bool kCompatibleFunctor =
+ std::convertible_to<internal::ExtractReturnType<RunType>, R> &&
+ std::same_as<internal::ExtractArgs<RunType>, internal::TypeList<Args...>>;
+Index: chromium-123.0.6312.46/base/containers/heap_array.h
+===================================================================
+--- chromium-123.0.6312.46.orig/base/containers/heap_array.h
++++ chromium-123.0.6312.46/base/containers/heap_array.h
+@@ -32,8 +32,8 @@
+ static_assert(!std::is_reference_v<T>,
+ "HeapArray cannot hold reference types");
+
+- using iterator = base::span<T>::iterator;
+- using const_iterator = base::span<const T>::iterator;
++ using iterator = typename base::span<T>::iterator;
++ using const_iterator = typename base::span<const T>::iterator;
+ // We don't put this default value in the template parameter list to allow the
+ // static_assert on is_reference_v to give a nicer error message.
+ using deleter_type = std::
+Index: chromium-123.0.6312.46/mojo/public/cpp/bindings/type_converter.h
+===================================================================
+--- chromium-123.0.6312.46.orig/mojo/public/cpp/bindings/type_converter.h
++++ chromium-123.0.6312.46/mojo/public/cpp/bindings/type_converter.h
+@@ -127,7 +127,7 @@ using VecValueType = typename Vec::value
+
+ template <typename Vec>
+ using VecPtrLikeUnderlyingValueType =
+- std::pointer_traits<VecValueType<Vec>>::element_type;
++ typename std::pointer_traits<VecValueType<Vec>>::element_type;
+
+ } // namespace internal
+
+Index: chromium-123.0.6312.46/third_party/blink/renderer/platform/wtf/hash_table.h
+===================================================================
+--- chromium-123.0.6312.46.orig/third_party/blink/renderer/platform/wtf/hash_table.h
++++ chromium-123.0.6312.46/third_party/blink/renderer/platform/wtf/hash_table.h
+@@ -2004,7 +2004,7 @@ struct HashTableConstIteratorAdapter {
+ static_assert(!IsTraceable<typename Traits::TraitType>::value);
+
+ using iterator_category = std::bidirectional_iterator_tag;
+- using value_type = HashTableType::ValueType;
++ using value_type = typename HashTableType::ValueType;
+ using difference_type = ptrdiff_t;
+ using pointer = value_type*;
+ using reference = value_type&;
+@@ -2056,7 +2056,7 @@ struct HashTableConstIteratorAdapter<
+
+ public:
+ using iterator_category = std::bidirectional_iterator_tag;
+- using value_type = HashTableType::ValueType;
++ using value_type = typename HashTableType::ValueType;
+ using difference_type = ptrdiff_t;
+ using pointer = value_type*;
+ using reference = value_type&;
+@@ -2110,7 +2110,7 @@ struct HashTableIteratorAdapter {
+ static_assert(!IsTraceable<typename Traits::TraitType>::value);
+
+ using iterator_category = std::bidirectional_iterator_tag;
+- using value_type = HashTableType::ValueType;
++ using value_type = typename HashTableType::ValueType;
+ using difference_type = ptrdiff_t;
+ using pointer = value_type*;
+ using reference = value_type&;
+@@ -2158,7 +2158,7 @@ struct HashTableIteratorAdapter<
+
+ public:
+ using iterator_category = std::bidirectional_iterator_tag;
+- using value_type = HashTableType::ValueType;
++ using value_type = typename HashTableType::ValueType;
+ using difference_type = ptrdiff_t;
+ using pointer = value_type*;
+ using reference = value_type&;
+Index: chromium-123.0.6312.46/base/types/fixed_array.h
+===================================================================
+--- chromium-123.0.6312.46.orig/base/types/fixed_array.h
++++ chromium-123.0.6312.46/base/types/fixed_array.h
+@@ -27,8 +27,8 @@ template <typename T,
+ class FixedArray : public absl::FixedArray<T, N, A> {
+ public:
+ using absl::FixedArray<T, N, A>::FixedArray;
+- explicit FixedArray(absl::FixedArray<T, N, A>::size_type n,
+- const absl::FixedArray<T, N, A>::allocator_type& a =
++ explicit FixedArray(typename absl::FixedArray<T, N, A>::size_type n,
++ const typename absl::FixedArray<T, N, A>::allocator_type& a =
+ typename absl::FixedArray<T, N, A>::allocator_type())
+ : FixedArray(n, T(), a) {}
+ };
+Index: chromium-123.0.6312.46/chrome/browser/web_applications/commands/internal/command_internal.h
+===================================================================
+--- chromium-123.0.6312.46.orig/chrome/browser/web_applications/commands/internal/command_internal.h
++++ chromium-123.0.6312.46/chrome/browser/web_applications/commands/internal/command_internal.h
+@@ -121,7 +121,7 @@ class CommandBase {
+ template <typename LockType>
+ class CommandWithLock : public CommandBase {
+ public:
+- using LockDescription = LockType::LockDescription;
++ using LockDescription = typename LockType::LockDescription;
+ explicit CommandWithLock(const std::string& name,
+ LockDescription initial_lock_request);
+
+Index: chromium-123.0.6312.46/chrome/browser/web_applications/commands/web_app_command.h
+===================================================================
+--- chromium-123.0.6312.46.orig/chrome/browser/web_applications/commands/web_app_command.h
++++ chromium-123.0.6312.46/chrome/browser/web_applications/commands/web_app_command.h
+@@ -106,7 +106,7 @@ class WebAppLockManager;
+ template <typename LockType, typename... CallbackArgs>
+ class WebAppCommand : public internal::CommandWithLock<LockType> {
+ public:
+- using LockDescription = LockType::LockDescription;
++ using LockDescription = typename LockType::LockDescription;
+ using CallbackType = base::OnceCallback<void(CallbackArgs...)>;
+ using ShutdownArgumentsTuple = std::tuple<std::decay_t<CallbackArgs>...>;
+
+Index: chromium-123.0.6312.46/chrome/browser/web_applications/web_app_command_scheduler.h
+===================================================================
+--- chromium-123.0.6312.46.orig/chrome/browser/web_applications/web_app_command_scheduler.h
++++ chromium-123.0.6312.46/chrome/browser/web_applications/web_app_command_scheduler.h
+@@ -363,7 +363,7 @@ class WebAppCommandScheduler {
+ // command system.
+ template <typename LockType>
+ void ScheduleCallback(const std::string& operation_name,
+- LockType::LockDescription lock_description,
++ typename LockType::LockDescription lock_description,
+ CallbackCommand<LockType, void> callback,
+ base::OnceClosure on_complete,
+ const base::Location& location = FROM_HERE) {
+@@ -381,7 +381,7 @@ class WebAppCommandScheduler {
+ typename CallbackReturnValue = std::decay_t<CompletionCallbackArg>>
+ void ScheduleCallbackWithResult(
+ const std::string& operation_name,
+- LockType::LockDescription lock_description,
++ typename LockType::LockDescription lock_description,
+ CallbackCommand<LockType, CallbackReturnValue> callback,
+ base::OnceCallback<void(CompletionCallbackArg)> on_complete,
+ CallbackReturnValue arg_for_shutdown,
+Index: chromium-123.0.6312.46/components/supervised_user/core/browser/proto_fetcher.h
+===================================================================
+--- chromium-123.0.6312.46.orig/components/supervised_user/core/browser/proto_fetcher.h
++++ chromium-123.0.6312.46/components/supervised_user/core/browser/proto_fetcher.h
+@@ -424,7 +424,7 @@ class RetryingFetcherImpl final : public
+ RetryingFetcherImpl(const RetryingFetcherImpl&) = delete;
+ RetryingFetcherImpl& operator=(const RetryingFetcherImpl&) = delete;
+
+- void Start(ProtoFetcher<Response>::Callback callback) override {
++ void Start(typename ProtoFetcher<Response>::Callback callback) override {
+ callback_ = std::move(callback);
+ Retry();
+ }
+@@ -469,7 +469,7 @@ class RetryingFetcherImpl final : public
+ }
+
+ // Client callback.
+- TypedProtoFetcher<Response>::Callback callback_;
++ typename TypedProtoFetcher<Response>::Callback callback_;
+
+ // Retry controls.
+ base::OneShotTimer timer_;
+@@ -490,7 +490,7 @@ class ParallelFetchManager {
+ // Deferred fetcher is required because it should be started after it is
+ // stored internally.
+ using Fetcher = ProtoFetcher<Response>;
+- using KeyType = base::IDMap<std::unique_ptr<Fetcher>>::KeyType;
++ using KeyType = typename base::IDMap<std::unique_ptr<Fetcher>>::KeyType;
+
+ public:
+ // Provides fresh instances of a deferred fetcher for each fetch.
+@@ -506,7 +506,7 @@ class ParallelFetchManager {
+
+ // Starts the fetch. Underlying fetcher is stored internally, and will be
+ // cleaned up after finish or when this manager is destroyed.
+- void Fetch(const Request& request, Fetcher::Callback callback) {
++ void Fetch(const Request& request, typename Fetcher::Callback callback) {
+ CHECK(callback) << "Use base::DoNothing() instead of empty callback.";
+ KeyType key = requests_in_flight_.Add(MakeFetcher(request));
+ requests_in_flight_.Lookup(key)->Start(