From 8b2f6a5523000449de2a102f4bba276febea2def Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Sun, 12 May 2019 17:08:51 +0100 Subject: [PATCH] Please don't use GInitiallyUnowned and floating refs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This place is not a place of honor… No highly esteemed API is implemented here… Nothing valued is here. --- gobject/gobject.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gobject/gobject.c b/gobject/gobject.c index 3127d527c..c95311b3e 100644 --- a/gobject/gobject.c +++ b/gobject/gobject.c @@ -53,6 +53,13 @@ * * ## Floating references # {#floating-ref} * + * **Note**: Floating references are a C convenience API and should not be + * used in modern GObject code. Language bindings in particular find the + * concept highly problematic, as floating references are not identifiable + * through annotations, and neither are deviations from the floating reference + * behavior, like types that inherit from #GInitiallyUnowned and still return + * a full reference from g_object_new(). + * * GInitiallyUnowned is derived from GObject. The only difference between * the two is that the initial reference of a GInitiallyUnowned is flagged * as a "floating" reference. This means that it is not specifically