The new template-based SCF class descriptinos leds itself particulary well to have static asserst catching your misstakes on compile-time rather than runtime. By utilizing templated type-traits (possibly from [www.boost.org]) together with static asserts one could possibly check for:
- Interfaces deriving (virtually?) from iBase
- Interfaces having SCF_INTERFACE macro / scfInterface subclass
- Classes not deriving from same interface several times, directly or indirectly
- Giving better error messages on utilizing scfQueryInterface, scfImplementation(Ext)N etc with non-interfaces.
