title: GoogleTest test error print of enum class
body: <p>I'm using GoogleTest version 1.7.0 to test my C++ application. I have an enum defined as following</p>
  <pre><code>namespace MyNamespace {
      enum class MyEnum {
          MyEnumValue,
          MyEnumValue2
      }
  }
  </code></pre>
  <p>GoogleTest incorrectly prints it's value, resulting in this error message when the test fails:</p>
  <blockquote>
  <p>Value of: MyClass.MyMethodThatReturnsEnum()</p>
  <p>Actual: 4-byte object </p>
  <p>Expected: MyEnum::MyEnumValue</p>
  <p>Which is: 4-byte object &lt;02-00 00-00&gt;</p>
  </blockquote>
  <p>Removing the <code>class</code> keyword produces the correct error message with the real value of the enum. Is this a known behaviour/bug of GoogleTest? Is there a way to fix the problem?</p>
  <pre><code>MyClass my_class;
  
  EXPECT_EQ(MyEnum::MyEnumValue, my_class.MyMethodThatReturnsEnum());
  </code></pre>