From 2dddefa150b4fa21a8ab02dac9b49160a84bdcb8 Mon Sep 17 00:00:00 2001 From: "Tobias C. Berner" Date: Sat, 24 Jul 2021 09:21:28 +0200 Subject: [PATCH] x11-toolkits/scintilla: prepare for glib-2.68.3 Add upstream fix removing 'volatile' Obtained from: https://sourceforge.net/p/scintilla/code/ci/790bfd4c0747 PR: 256200 --- ...patch-hg_8719-790bfd4c0747_fix-glib_2.68.3 | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 x11-toolkits/scintilla/files/patch-hg_8719-790bfd4c0747_fix-glib_2.68.3 diff --git a/x11-toolkits/scintilla/files/patch-hg_8719-790bfd4c0747_fix-glib_2.68.3 b/x11-toolkits/scintilla/files/patch-hg_8719-790bfd4c0747_fix-glib_2.68.3 new file mode 100644 index 000000000000..9615fc336296 --- /dev/null +++ b/x11-toolkits/scintilla/files/patch-hg_8719-790bfd4c0747_fix-glib_2.68.3 @@ -0,0 +1,33 @@ +# HG changeset patch +# User Neil Hodgson +# Date 1619159850 -36000 +# Fri Apr 23 16:37:30 2021 +1000 +# Node ID 790bfd4c0747eb5e0bc4d627a101298207a8421e +# Parent bf180d712ff771fe40a2d5dc178fa0a15cf14b2d +Remove volatile qualifiers as they cause an error with Clang 12. +The glib documentation shows use without volatile and mentions that - + While location has a volatile qualifier, this is a historical artifact and + the pointer passed to it should not be volatile. +https://developer.gnome.org/glib/stable/glib-Threads.html#g-once-init-enter + +diff -r bf180d712ff7 -r 790bfd4c0747 gtk/ScintillaGTKAccessible.cxx +--- gtk/ScintillaGTKAccessible.cxx Fri Apr 23 16:05:55 2021 +1000 ++++ gtk/ScintillaGTKAccessible.cxx Fri Apr 23 16:37:30 2021 +1000 +@@ -1008,7 +1008,7 @@ + + // @p parent_type is only required on GTK 3.2 to 3.6, and only on the first call + static GType scintilla_object_accessible_get_type(GType parent_type G_GNUC_UNUSED) { +- static volatile gsize type_id_result = 0; ++ static gsize type_id_result = 0; + + if (g_once_init_enter(&type_id_result)) { + GTypeInfo tinfo = { +@@ -1099,7 +1099,7 @@ + #if HAVE_GTK_A11Y_H // just instantiate the accessible + *cache = scintilla_object_accessible_new(0, G_OBJECT(widget)); + #elif HAVE_GTK_FACTORY // register in the factory and let GTK instantiate +- static volatile gsize registered = 0; ++ static gsize registered = 0; + + if (g_once_init_enter(®istered)) { + // Figure out whether accessibility is enabled by looking at the type of the accessible