Nick Coghlan added the comment:
Oops, couple of typos:
"... only triggers metaclass resolution at that point ..."
"... if either the metaclass being instantiated is a subclass of all the
metaclasses of all of the bases ..."
But the only way to bypass the "most derived metaclass" rule is for the the
metaclass hint to be a callable that creates something that *isn't* a subclass
of type. If you look at the tracebacks you're getting, you should see that the
failure *isn't* in the class statement or the outer dynamic type, it's in
"metaclass_callable", where the *inner* dynamic type creation is failing.
Python tracker <rep...@bugs.python.org>
Python-bugs-list mailing list