There is a special code path in moc for processing the "Qt" namespace (yes, it is a namespace). It is impossible to use that path with user code unless something changed since the last time I analyzed the code (which was a couple of minor versions back). As for the second case I can only tell you to remember Qt meta-type system is based on a character-by-character string comparison. Can you access the enums defined in RE manually by processing its meta object?