[PATCH] D37308: Interface class with uuid base record
Erich Keane via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Sep 11 08:07:55 PDT 2017
erichkeane added a comment.
By my reading of the code, you still haven't fixed this example:
struct __declspec(uuid("00000000-0000-0000-C000-000000000046")) IUnknown {};
struct IPropertyPageBase : public IUnknown {};
struct IPropertyPage : public IPropertyPageBase {};
__interface foo {};
__interface bar {};
__interface Prop2 : foo, bar, IUnknown{};
__interface Prop3 : foo, Prop2{};
According to godbolt, all compile w/o error.
================
Comment at: lib/Sema/SemaDeclCXX.cpp:2394
+/// \brief Test if RD or its inhetited bases is an IUnknow type.
+static bool IsOrInheritsFromIUnknown(const CXXRecordDecl *RD) {
+ const CXXRecordDecl *Base =
----------------
See my example below, you still need to fix this.
https://reviews.llvm.org/D37308
More information about the cfe-commits
mailing list