title: Comparing Scala reflection Symbols
body: <p>The <a href="http://www.scala-lang.org/api/2.10.5/index.html#scala.reflect.api.Types" rel="nofollow">Types</a> Scaladoc page warns:</p>
  
  <blockquote>
    <p>Type Equality can be checked with =:=. It's important to note that == should not be used to compare types for equality-- == can't check for type equality in the presence of type aliases, while =:= can.</p>
  </blockquote>
  
  <p>There is no similar warning for <a href="http://www.scala-lang.org/api/2.10.5/index.html#scala.reflect.api.Symbols" rel="nofollow">Symbols</a>, but looking at the <a href="https://github.com/scala/scala/blob/955eb2170e1291500813e6bec76a9f0e1e3bad50/src/reflect/scala/reflect/internal/Symbols.scala" rel="nofollow">implementation</a>, it doesn't appear to override <code>equals</code>. Is there a way to compare symbols for equality (i.e. whether they represent the same Scala type/val/method/etc.)?</p>
  
  <p>For <code>TypeSymbol</code>s I can obviously use <code>.toType</code> and <code>=:=</code>, so the question is primarily about <code>TermSymbol</code>s.</p>