Bug 145129

Summary: [EFL] Fix mismatched-tags warnings in UIProcess/API/efl
Product: WebKit Reporter: Csaba Osztrogonác <ossy>
Component: New BugsAssignee: Csaba Osztrogonác <ossy>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, gyuyoung.kim, ossy
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 145121    
Attachments:
Description Flags
Patch none

Description Csaba Osztrogonác 2015-05-18 05:44:47 PDT
There are zillion mismatched-tags warnings in Source/WebKit2/UIProcess/API/efl,
they should be fixed to be able use clang without any build warning.

some examples:
../../Source/WebKit2/UIProcess/API/efl/ewk_view.h:217:9: warning: struct 'EwkView' was previously declared as a class [-Wmismatched-tags]
../../Source/WebKit2/UIProcess/API/efl/EwkView.h:83:1: warning: class 'EwkBackForwardList' was previously declared as a struct [-Wmismatched-tags]
../../Source/WebKit2/UIProcess/API/efl/EwkView.h:84:1: warning: class 'EwkColorPicker' was previously declared as a struct [-Wmismatched-tags]
../../Source/WebKit2/UIProcess/API/efl/EwkView.h:87:1: warning: class 'EwkPopupMenu' was previously declared as a struct [-Wmismatched-tags]
...
Comment 1 Csaba Osztrogonác 2015-05-18 08:57:08 PDT
The problem is that these symbols are defined as class, but has forward
declaration / typedef as structs to be able to use them from C code too.
But it is incorrect in C++ code that's why we get this warning.
Comment 2 Csaba Osztrogonác 2015-05-18 09:00:55 PDT
Created attachment 253326 [details]
Patch

I'm not 100% sure if it is the best fix for this issue, but don't have better idea.
Comment 3 Gyuyoung Kim 2015-05-18 21:32:51 PDT
(In reply to comment #2)
> Created attachment 253326 [details]
> Patch
> 
> I'm not 100% sure if it is the best fix for this issue, but don't have
> better idea.

I considered to add EflTypedefs.h defined in WTF though, now this patch touches public APIs. So I'm not sure if this approach is nice way too.

http://trac.webkit.org/browser/trunk/Source/WTF/wtf/efl/EflTypedefs.h

If we add EWKTypedefs.h in EFL WK2, many ewk_public header files should include the EWKTypedefs.h.
Comment 4 Gyuyoung Kim 2015-05-19 18:03:44 PDT
Comment on attachment 253326 [details]
Patch

Nobody has better idea to solve this issue. Let's go ahead.
Comment 5 WebKit Commit Bot 2015-05-21 02:27:17 PDT
Comment on attachment 253326 [details]
Patch

Clearing flags on attachment: 253326

Committed r184710: <http://trac.webkit.org/changeset/184710>
Comment 6 WebKit Commit Bot 2015-05-21 02:27:20 PDT
All reviewed patches have been landed.  Closing bug.