title: enum error: unresolved name
body: <p>Enum constructors defined in the same file no longer resolve.</p>
  
  <pre><code>enum Mode {
      Global,
      Local,
  }
  
  fn which_mode() -&gt; Mode {
      Global
  }
  
  fn main() {
      match which_mode() {
          Global =&gt; println!("Global"),
          Local  =&gt; println!("Local"),
      }
  }
  </code></pre>
  
  <p>The compiler gives an error "unresolved name <code>Global</code>" in the function <code>which_mode</code>.  When I qualify it as <code>Mode::Global</code>, it works.  Now, it thinks that the <code>Global</code> in the <code>match</code> statement is a binding, and is hence irrefutable!</p>
  
  <p>This behaviour is recent -- the nightly of 11 November successfully compiled the above code.  With this current behaviour being how it is, why do <code>Some</code>, <code>Ok</code>, <em>etc.</em> not need qualified paths?</p>