Fix MSVC compilation.

- Fix a struct vs. class in forward declaration of std::hash
 - Fix an unsigned vs. signed compare in BitSetIterator
 - Fix the assumption that std::array::[const_]iterator is a pointer.
 - Fix for reinterpret_cast from uint64_t to uint64_t not being allowed
   for vulkan_platform.h
 - Fix for a 32bit shift being expanded to 64bit.

Bug: None
Change-Id: I5f2bf8745aa1ef1eba9916fcf6ff7801b48f61cf
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/24501
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Kai Ninomiya <kainino@chromium.org>
This commit is contained in:
Corentin Wallez
2020-07-08 18:50:30 +00:00
committed by Commit Bot service account
parent a9c7d64aad
commit 519edd5890
8 changed files with 20 additions and 14 deletions

View File

@@ -79,16 +79,12 @@ TEST_F(ITypArrayTest, BeginEndFrontBackData) {
Array arr;
// non-const versions
ASSERT_EQ(arr.begin(), &arr[Key(0)]);
ASSERT_EQ(arr.end(), &arr[Key(0)] + static_cast<uint32_t>(arr.size()));
ASSERT_EQ(&arr.front(), &arr[Key(0)]);
ASSERT_EQ(&arr.back(), &arr[Key(9)]);
ASSERT_EQ(arr.data(), &arr[Key(0)]);
// const versions
const Array& constArr = arr;
ASSERT_EQ(constArr.begin(), &constArr[Key(0)]);
ASSERT_EQ(constArr.end(), &constArr[Key(0)] + static_cast<uint32_t>(constArr.size()));
ASSERT_EQ(&constArr.front(), &constArr[Key(0)]);
ASSERT_EQ(&constArr.back(), &constArr[Key(9)]);
ASSERT_EQ(constArr.data(), &constArr[Key(0)]);

View File

@@ -49,7 +49,7 @@ class ITypBitsetTest : public testing::Test {
ASSERT_FALSE(bits[Key(i)]) << i;
ASSERT_FALSE(bits.test(Key(i))) << i;
} else {
mask |= (1 << i);
mask |= (size_t(1) << i);
ASSERT_TRUE(bits[Key(i)]) << i;
ASSERT_TRUE(bits.test(Key(i))) << i;
}