statically checking vtable