diff options
Diffstat (limited to 'gio/src/settings.ccg')
-rw-r--r-- | gio/src/settings.ccg | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/gio/src/settings.ccg b/gio/src/settings.ccg index 7343bb64..1651c0d5 100644 --- a/gio/src/settings.ccg +++ b/gio/src/settings.ccg @@ -33,7 +33,11 @@ struct SettingsMapSlots Gio::Settings::SlotSetMapping from_property_to_setting; }; -gboolean +extern "C" +{ +// Shall be static. Non-static functions with C linkage get external linkage, +// even if they are defined in an anonymous namespace. +static gboolean Settings_get_mapping_callback( GValue* to_value, GVariant* from_variant, gpointer user_data) { @@ -52,7 +56,7 @@ Settings_get_mapping_callback( return result; } -GVariant* +static GVariant* Settings_set_mapping_callback( const GValue* from_value, const GVariantType* expected_type, gpointer user_data) { @@ -71,12 +75,12 @@ Settings_set_mapping_callback( return result; } -void +static void Settings_map_callback_destroy(gpointer user_data) { delete static_cast<SettingsMapSlots*>(user_data); } - +} // extern "C" } // anonymous namespace namespace Gio |