Denis Koroskin Wrote: > First, I can't import Foo, because it will lead to name collision. It means > that I have no access to enum Bar and its elements.
For me no name collision happens when I import Foo, only enum is forward referenced, here you are safe to declare function with int parameter, enum is implicitly convertible to int and you get type safety.