[runtime] Fix Enum.GetHashCode when basetype is short or sbyte.
authorRodrigo Kumpera <kumpera@gmail.com>
Tue, 10 Nov 2015 03:42:51 +0000 (22:42 -0500)
committerRodrigo Kumpera <kumpera@gmail.com>
Tue, 10 Nov 2015 03:42:51 +0000 (22:42 -0500)
commit6c56f052fa7b64fae3de6304213637e75124c7b2
treee3d1a47c48bcef91cd68d523a66fd3fc51f095a9
parent6020c1ff72af09a24e77342c301300d59ac9209e
[runtime] Fix Enum.GetHashCode when basetype is short or sbyte.

In addition to fixing the runtime, fix the test suite to correctly detect this problem.

This popped up because, for some reason, those two types have hashcodes that
don't return identity on reference sources.
mcs/class/corlib/Test/System/EnumTest.cs
mono/metadata/icall.c