title: Enum can be passed only by right reference
body: <p>I would kindly ask someone to explain me a bit why an enum can only be passed by right reference and not as simple reference ?</p>
  <pre><code> namespace n1
  {
      enum e1
      {
          f = 1,
          f1
      };
  }
  void f(n1::e1&amp;&amp; e)
  {
      std::cout&lt;&lt;static_cast&lt;int&gt;(e);
  
  }
  int main()
  {
     f(n1::e1::f1);
      return 0;
  }
  </code></pre>