On 04/28/14 14:06, Zhenbo Li wrote:
Thanks, Jacek This patch should fix that problem, but would it hide the problem in widl?
I tried midl.exe with VS, and got #define nsIDOMHTMLSelectElement_Remove(This,index) \ ( (This)->lpVtbl -> Remove(This,index) )
Then why widl can't handle this situation?
I tested midl on a simpler case and it will output two different macros for that as well as two entries in vtbl. This will cause a conflict during compilation (in C, it's perfectly fine for C++). widl produces only one macro (see commit 65f418493683d96d4fd625ab019ea400eec4c19a), so that the header is at least valid in such case. There is not much more we can do.
Jacek