Compiler Error C3141

'interface_name' : interfaces only support public inheritance

Interfaces defined with the interface (or __interface) keyword only support public inheritance.

The following sample generates C3141:

// C3141.cpp
__interface IBase {};
__interface IDerived1 : protected IBase {};  // C3141
__interface IDerived2 : private IBase {};    // C3141