GNOME Bugzilla – Bug 679968
Add some annotations to GBytes, GVariantType and GTimeZone.
Last modified: 2017-04-04 08:56:43 UTC
Created attachment 218862 [details] [review] Adds some annotations to GVariantType. Patches follow.
Created attachment 218863 [details] [review] Adds some annotations to GBytes.
Created attachment 218864 [details] [review] Adds some annotations to GTimeZone.
Review of attachment 218863 [details] [review]: It's more that we don't bother processing the return value because it's a raw pointer, and those get marked as introspectable=0, so not available to bindings. Why do you want this?
Review of attachment 218864 [details] [review]: Why not make it boxed? Add it to gobject/glib-types.h
Review of attachment 218862 [details] [review]: Ok.
First things first: I'd like to have those annotations fixed, because my gmmproc rewrite (which uses .gir files as a source of API information) chokes when some of them are missing in .gir (like transfers in return values) for the API entities that are wrapped. gmmproc is a C++ source code generator that is used mainly by C++ bindings like glibmm or gtkmm. (In reply to comment #3) > Review of attachment 218863 [details] [review]: > > It's more that we don't bother processing the return value because it's a raw > pointer, and those get marked as introspectable=0, so not available to > bindings. > > Why do you want this? GBytes is partially wrapped in glibmm (http://git.gnome.org/browse/glibmm/diff/glib/src/bytes.hg?id=2d760935013ed77eec2b225643536af0d37d175e). If this fix is incorrect, then I can of course wrap this function manually. (In reply to comment #4) > Review of attachment 218864 [details] [review]: > > Why not make it boxed? Add it to gobject/glib-types.h I can check if it will work.
Created attachment 219793 [details] [review] Make GTimeZone a boxed type. Attached a patch making GTimeZone a boxed type. That indeed makes annotating GTimeZone's constructors not necessary.
Review of attachment 218863 [details] [review]: A very similar patch was pushed as 1e1e6c1086a494f065313dba73f7ab04078b8185, via bug #755961.
So this can be closed.