Bug 110305 - Few methods in WebGLRenderingContext.idl have incorrect signatures
Summary: Few methods in WebGLRenderingContext.idl have incorrect signatures
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebGL (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Andrey Adaikin
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-19 22:10 PST by Andrey Adaikin
Modified: 2013-02-19 22:56 PST (History)
7 users (show)

See Also:


Attachments
Patch (4.95 KB, patch)
2013-02-19 22:11 PST, Andrey Adaikin
no flags Details | Formatted Diff | Diff
Diff of generators changes (12.31 KB, patch)
2013-02-19 22:18 PST, Andrey Adaikin
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Adaikin 2013-02-19 22:10:02 PST
Like [StrictTypeChecking, Custom] void getParameter();
instead of any getParameter(in GLenum pname) raises(DOMException);
Comment 1 Andrey Adaikin 2013-02-19 22:11:17 PST
Created attachment 189240 [details]
Patch
Comment 2 Andrey Adaikin 2013-02-19 22:18:30 PST
Created attachment 189243 [details]
Diff of generators changes
Comment 3 Kentaro Hara 2013-02-19 22:22:06 PST
Comment on attachment 189240 [details]
Patch

Given that these methods are [Custom], signature changes in IDL files won't affect generated code.

I wonder why there is diff in generated code for ObjC. I thought that [Custom] methods are skipped in ObjC.
Comment 4 Kentaro Hara 2013-02-19 22:27:22 PST
(In reply to comment #3)
> (From update of attachment 189240 [details])
> I wonder why there is diff in generated code for ObjC. I thought that [Custom] methods are skipped in ObjC.

Ah, I remembered. CodeGeneratorObjC.pm doesn't support [Custom] attributes/methods, but it doesn't skip [Custom] attributes/methods for some reason. If we try to skip them, ObjC bindings break because of a bunch of special handling in CodeGeneratorObjC.pm.

Either way, this change won't break ObjC bindings. LGTM.
Comment 5 Andrey Adaikin 2013-02-19 22:27:47 PST
(In reply to comment #3)
> (From update of attachment 189240 [details])
> Given that these methods are [Custom], signature changes in IDL files won't affect generated code.
> 
> I wonder why there is diff in generated code for ObjC. I thought that [Custom] methods are skipped in ObjC.

The tmp/bindings/DOMWebGLRenderingContext.h file already uses a suspicious DOMany* (line 417). I wonder if this generated code for ObjC is usable at all.
Comment 6 Kentaro Hara 2013-02-19 22:29:41 PST
(In reply to comment #5)
> The tmp/bindings/DOMWebGLRenderingContext.h file already uses a suspicious DOMany* (line 417). I wonder if this generated code for ObjC is usable at all.

Yes, it is completely unusable. But we cannot simply stop generating the code because stopping the generation affects other parts of ObjC bindings and breaks them:)
Comment 7 Adam Barth 2013-02-19 22:33:56 PST
ObjC bindings -> cry
Comment 8 WebKit Review Bot 2013-02-19 22:56:05 PST
Comment on attachment 189240 [details]
Patch

Clearing flags on attachment: 189240

Committed r143432: <http://trac.webkit.org/changeset/143432>
Comment 9 WebKit Review Bot 2013-02-19 22:56:09 PST
All reviewed patches have been landed.  Closing bug.