title: dead code is not detected/reported in golang, by design?
body: <p>I can take any function and throw <code>panic("don't")</code> right in the middle of it, not inside any branch or loop (making the remainder of the function "dead" code), and the go compiler will happily compile and run without reporting that as a problem.</p>
  
  <p>Anyone know if this is by design? (The compiler loudly complains about unused imports, so why not dead code...) They can't go back now and change that behavior since Go 1 is released and they'd be breaking existing well-formed code.  Just wondering if this is an oversight or something intentional.  If an oversight I guess it'll have to wait until Go 2 (when they can break stuff).</p>