don't implicitly downcast (from clang)