Currently, (the Microsoft-specific keyword) __interface is aliased to struct, which breaks code that, for example, declares a method pure but not virtual (both are implicit in an __interface, but it's not wrong to state them explicitly too), or inherits from an __interface using override, and other uses.
This patch makes __interface a new class-key and makes member functions pure virtual automatically. See: http://msdn.microsoft.com/en-us/library/50h7kwtb%28v=vs.110%29.aspx. There has been some discussion of this patch on the cfe-dev list and I have made all the changes requested there. This patch is against revision 162644, and all clang tests, including some changes made to test new functionality, are passing with it applied. _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
