summaryrefslogtreecommitdiffstats
path: root/development/protobuf3/gcc12.patch
blob: 866977ecdb144bc04f2c85eaefeb2c5d7983f0c2 (plain)
From b180b2809f7e77fdf7dd075d26a7421085bac58f Mon Sep 17 00:00:00 2001
From: Adam Cozzette <acozzette@google.com>
Date: Mon, 9 May 2022 13:15:44 -0700
Subject: [PATCH] Use __constinit only in GCC 12.2 and up (#9936)

Fixes #9916. GCC appears to have a bug preventing our use of __constinit
from working correctly, but this bug will be fixed in GCC 12.2.
---
 src/google/protobuf/port_def.inc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/google/protobuf/port_def.inc b/src/google/protobuf/port_def.inc
index dcb0ff758f..289a42674c 100644
--- a/src/google/protobuf/port_def.inc
+++ b/src/google/protobuf/port_def.inc
@@ -650,7 +650,7 @@
      (!defined(__APPLE__) && __clang_major__ >= 12))
 #define PROTOBUF_CONSTINIT [[clang::require_constant_initialization]]
 #define PROTOBUF_CONSTEXPR constexpr
-#elif PROTOBUF_GNUC_MIN(12, 0)
+#elif PROTOBUF_GNUC_MIN(12, 2)
 #define PROTOBUF_CONSTINIT __constinit
 #define PROTOBUF_CONSTEXPR constexpr
 #else