aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Hsieh <andrewhsieh@google.com>2014-06-24 00:27:03 -0700
committerAndrew Hsieh <andrewhsieh@google.com>2014-06-24 00:27:03 -0700
commitd0450de35510f299c1429e9737b9575625c720bb (patch)
treec8e7d2a9d391f1803e033549bb27677cee64c896
parentea333e3bf84fbe39af2582b4d2b3abaff2584b10 (diff)
downloadndk-d0450de35510f299c1429e9737b9575625c720bb.tar.gz
Update libc++ black list and BROKEN_RUN
Change-Id: I5d1a364525cc4603f3219a726dd18ced5064d370
-rw-r--r--tests/device/test-libc++-shared-full/BROKEN_RUN170
-rw-r--r--tests/device/test-libc++-shared-full/jni/Android.mk95
-rw-r--r--tests/device/test-libc++-static-full/BROKEN_RUN170
-rw-r--r--tests/device/test-libc++-static-full/jni/Android.mk88
4 files changed, 152 insertions, 371 deletions
diff --git a/tests/device/test-libc++-shared-full/BROKEN_RUN b/tests/device/test-libc++-shared-full/BROKEN_RUN
index 56d7926de..b3b7091ad 100644
--- a/tests/device/test-libc++-shared-full/BROKEN_RUN
+++ b/tests/device/test-libc++-shared-full/BROKEN_RUN
@@ -14,65 +14,6 @@
# alias nalibcxxg++="/tmp/ndk-$USER/android-ndk-api14-arm-4.8-clang3.4-libc++/bin/arm-linux-androideabi-g++ -std=c++11 -O2 -g -march=armv7-a -mthumb -mfpu=vfpv3-d16 -march=armv7-a -mthumb -Wl,--fix-cortex-a8 -I$NDK/sources/cxx-stl/llvm-libc++/libcxx/test/support -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS"
#
-FAIL: containers___sequences___vector___vector.capacity___shrink_to_fit
- cd ~/libcxx-test/containers/sequences/vector/vector.capacity # fail: armeabi-v7a pass: x86, gcc4.8
- nalibcxxg++ shrink_to_fit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: input.output___iostream.format___output.streams___ostream_sentry___destruct
- cd ~/libcxx-test/input.output/iostream.format/output.streams/ostream_sentry
- nalibcxxg++ destruct.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'destruct.pass.cpp:59: int main(): assertion "sync_called == 1" failed'
-
-FAIL: language.support___support.exception___except.nested___assign
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ assign.pass.cpp -lc++_shared -latomic
- F/libc (15332): assign.pass.cpp:47: int main(): assertion "e.nested_ptr() != nullptr" failed
-
-FAIL: language.support___support.exception___except.nested___ctor_copy
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ ctor_copy.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'ctor_copy.pass.cpp:45: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___except.nested___ctor_default
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ ctor_default.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'ctor_default.pass.cpp:43: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___except.nested___rethrow_if_nested
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ rethrow_if_nested.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___except.nested___rethrow_nested
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ rethrow_nested.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'rethrow_nested.pass.cpp:45: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___propagation___current_exception
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ current_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'current_exception.pass.cpp:60: int main(): assertion "p != nullptr" failed'
-
-FAIL: language.support___support.exception___propagation___make_exception_ptr
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ make_exception_ptr.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___propagation___rethrow_exception
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ rethrow_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___uncaught___uncaught_exception
- cd ~/libcxx-test/language.support/support.exception/uncaught
- nalibcxxg++ uncaught_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'uncaught_exception.pass.cpp:37: int main(): assertion "!std::uncaught_exception()" failed'
-
FAIL: localization___locale.categories___category.collate___locale.collate.byname___transform
cd ~/libcxx-test/localization/locale.categories/category.collate/locale.collate.byname
nalibcxxg++ transform.pass.cpp -lc++_shared -latomic
@@ -223,11 +164,6 @@ FAIL: localization___locale.categories___category.monetary___locale.money.put___
nalibcxxg++ put_long_double_zh_CN.pass.cpp -lc++_shared -latomic
I/DEBUG ( 51): Abort message: 'put_long_double_zh_CN.pass.cpp:66: int main(): assertion "ex == "0.00"" failed'
-FAIL: localization___locale.categories___category.monetary___locale.money.put___locale.money.put.members___put_string_en_US
- cd ~/libcxx-test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members
- nalibcxxg++ put_string_en_US.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'put_string_en_US.pass.cpp:66: int main(): assertion "ex == "0.00"" failed'
-
FAIL: localization___locale.categories___category.numeric___locale.nm.put___facet.num.put.members___put_double
cd ~/libcxx-test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members
nalibcxxg++ put_double.pass.cpp -lc++_shared -latomic
@@ -312,109 +248,3 @@ FAIL: localization___locales___locale___locale.cons___char_pointer
cd ~/libcxx-test/localization/locales/locale/locale.cons
nalibcxxg++ char_pointer.pass.cpp -lc++_shared -latomic
I/DEBUG ( 51): Abort message: 'char_pointer.pass.cpp:92: int main(): assertion "false" failed'
-
-FAIL: strings___string.conversions___stod
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stod.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: strings___string.conversions___stof
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stof.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:355: wcstof: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoi
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoi.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:361: wcstol: assertion "0" failed'
-
-FAIL: strings___string.conversions___stol
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stol.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:361: wcstol: assertion "0" failed'
-
-FAIL: strings___string.conversions___stold
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stold.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:367: wcstold: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoll
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoll.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:373: wcstoll: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoull
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoull.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:379: wcstoull: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoul
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoul.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:379: wcstoull: assertion "0" failed'
-
-FAIL: thread___futures___futures.async___async
- cd ~/libcxx-test/thread/futures/futures.async
- nalibcxxclang++ async.pass.cpp -lc++_shared -latomic
- async.pass.cpp:187: int main(): assertion "false" failed
-
-FAIL: thread___futures___futures.promise___dtor
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.promise___set_exception_at_thread_exit
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ set_exception_at_thread_exit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.promise___set_exception
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ set_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.shared_future___dtor
- cd ~/libcxx-test/thread/futures/futures.shared_future # gcc4.8 works fine
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.shared_future___get
- cd ~/libcxx-test/thread/futures/futures.shared_future
- nalibcxxg++ get.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___dtor
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___make_ready_at_thread_exit
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ make_ready_at_thread_exit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___operator
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ operator.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'operator.pass.cpp:86: int main(): assertion "false" failed'
-
-FAIL: thread___futures___futures.unique_future___dtor
- cd ~/libcxx-test/thread/futures/futures.unique_future # gcc4.8 works fine
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.unique_future___get
- cd ~/libcxx-test/thread/futures/futures.unique_future
- nalibcxxg++ get.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
diff --git a/tests/device/test-libc++-shared-full/jni/Android.mk b/tests/device/test-libc++-shared-full/jni/Android.mk
index b499bc7e0..3496280c6 100644
--- a/tests/device/test-libc++-shared-full/jni/Android.mk
+++ b/tests/device/test-libc++-shared-full/jni/Android.mk
@@ -36,10 +36,16 @@ black_list_all :=
black_list_clang3_4 := \
utilities/tuple/tuple.tuple/TupleFunction
-black_list_clang3_3 := \
- utilities/tuple/tuple.tuple/TupleFunction \
- utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable
+ifeq ($(__shared),true)
+ifeq ($(TARGET_ARCH_ABI),x86)
+# ToDo: Disabe the following test due to undefined 'scalbln'. GCC compiles fine.
+black_list_clang3_4 += \
+ depr/depr.c.headers/math_h \
+ numerics/c.math/cmath
+endif
+endif
+# gcc4.8 fails atomic_flag_test_and_set_explicit and test_and_set for x86, x86_64, mips, mips64
black_list_gcc4_8 := \
atomics/atomics.flag/atomic_flag_test_and_set_explicit \
atomics/atomics.flag/test_and_set \
@@ -51,11 +57,66 @@ black_list_gcc4_8 := \
utilities/meta/meta.unary/meta.unary.prop/is_trivially_move_constructible \
utilities/utility/pairs/pairs.pair/copy_ctor
+# gcc4.9 segfault on size_size_string_size_size for armeabi
black_list_gcc4_9 := \
$(black_list_gcc4_8) \
- strings/basic.string/string.modifiers/string_replace/size_size_string_size_size \
+ strings/basic.string/string.ops/string_compare/size_size_string_size_size \
utilities/tuple/tuple.tuple/TupleFunction
+# gcc4.6 fails all atomics
+black_list_gcc4_6 := \
+ $(black_list_gcc4_8) \
+ atomics/atomics.fences/atomic_signal_fence \
+ atomics/atomics.fences/atomic_thread_fence \
+ atomics/atomics.flag/atomic_flag_clear_explicit \
+ atomics/atomics.flag/atomic_flag_clear \
+ atomics/atomics.flag/atomic_flag_test_and_set_explicit \
+ atomics/atomics.flag/atomic_flag_test_and_set \
+ atomics/atomics.flag/clear \
+ atomics/atomics.flag/default \
+ atomics/atomics.flag/init \
+ atomics/atomics.flag/test_and_set \
+ atomics/atomics.general/nothing_to_do \
+ atomics/atomics.lockfree/lockfree \
+ atomics/atomics.order/kill_dependency \
+ atomics/atomics.order/memory_order \
+ atomics/atomics.syn/nothing_to_do \
+ atomics/atomics.types.generic/address \
+ atomics/atomics.types.generic/bool \
+ atomics/atomics.types.generic/cstdint_typedefs \
+ atomics/atomics.types.generic/integral \
+ atomics/atomics.types.generic/integral_typedefs \
+ atomics/atomics.types.operations/atomics.types.operations.arith/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.general/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.pointer/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_init \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_is_lock_free \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_load \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_store \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_var_init \
+ atomics/atomics.types.operations/atomics.types.operations.templ/nothing_to_do \
+ atomics/atomics.types.operations/nothing_to_do \
+ atomics/version \
+
+
# Compute the back_list in this particular configuration: "all | compiler | arch"
black_list := $(black_list_all)
@@ -64,13 +125,17 @@ ifeq (clang3.4,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_clang3_4)
else
ifeq (clang3.3,$(NDK_TOOLCHAIN_VERSION))
-black_list += $(black_list_clang3_3)
+$(error clang3.3 is not tested against libc++. Please upgrade to clang3.4 or after, or use gcc4.8)
else
ifeq (4.8,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_gcc4_8)
else
ifeq (4.9,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_gcc4_9)
+else
+ifeq (4.6,$(NDK_TOOLCHAIN_VERSION))
+black_list += $(black_list_gcc4_6)
+endif
endif
endif
endif
@@ -3724,16 +3789,16 @@ $(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requ
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/native_handle)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock)
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/nothing_to_do) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/default) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/lock) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/lock_shared) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_for) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared_for) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared_until) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_until) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until) # path-change
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock)
diff --git a/tests/device/test-libc++-static-full/BROKEN_RUN b/tests/device/test-libc++-static-full/BROKEN_RUN
index 56d7926de..b3b7091ad 100644
--- a/tests/device/test-libc++-static-full/BROKEN_RUN
+++ b/tests/device/test-libc++-static-full/BROKEN_RUN
@@ -14,65 +14,6 @@
# alias nalibcxxg++="/tmp/ndk-$USER/android-ndk-api14-arm-4.8-clang3.4-libc++/bin/arm-linux-androideabi-g++ -std=c++11 -O2 -g -march=armv7-a -mthumb -mfpu=vfpv3-d16 -march=armv7-a -mthumb -Wl,--fix-cortex-a8 -I$NDK/sources/cxx-stl/llvm-libc++/libcxx/test/support -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS"
#
-FAIL: containers___sequences___vector___vector.capacity___shrink_to_fit
- cd ~/libcxx-test/containers/sequences/vector/vector.capacity # fail: armeabi-v7a pass: x86, gcc4.8
- nalibcxxg++ shrink_to_fit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: input.output___iostream.format___output.streams___ostream_sentry___destruct
- cd ~/libcxx-test/input.output/iostream.format/output.streams/ostream_sentry
- nalibcxxg++ destruct.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'destruct.pass.cpp:59: int main(): assertion "sync_called == 1" failed'
-
-FAIL: language.support___support.exception___except.nested___assign
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ assign.pass.cpp -lc++_shared -latomic
- F/libc (15332): assign.pass.cpp:47: int main(): assertion "e.nested_ptr() != nullptr" failed
-
-FAIL: language.support___support.exception___except.nested___ctor_copy
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ ctor_copy.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'ctor_copy.pass.cpp:45: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___except.nested___ctor_default
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ ctor_default.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'ctor_default.pass.cpp:43: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___except.nested___rethrow_if_nested
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ rethrow_if_nested.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___except.nested___rethrow_nested
- cd ~/libcxx-test/language.support/support.exception/except.nested
- nalibcxxg++ rethrow_nested.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'rethrow_nested.pass.cpp:45: int main(): assertion "e.nested_ptr() != nullptr" failed'
-
-FAIL: language.support___support.exception___propagation___current_exception
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ current_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'current_exception.pass.cpp:60: int main(): assertion "p != nullptr" failed'
-
-FAIL: language.support___support.exception___propagation___make_exception_ptr
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ make_exception_ptr.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___propagation___rethrow_exception
- cd ~/libcxx-test/language.support/support.exception/propagation
- nalibcxxg++ rethrow_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: language.support___support.exception___uncaught___uncaught_exception
- cd ~/libcxx-test/language.support/support.exception/uncaught
- nalibcxxg++ uncaught_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'uncaught_exception.pass.cpp:37: int main(): assertion "!std::uncaught_exception()" failed'
-
FAIL: localization___locale.categories___category.collate___locale.collate.byname___transform
cd ~/libcxx-test/localization/locale.categories/category.collate/locale.collate.byname
nalibcxxg++ transform.pass.cpp -lc++_shared -latomic
@@ -223,11 +164,6 @@ FAIL: localization___locale.categories___category.monetary___locale.money.put___
nalibcxxg++ put_long_double_zh_CN.pass.cpp -lc++_shared -latomic
I/DEBUG ( 51): Abort message: 'put_long_double_zh_CN.pass.cpp:66: int main(): assertion "ex == "0.00"" failed'
-FAIL: localization___locale.categories___category.monetary___locale.money.put___locale.money.put.members___put_string_en_US
- cd ~/libcxx-test/localization/locale.categories/category.monetary/locale.money.put/locale.money.put.members
- nalibcxxg++ put_string_en_US.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'put_string_en_US.pass.cpp:66: int main(): assertion "ex == "0.00"" failed'
-
FAIL: localization___locale.categories___category.numeric___locale.nm.put___facet.num.put.members___put_double
cd ~/libcxx-test/localization/locale.categories/category.numeric/locale.nm.put/facet.num.put.members
nalibcxxg++ put_double.pass.cpp -lc++_shared -latomic
@@ -312,109 +248,3 @@ FAIL: localization___locales___locale___locale.cons___char_pointer
cd ~/libcxx-test/localization/locales/locale/locale.cons
nalibcxxg++ char_pointer.pass.cpp -lc++_shared -latomic
I/DEBUG ( 51): Abort message: 'char_pointer.pass.cpp:92: int main(): assertion "false" failed'
-
-FAIL: strings___string.conversions___stod
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stod.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: strings___string.conversions___stof
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stof.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:355: wcstof: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoi
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoi.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:361: wcstol: assertion "0" failed'
-
-FAIL: strings___string.conversions___stol
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stol.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:361: wcstol: assertion "0" failed'
-
-FAIL: strings___string.conversions___stold
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stold.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:367: wcstold: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoll
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoll.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:373: wcstoll: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoull
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoull.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:379: wcstoull: assertion "0" failed'
-
-FAIL: strings___string.conversions___stoul
- cd ~/libcxx-test/strings/string.conversions
- nalibcxxg++ stoul.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: '/tmp/ndk-andrewhsieh/tmp/build-10543/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../../android/support/src/wchar_support.c:379: wcstoull: assertion "0" failed'
-
-FAIL: thread___futures___futures.async___async
- cd ~/libcxx-test/thread/futures/futures.async
- nalibcxxclang++ async.pass.cpp -lc++_shared -latomic
- async.pass.cpp:187: int main(): assertion "false" failed
-
-FAIL: thread___futures___futures.promise___dtor
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.promise___set_exception_at_thread_exit
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ set_exception_at_thread_exit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.promise___set_exception
- cd ~/libcxx-test/thread/futures/futures.promise
- nalibcxxg++ set_exception.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.shared_future___dtor
- cd ~/libcxx-test/thread/futures/futures.shared_future # gcc4.8 works fine
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.shared_future___get
- cd ~/libcxx-test/thread/futures/futures.shared_future
- nalibcxxg++ get.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___dtor
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___make_ready_at_thread_exit
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ make_ready_at_thread_exit.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.tas___futures.task.members___operator
- cd ~/libcxx-test/thread/futures/futures.tas/futures.task.members
- nalibcxxg++ operator.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): Abort message: 'operator.pass.cpp:86: int main(): assertion "false" failed'
-
-FAIL: thread___futures___futures.unique_future___dtor
- cd ~/libcxx-test/thread/futures/futures.unique_future # gcc4.8 works fine
- nalibcxxg++ dtor.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
-FAIL: thread___futures___futures.unique_future___get
- cd ~/libcxx-test/thread/futures/futures.unique_future
- nalibcxxg++ get.pass.cpp -lc++_shared -latomic
- I/DEBUG ( 51): #00 pc 00035e66 /data/local/tmp/libc++_shared.so (__gabixx::__default_terminate()+13)
- I/DEBUG ( 51): #01 pc 00035e7d /data/local/tmp/libc++_shared.so (__gabixx::__terminate(void (*)())+16)
-
diff --git a/tests/device/test-libc++-static-full/jni/Android.mk b/tests/device/test-libc++-static-full/jni/Android.mk
index b499bc7e0..9e512bdd0 100644
--- a/tests/device/test-libc++-static-full/jni/Android.mk
+++ b/tests/device/test-libc++-static-full/jni/Android.mk
@@ -36,10 +36,7 @@ black_list_all :=
black_list_clang3_4 := \
utilities/tuple/tuple.tuple/TupleFunction
-black_list_clang3_3 := \
- utilities/tuple/tuple.tuple/TupleFunction \
- utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable
-
+# gcc4.8 fails atomic_flag_test_and_set_explicit and test_and_set for x86, x86_64, mips, mips64
black_list_gcc4_8 := \
atomics/atomics.flag/atomic_flag_test_and_set_explicit \
atomics/atomics.flag/test_and_set \
@@ -51,11 +48,66 @@ black_list_gcc4_8 := \
utilities/meta/meta.unary/meta.unary.prop/is_trivially_move_constructible \
utilities/utility/pairs/pairs.pair/copy_ctor
+# gcc4.9 segfault on size_size_string_size_size for armeabi
black_list_gcc4_9 := \
$(black_list_gcc4_8) \
- strings/basic.string/string.modifiers/string_replace/size_size_string_size_size \
+ strings/basic.string/string.ops/string_compare/size_size_string_size_size \
utilities/tuple/tuple.tuple/TupleFunction
+# gcc4.6 fails all atomics
+black_list_gcc4_6 := \
+ $(black_list_gcc4_8) \
+ atomics/atomics.fences/atomic_signal_fence \
+ atomics/atomics.fences/atomic_thread_fence \
+ atomics/atomics.flag/atomic_flag_clear_explicit \
+ atomics/atomics.flag/atomic_flag_clear \
+ atomics/atomics.flag/atomic_flag_test_and_set_explicit \
+ atomics/atomics.flag/atomic_flag_test_and_set \
+ atomics/atomics.flag/clear \
+ atomics/atomics.flag/default \
+ atomics/atomics.flag/init \
+ atomics/atomics.flag/test_and_set \
+ atomics/atomics.general/nothing_to_do \
+ atomics/atomics.lockfree/lockfree \
+ atomics/atomics.order/kill_dependency \
+ atomics/atomics.order/memory_order \
+ atomics/atomics.syn/nothing_to_do \
+ atomics/atomics.types.generic/address \
+ atomics/atomics.types.generic/bool \
+ atomics/atomics.types.generic/cstdint_typedefs \
+ atomics/atomics.types.generic/integral \
+ atomics/atomics.types.generic/integral_typedefs \
+ atomics/atomics.types.operations/atomics.types.operations.arith/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.general/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.pointer/nothing_to_do \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_strong \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_compare_exchange_weak \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_exchange \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_add \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_and \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_or \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_sub \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_fetch_xor \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_init \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_is_lock_free \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_load_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_load \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_store_explicit \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_store \
+ atomics/atomics.types.operations/atomics.types.operations.req/atomic_var_init \
+ atomics/atomics.types.operations/atomics.types.operations.templ/nothing_to_do \
+ atomics/atomics.types.operations/nothing_to_do \
+ atomics/version \
+
+
# Compute the back_list in this particular configuration: "all | compiler | arch"
black_list := $(black_list_all)
@@ -64,13 +116,17 @@ ifeq (clang3.4,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_clang3_4)
else
ifeq (clang3.3,$(NDK_TOOLCHAIN_VERSION))
-black_list += $(black_list_clang3_3)
+$(error clang3.3 is not tested against libc++. Please upgrade to clang3.4 or after, or use gcc4.8)
else
ifeq (4.8,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_gcc4_8)
else
ifeq (4.9,$(NDK_TOOLCHAIN_VERSION))
black_list += $(black_list_gcc4_9)
+else
+ifeq (4.6,$(NDK_TOOLCHAIN_VERSION))
+black_list += $(black_list_gcc4_6)
+endif
endif
endif
endif
@@ -3724,16 +3780,16 @@ $(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requ
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/lock)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/native_handle)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.mutex.requirements.mutex/thread.mutex.recursive/try_lock)
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/nothing_to_do) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/default) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/lock) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/lock_shared) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_for) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared_for) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_shared_until) # path-change
-$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedmutex.requirements/thread.sharedmutex.class/try_lock_until) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/nothing_to_do) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/default) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/lock_shared) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_for) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_for) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_shared_until) # path-change
+$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until) # path-change
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/nothing_to_do)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/default)
$(call gen-test, thread/thread.mutex/thread.mutex.requirements/thread.timedmutex.requirements/thread.timedmutex.class/lock)