Illustrative code provided by cmr: ``` rust mod Foo { pub static X: int = 42; } #[deriving(Show)] enum Foo { X } fn main() { println!("{}", Foo::X); let x: Foo = X; println!("{}", x); } ``` The above should not be legal: one should not be able to declare the `mod Foo` item in the same scope as the `enum Foo` item. But the following [playpen](http://play.rust-lang.org/?code=mod%20Foo%20{%0A%20%20%20%20pub%20static%20X%3A%20int%20%3D%2042%3B%0A}%0A%0A%23[deriving%28Show%29]%0Aenum%20Foo%20{%0A%20%20%20%20X%0A}%0A%0Afn%20main%28%29%20{%0A%20%20%20%20println!%28%22{}%22%2C%20Foo%3A%3AX%29%3B%0A%20%20%20%20let%20x%3A%20Foo%20%3D%20X%3B%0A%20%20%20%20println!%28%22{}%22%2C%20x%29%3B%0A}) appears to accept it, at the moment.