Сижу и туплю.
	Код:
	type
  InterfaceA = interface(IUnknown)
    [some GUID 1]
    ....
  end;
  InterfaceB = interface(InterfaceA)
    [some GUID 2]
    ....
  end;
  TSomeClass = class(TInterfacedObject, InterfaceB)
    ...
  end;
  SomeObject: TSomeClass;
  Supports(SomeObject, InterfaceB) = True, Supports(SomeObject, InterfaceA) = False. 
Как я понимаю InterfaceB тянет за собой все методы InterfaceA, но почему Supports(..., InterfaceA) = False? Есть ли способ узнать, что объект уже реализовывает методы InterfaceA? Или обязательно делать так:
	Код:
	  TSomeClass = class(TInterfacedObject, InterfaceA, InterfaceB)
    ...
  end; 
Может есть аналогия с TObject.InheristFrom(ObjectClass)?