GNOME Bugzilla – Bug 662424
Class hierarchy about interfaces not generated by default
Last modified: 2014-02-08 18:46:34 UTC
Created attachment 199702 [details] [review] Patch If I let gtk-doc generate the sections file, it won't add necessary types to decl-list which results in interfaces not having the GInterface header - so you don't see which classes implement specific interface etc. The reason is that gtkdoc-scan expects to find in a header file definition of both FooBar and FooBarClass/Iface/Interface structs, but it won't find definition of FooBar struct (which has corresponding FooBarIface) cause that's usually just a dummy typedef. Attached patch adds the necessary struct declaration to decl-list which seems to fix this issue.
The patch looks good to me and does not seem to have bad side effects. Could you point me to source where it causes you troubles. That will help we to add a similar scenario to the test suite.
I see the issue for example in libdee ( http://launchpad.net/dee/0.5/0.5.22/+download/dee-0.5.22.tar.gz ) - classes have proper class hierarchy and signals and everything, but interfaces do not without the patch.
Review of attachment 199702 [details] [review]: Please submit patches in git format in the future and also try them before submitting :) ::: gtkdoc-scan.in @@ +801,3 @@ + if ($symbol =~ m/^(\S+)(Iface|Interface)\b/) { + my $ifcname = $1; + @TRACE("Found interface: $1"); @TRACE@
How is that not already handles by: if ($symbol =~ m/^(\S+)(Class|Iface|Interface)\b/) { my $objectname = $1; @TRACE@("Found object: $1"); $list = "<TITLE>$objectname</TITLE>\n$list"; push (@objects, $objectname); }
So is this patch rejected and this bug WONTFIX?
Tobias, it is NEEDINFO. I think the case is already handled and I am still waiting for Michal to get back to me.
Michael, ping?
Closing this now. Michael, please reopen if this is still an issue for you.