summaryrefslogtreecommitdiff
path: root/Build/source/libs/cairo/TLpatches/patch-04-void-casts
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/cairo/TLpatches/patch-04-void-casts')
-rw-r--r--Build/source/libs/cairo/TLpatches/patch-04-void-casts36
1 files changed, 36 insertions, 0 deletions
diff --git a/Build/source/libs/cairo/TLpatches/patch-04-void-casts b/Build/source/libs/cairo/TLpatches/patch-04-void-casts
new file mode 100644
index 00000000000..db630ad8ddf
--- /dev/null
+++ b/Build/source/libs/cairo/TLpatches/patch-04-void-casts
@@ -0,0 +1,36 @@
+Cast __pixman_{transparent,black,white}_image pointers to void**
+to placate -Wincompatible-pointer-types, which is likely
+to become an error in GCC 14.
+https://tug.org/pipermail/tex-live/2024-January/049794.html
+
+Index: cairo-image-source.c
+===================================================================
+--- cairo-image-source.c (revision 69517)
++++ cairo-image-source.c (working copy)
+@@ -86,7 +86,7 @@
+ if (unlikely (image == NULL))
+ return NULL;
+
+- if (_cairo_atomic_ptr_cmpxchg (&__pixman_transparent_image,
++ if (_cairo_atomic_ptr_cmpxchg ((void **) &__pixman_transparent_image,
+ NULL, image))
+ {
+ pixman_image_ref (image);
+@@ -118,7 +118,7 @@
+ if (unlikely (image == NULL))
+ return NULL;
+
+- if (_cairo_atomic_ptr_cmpxchg (&__pixman_black_image,
++ if (_cairo_atomic_ptr_cmpxchg ((void **) &__pixman_black_image,
+ NULL, image))
+ {
+ pixman_image_ref (image);
+@@ -150,7 +150,7 @@
+ if (unlikely (image == NULL))
+ return NULL;
+
+- if (_cairo_atomic_ptr_cmpxchg (&__pixman_white_image,
++ if (_cairo_atomic_ptr_cmpxchg ((void **) &__pixman_white_image,
+ NULL, image))
+ {
+ pixman_image_ref (image);