Good summary about C++ templates and Co skipped
And this is where I discovered what a thunk it: Exactly a function that adjusts the this pointer before calling the main implementation; these thunks are unavoidable if functions from one vtable are forwarded to functions belonging to another vtable implemented by the same object.
That's not necessarily the case, I think it is not legal to compare the vtable pointers, so they should not matter. If a vtable inherits from the other, using one vtable is ok. Here we thought IDDS7 inherits from IDSS4. While it looks like that in the interface, the behavior is different, so the inheritance relation isn't given. (Just to make it clear)