--- patch103/base/compiler_specific.h 2022-06-08 18:02:54.000000000 +0200 +++ patch103/base/compiler_specific.h.fix-build-clang11-nomerge 2022-06-16 11:11:06.318888678 +0200 @@ -329,7 +329,8 @@ inline constexpr bool AnalyzerAssumeTrue #endif // defined(__clang_analyzer__) // Use nomerge attribute to disable optimization of merging multiple same calls. -#if defined(__clang__) && HAS_ATTRIBUTE(nomerge) +#if defined(__clang__) && (__clang_major__ >= 12) && \ + __has_attribute(nomerge) && !defined(OS_CHROMEOS) #define NOMERGE [[clang::nomerge]] #else #define NOMERGE --- patch104/base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h 2022-07-20 20:45:48.000000000 +0200 +++ patch104/base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h-nomerge 2022-07-28 10:43:52.420346483 +0200 @@ -314,7 +314,7 @@ inline constexpr bool AnalyzerAssumeTrue #endif // defined(__clang_analyzer__) // Use nomerge attribute to disable optimization of merging multiple same calls. -#if defined(__clang__) && PA_HAS_ATTRIBUTE(nomerge) +#if defined(__clang__) && PA_HAS_ATTRIBUTE(nomerge) && (__clang_major__ >= 12) #define PA_NOMERGE [[clang::nomerge]] #else #define PA_NOMERGE --- patch/base/check.h 2022-08-24 22:27:56.000000000 +0200 +++ patch/base/check.h.fix-build-clang11-nomerge 2022-08-28 10:17:58.836057058 +0200 @@ -87,7 +87,7 @@ class BASE_EXPORT CheckError { // Stream for adding optional details to the error message. std::ostream& stream(); - NOMERGE ~CheckError(); + ~CheckError(); CheckError(const CheckError&) = delete; CheckError& operator=(const CheckError&) = delete;