Closed
Bug 873649
Opened 12 years ago
Closed 12 years ago
Build bustage under clang/ASan
Categories
(Core :: MFBT, defect)
Tracking
()
RESOLVED
FIXED
mozilla24
People
(Reporter: ekr, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
|
1.21 KB,
patch
|
Waldo
:
review+
|
Details | Diff | Splinter Review |
/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto/config/nsinstall -R -m 755 "TestWeakPtr" "../../dist/bin"
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:646:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'int *') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_add(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:396:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<int *>::fetch_add' requested here
{ return _M_b.fetch_add(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:236:18: note: in instantiation of member function 'std::atomic<int *>::fetch_add' requested here
return ptr.fetch_add(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:264:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<int *, 2>::add' requested here
return IntrinsicAddSub<T, Order>::add(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:779:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<int *, 2>::inc' requested here
T operator++() { return Intrinsics::inc(mValue) + 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:82:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<int *, 2>::operator++' requested here
MOZ_ASSERT(++atomic == array1 + 1, "Atomic increment did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<int, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:136:3: note: in instantiation of function template specialization 'TestPointer<int>' requested here
TestPointer<int>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:655:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'int *') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_sub(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:405:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<int *>::fetch_sub' requested here
{ return _M_b.fetch_sub(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:239:18: note: in instantiation of member function 'std::atomic<int *>::fetch_sub' requested here
return ptr.fetch_sub(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:267:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<int *, 2>::sub' requested here
return IntrinsicAddSub<T, Order>::sub(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:780:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<int *, 2>::dec' requested here
T operator--() { return Intrinsics::dec(mValue) - 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:87:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<int *, 2>::operator--' requested here
MOZ_ASSERT(--atomic == array1 + 1, "Atomic decrement did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<int, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:136:3: note: in instantiation of function template specialization 'TestPointer<int>' requested here
TestPointer<int>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:646:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'float *') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_add(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:396:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<float *>::fetch_add' requested here
{ return _M_b.fetch_add(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:236:18: note: in instantiation of member function 'std::atomic<float *>::fetch_add' requested here
return ptr.fetch_add(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:264:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<float *, 2>::add' requested here
return IntrinsicAddSub<T, Order>::add(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:779:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<float *, 2>::inc' requested here
T operator++() { return Intrinsics::inc(mValue) + 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:82:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<float *, 2>::operator++' requested here
MOZ_ASSERT(++atomic == array1 + 1, "Atomic increment did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<float, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:137:3: note: in instantiation of function template specialization 'TestPointer<float>' requested here
TestPointer<float>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:655:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'float *') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_sub(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:405:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<float *>::fetch_sub' requested here
{ return _M_b.fetch_sub(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:239:18: note: in instantiation of member function 'std::atomic<float *>::fetch_sub' requested here
return ptr.fetch_sub(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:267:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<float *, 2>::sub' requested here
return IntrinsicAddSub<T, Order>::sub(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:780:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<float *, 2>::dec' requested here
T operator--() { return Intrinsics::dec(mValue) - 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:87:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<float *, 2>::operator--' requested here
MOZ_ASSERT(--atomic == array1 + 1, "Atomic decrement did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<float, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:137:3: note: in instantiation of function template specialization 'TestPointer<float>' requested here
TestPointer<float>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:646:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'unsigned short **') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_add(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:396:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<unsigned short **>::fetch_add' requested here
{ return _M_b.fetch_add(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:236:18: note: in instantiation of member function 'std::atomic<unsigned short **>::fetch_add' requested here
return ptr.fetch_add(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:264:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<unsigned short **, 2>::add' requested here
return IntrinsicAddSub<T, Order>::add(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:779:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<unsigned short **, 2>::inc' requested here
T operator++() { return Intrinsics::inc(mValue) + 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:82:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<unsigned short **, 2>::operator++' requested here
MOZ_ASSERT(++atomic == array1 + 1, "Atomic increment did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<unsigned short *, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:138:3: note: in instantiation of function template specialization 'TestPointer<unsigned short *>' requested here
TestPointer<uint16_t*>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:655:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'unsigned short **') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_sub(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:405:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<unsigned short **>::fetch_sub' requested here
{ return _M_b.fetch_sub(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:239:18: note: in instantiation of member function 'std::atomic<unsigned short **>::fetch_sub' requested here
return ptr.fetch_sub(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:267:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<unsigned short **, 2>::sub' requested here
return IntrinsicAddSub<T, Order>::sub(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:780:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<unsigned short **, 2>::dec' requested here
T operator--() { return Intrinsics::dec(mValue) - 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:87:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<unsigned short **, 2>::operator--' requested here
MOZ_ASSERT(--atomic == array1 + 1, "Atomic decrement did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<unsigned short *, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:138:3: note: in instantiation of function template specialization 'TestPointer<unsigned short *>' requested here
TestPointer<uint16_t*>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:646:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'unsigned int **') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_add(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:396:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<unsigned int **>::fetch_add' requested here
{ return _M_b.fetch_add(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:236:18: note: in instantiation of member function 'std::atomic<unsigned int **>::fetch_add' requested here
return ptr.fetch_add(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:264:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<unsigned int **, 2>::add' requested here
return IntrinsicAddSub<T, Order>::add(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:779:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<unsigned int **, 2>::inc' requested here
T operator++() { return Intrinsics::inc(mValue) + 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:82:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<unsigned int **, 2>::operator++' requested here
MOZ_ASSERT(++atomic == array1 + 1, "Atomic increment did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<unsigned int *, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:139:3: note: in instantiation of function template specialization 'TestPointer<unsigned int *>' requested here
TestPointer<uint32_t*>();
^
In file included from /home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:6:
In file included from ../../dist/include/mozilla/Atomics.h:166:
In file included from /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:42:
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/bits/atomic_2.h:655:44: error: cannot initialize a parameter of type '__pointer_type' (aka 'unsigned int **') with an lvalue of type 'ptrdiff_t' (aka 'long')
{ return __sync_fetch_and_sub(&_M_p, __d); }
^~~
/usr/lib/gcc/x86_64-linux-gnu/4.6/../../../../include/c++/4.6/atomic:405:21: note: in instantiation of member function 'std::__atomic2::__atomic_base<unsigned int **>::fetch_sub' requested here
{ return _M_b.fetch_sub(__d, __m); }
^
../../dist/include/mozilla/Atomics.h:239:18: note: in instantiation of member function 'std::atomic<unsigned int **>::fetch_sub' requested here
return ptr.fetch_sub(fixupAddend(val), Base::OrderedOp::AtomicRMWOrder);
^
../../dist/include/mozilla/Atomics.h:267:41: note: in instantiation of member function 'mozilla::detail::IntrinsicAddSub<unsigned int **, 2>::sub' requested here
return IntrinsicAddSub<T, Order>::sub(ptr, 1);
^
../../dist/include/mozilla/Atomics.h:780:41: note: in instantiation of member function 'mozilla::detail::IntrinsicIncDec<unsigned int **, 2>::dec' requested here
T operator--() { return Intrinsics::dec(mValue) - 1; }
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:87:14: note: in instantiation of member function 'mozilla::detail::AtomicBase<unsigned int **, 2>::operator--' requested here
MOZ_ASSERT(--atomic == array1 + 1, "Atomic decrement did not work");
^
../../dist/include/mozilla/Assertions.h:288:23: note: expanded from macro 'MOZ_ASSERT'
(__VA_ARGS__))
^
../../dist/include/mozilla/Assertions.h:285:35: note: expanded from macro 'MOZ_ASSERT_GLUE'
# define MOZ_ASSERT_GLUE(x, y) x y
^
../../dist/include/mozilla/Assertions.h:260:27: note: expanded from macro 'MOZ_ASSERT_HELPER2'
if (MOZ_UNLIKELY(!(expr))) { \
^
../../dist/include/mozilla/Likely.h:16:48: note: expanded from macro 'MOZ_UNLIKELY'
# define MOZ_UNLIKELY(x) (__builtin_expect(!!(x), 0))
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:125:3: note: in instantiation of function template specialization 'TestPointerWithOrdering<unsigned int *, 2>' requested here
TestPointerWithOrdering<T, SequentiallyConsistent>();
^
/home/buildslave/work/ubuntu12_04_64_asan/build/mfbt/tests/TestAtomics.cpp:139:3: note: in instantiation of function template specialization 'TestPointer<unsigned int *>' requested here
TestPointer<uint32_t*>();
^
8 errors generated.
make[6]: *** [TestAtomics.o] Error 1
make[6]: *** Waiting for unfinished jobs....
make[6]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto/mfbt/tests'
make[5]: *** [libs] Error 2
make[5]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto/mfbt'
make[4]: *** [libs_tier_base] Error 2
make[4]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto'
make[3]: *** [tier_base] Error 2
make[3]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto'
make[2]: *** [default] Error 2
make[2]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build/obj-buildbot-auto'
make[1]: *** [realbuild] Error 2
make[1]: Leaving directory `/home/buildslave/work/ubuntu12_04_64_asan/build'
make: *** [build] Error 2
Updated•12 years ago
|
Comment 1•12 years ago
|
||
Sigh, this is the same issue that required:
https://hg.mozilla.org/integration/mozilla-inbound/rev/8096f5bdab92#l1.398
Since we don't include the results of configure tests in MFBT, I think this
is the best we can do. Maybe once all the buildbots use GCC 4.7, we can get
rid of this, but the error message wouldn't really be helpful in telling
people what's wrong.
Attachment #751211 -
Flags: review?(jwalden+bmo)
Updated•12 years ago
|
Comment 3•12 years ago
|
||
(In reply to Nathan Froyd (:froydnj) from comment #1)
> Maybe once all the buildbots use GCC 4.7, we can get
> rid of this, but the error message wouldn't really be helpful in telling
> people what's wrong.
Alternately, we could use GCC 4.8's ASAN support instead and we wouldn't have to worry about system header issues.
Comment 4•12 years ago
|
||
Note the buildbots should be using a clang that uses gcc 4.7's headers. Because we had failures with the gcc 4.5 headers already.
Comment 5•12 years ago
|
||
(In reply to Mike Hommey [:glandium] from comment #4)
> Note the buildbots should be using a clang that uses gcc 4.7's headers.
> Because we had failures with the gcc 4.5 headers already.
Then I guess it's just a question of whether we want to keep third-party asan builders working happily with GCC < 4.7 or just make them upgrade.
Comment 6•12 years ago
|
||
(In reply to Nathan Froyd (:froydnj) from comment #5)
> Then I guess it's just a question of whether we want to keep third-party
> asan builders working happily with GCC < 4.7 or just make them upgrade.
s/asan/clang/
And clang builds with libstdc++ headers < 4.7 are already broken.
| Reporter | ||
Comment 7•12 years ago
|
||
This patch fixes the compilation problem on my system.
Flags: needinfo?(ekr)
Comment 8•12 years ago
|
||
Comment on attachment 751211 [details] [diff] [review]
don't assume <atomic> is usable with clang on a Linux system
Review of attachment 751211 [details] [diff] [review]:
-----------------------------------------------------------------
::: mfbt/Atomics.h
@@ +32,5 @@
> + * GCC. We do not have a particularly good way to detect this sort of
> + * case at this point, so just assume that if we're on a Linux system,
> + * we can't use the system's <atomic>.
> + */
> +# if !defined(__linux__) && \
Indent like so:
/*
* ...
*/
# if !defined(__linux__) && \
See, e.g., mfbt/Assertions.h comments.
Attachment #751211 -
Flags: review?(jwalden+bmo) → review+
Comment 10•12 years ago
|
||
(In reply to Henri Sivonen (:hsivonen) from comment #9)
> Anything blocking landing here?
Other than a patch author who was out of town, nope!
https://hg.mozilla.org/integration/mozilla-inbound/rev/3cd6e95a4d9c
Flags: needinfo?(nfroyd)
Comment 11•12 years ago
|
||
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla24
Updated•12 years ago
|
Blocks: asan-maintenance
You need to log in
before you can comment on or make changes to this bug.
Description
•