Bug 1021290 - More Atomics.h build fixes for clang-cl. r=froydnj

This is basically more of bug 932454
This commit is contained in:
Ehsan Akhgari 2014-06-09 14:49:34 -04:00
Родитель 11673edafb
Коммит ac9615fa0d
2 изменённых файлов: 6 добавлений и 1 удалений

Просмотреть файл

@ -9,6 +9,7 @@
#include "CrossProcessMutex.h"
#include "mozilla/layers/GeckoContentController.h"
#include "mozilla/layers/APZCTreeManager.h"
#include "mozilla/Attributes.h"
#include "mozilla/EventForwards.h"
#include "mozilla/Monitor.h"
@ -38,7 +39,6 @@ class GestureEventListener;
class ContainerLayer;
class PCompositorParent;
class ViewTransform;
class APZCTreeManager;
class AsyncPanZoomAnimation;
class FlingAnimation;

Просмотреть файл

@ -866,6 +866,7 @@ template<typename T>
struct IntrinsicAddSub<T*> : public IntrinsicApplyHelper<T*>
{
typedef typename IntrinsicApplyHelper<T*>::ValueType ValueType;
typedef typename IntrinsicBase<T*>::Primitives Primitives;
static ValueType add(ValueType& aPtr, ptrdiff_t aAmount)
{
@ -893,6 +894,7 @@ struct AtomicIntrinsics : public IntrinsicMemoryOps<T, Order>,
public IntrinsicIncDec<T>
{
typedef typename IntrinsicIncDec<T>::ValueType ValueType;
typedef typename IntrinsicBase<T>::Primitives Primitives;
static ValueType or_(ValueType& aPtr, T aVal)
{
@ -915,6 +917,9 @@ struct AtomicIntrinsics<T*, Order> : public IntrinsicMemoryOps<T*, Order>,
public IntrinsicIncDec<T*>
{
typedef typename IntrinsicMemoryOps<T*, Order>::ValueType ValueType;
// This is required to make us be able to build with MSVC10, for unknown
// reasons.
typedef typename IntrinsicBase<T*>::Primitives Primitives;
};
} // namespace detail