Bug 1550422 - P00. Fix Windows compilation. r=dmajor
☠☠ backed out by af54b2de7028 ☠ ☠
authorJean-Yves Avenard <jyavenard@mozilla.com>
Thu, 23 May 2019 04:13:13 +0000
changeset 475512 54c85ac75dd041523712691da6da20c417f84994
parent 475511 d7ba4a18dd5483aad960798c5d2ae092089680d6
child 475513 132e0b8d8468de2a882d9793dfb07e6ebfd7c651
push id36062
push useraciure@mozilla.com
push dateSat, 25 May 2019 09:39:13 +0000
treeherdermozilla-central@af54b2de7028 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdmajor
bugs1550422
milestone69.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1550422 - P00. Fix Windows compilation. r=dmajor Following the shift in unified build setup following the removal of gfxPrefs.{cpp,c} we hit this error. Unified builds made this header get included with other files that use multiple inheritance, and clang-cl about the conflicting inheritance models. Local testing suggests clang-cl doesn't need the pragma anyway, so just take it out. Differential Revision: https://phabricator.services.mozilla.com/D31465
gfx/2d/unittest/TestBase.h
--- a/gfx/2d/unittest/TestBase.h
+++ b/gfx/2d/unittest/TestBase.h
@@ -4,18 +4,19 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 #pragma once
 
 #include <string>
 #include <vector>
 
-#ifdef _MSC_VER
+#if defined(_MSC_VER) && !defined(__clang__)
 // On MSVC otherwise our generic member pointer trick doesn't work.
+// JYA: Do we still need this?
 #  pragma pointers_to_members(full_generality, single_inheritance)
 #endif
 
 #define VERIFY(arg)                          \
   if (!(arg)) {                              \
     LogMessage("VERIFY FAILED: " #arg "\n"); \
     mTestFailed = true;                      \
   }