summaryrefslogtreecommitdiff
path: root/dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch')
-rw-r--r--dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch43
1 files changed, 43 insertions, 0 deletions
diff --git a/dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch b/dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch
new file mode 100644
index 000000000000..e2706b95fbac
--- /dev/null
+++ b/dev-libs/gobject-introspection/files/gobject-introspection-1.82.0-clang-glibc-2.41.patch
@@ -0,0 +1,43 @@
+https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/519
+https://gitlab.gnome.org/GNOME/gobject-introspection/-/commit/2812471365c75ab51347a9101771128f8ab283ab
+
+From 2812471365c75ab51347a9101771128f8ab283ab Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Bernhard=20Rosenkr=C3=A4nzer?= <bero@lindev.ch>
+Date: Sat, 8 Feb 2025 14:04:12 +0100
+Subject: [PATCH] Handle C99 _Complex declarations
+
+Fixes https://gitlab.gnome.org/GNOME/gobject-introspection/-/issues/519
+--- a/giscanner/scannerlexer.l
++++ b/giscanner/scannerlexer.l
+@@ -211,6 +211,7 @@ stringtext ([^\\\"])|(\\.)
+ "break" { return BREAK; }
+ "case" { return CASE; }
+ "char" { return BASIC_TYPE; }
++"_Complex" { return COMPLEX; }
+ "const" { return CONST; }
+ "continue" { return CONTINUE; }
+ "default" { return DEFAULT; }
+--- a/giscanner/scannerparser.y
++++ b/giscanner/scannerparser.y
+@@ -275,7 +275,7 @@ set_or_merge_base_type (GISourceType *type,
+ %token ELLIPSIS ADDEQ SUBEQ MULEQ DIVEQ MODEQ XOREQ ANDEQ OREQ SL SR
+ %token SLEQ SREQ EQ NOTEQ LTEQ GTEQ ANDAND OROR PLUSPLUS MINUSMINUS ARROW
+
+-%token AUTO BREAK CASE CONST CONTINUE DEFAULT DO ELSE ENUM
++%token AUTO BREAK CASE COMPLEX CONST CONTINUE DEFAULT DO ELSE ENUM
+ %token EXTENSION EXTERN FOR GOTO IF INLINE REGISTER RESTRICT
+ %token RETURN SHORT SIGNED SIZEOF STATIC STRUCT SWITCH THREAD_LOCAL TYPEDEF
+ %token UNION UNSIGNED VOID VOLATILE WHILE
+@@ -907,6 +907,10 @@ type_specifier
+ {
+ $$ = gi_source_type_new (CTYPE_VOID);
+ }
++ | COMPLEX
++ {
++ $$ = gi_source_basic_type_new ("_Complex");
++ }
+ | SIGNED
+ {
+ $$ = gi_source_basic_type_new ("signed");
+--
+GitLab