OK, convinced. "Why it compiles" - because D module-level access specifiers are one of its more broken features ;)