Skip to content
Snippets Groups Projects
Commit 4b211242 authored by Jan Beich's avatar Jan Beich
Browse files

devel/glib20: unbreak some C++ consumers after 27fe5eff

$ make -C lang/gjs
[...]
../util/log.cpp:106:25: error: no matching function for call to 'strcmp'
    if (debug_output && g_str_equal(debug_output, "stderr")) {
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/glib-2.0/glib/ghash.h:165:30: note: expanded from macro 'g_str_equal'
 #define g_str_equal(v1, v2) (strcmp ((gconstpointer) (v1), (gconstpointer) (v2)) == 0)
                              ^~~~~~
/usr/include/string.h:82:6: note: candidate function not viable: cannot convert argument of incomplete type 'gconstpointer' (aka 'const void *') to 'const char *' for 1st argument
int      strcmp(const char *, const char *) __pure;
         ^

Reported by:	fluffy, cmt
Regressed by:	https://gitlab.gnome.org/GNOME/glib/-/commit/b46ed37c972f
parent 534a1aab
No related branches found
No related tags found
No related merge requests found
PORTNAME= glib
DISTVERSION= 2.74.2
PORTREVISION= 1
PORTEPOCH= 2
CATEGORIES= devel
MASTER_SITES= GNOME
......
https://gitlab.gnome.org/GNOME/glib/-/issues/2820
--- glib/ghash.h.orig 2022-11-24 12:29:05 UTC
+++ glib/ghash.h
@@ -162,7 +162,7 @@ gboolean g_str_equal (gconstpointer v1,
gconstpointer v2);
/* Macro for optimization in the case it is not used as callback function */
-#define g_str_equal(v1, v2) (strcmp ((gconstpointer) (v1), (gconstpointer) (v2)) == 0)
+#define g_str_equal(v1, v2) (strcmp ((const char *) (v1), (const char *) (v2)) == 0)
GLIB_AVAILABLE_IN_ALL
guint g_str_hash (gconstpointer v);
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment