[PATCH] D14292: [libcxx] Make it possible to build a no-exceptions variant of libcxx.

Asiri Rathnayake via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 6 08:33:05 PST 2015


rmaprath updated this revision to Diff 39541.
rmaprath added a comment.

Patch updated to add XFAILS for all those tests that are failing on the new (-fno-exceptions) library variant. Follow-up patches will progressively un-XFAIL these tests (i.e. adapt them to cope with the new library variant).


http://reviews.llvm.org/D14292

Files:
  src/future.cpp
  test/libcxx/containers/sequences/vector/asan_throw.pass.cpp
  test/libcxx/experimental/containers/sequences/dynarray/dynarray.cons/default.pass.cpp
  test/libcxx/experimental/containers/sequences/dynarray/dynarray.cons/default_throws_bad_alloc.pass.cpp
  test/libcxx/experimental/containers/sequences/dynarray/dynarray.overview/at.pass.cpp
  test/std/containers/associative/map/map.access/at.pass.cpp
  test/std/containers/sequences/array/at.pass.cpp
  test/std/containers/sequences/deque/deque.modifiers/push_back_exception_safety.pass.cpp
  test/std/containers/sequences/deque/deque.modifiers/push_front_exception_safety.pass.cpp
  test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_exception_safety.pass.cpp
  test/std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
  test/std/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
  test/std/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
  test/std/containers/sequences/list/list.modifiers/push_back_exception_safety.pass.cpp
  test/std/containers/sequences/list/list.modifiers/push_front_exception_safety.pass.cpp
  test/std/containers/sequences/vector/vector.modifiers/push_back_exception_safety.pass.cpp
  test/std/containers/unord/unord.map/unord.map.elem/at.pass.cpp
  test/std/depr/depr.c.headers/uchar_h.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.assign/copy.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.assign/emplace.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.assign/emplace_initializer_list.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.assign/move.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/const_T.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/copy.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/in_place_t.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/initializer_list.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/move.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.ctor/rvalue_T.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.observe/value.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.observe/value_const.pass.cpp
  test/std/experimental/optional/optional.object/optional.object.swap/swap.pass.cpp
  test/std/experimental/optional/optional.specalg/swap.pass.cpp
  test/std/experimental/string.view/string.view.access/at.pass.cpp
  test/std/experimental/string.view/string.view.ops/compare.pointer_size.pass.cpp
  test/std/experimental/string.view/string.view.ops/compare.size_size_sv.pass.cpp
  test/std/experimental/string.view/string.view.ops/compare.size_size_sv_pointer_size.pass.cpp
  test/std/experimental/string.view/string.view.ops/compare.size_size_sv_size_size.pass.cpp
  test/std/experimental/string.view/string.view.ops/copy.pass.cpp
  test/std/experimental/string.view/string.view.ops/substr.pass.cpp
  test/std/input.output/iostream.format/output.streams/ostream_sentry/destruct.pass.cpp
  test/std/input.output/iostreams.base/ios/basic.ios.members/set_rdbuf.pass.cpp
  test/std/input.output/iostreams.base/ios/iostate.flags/clear.pass.cpp
  test/std/input.output/iostreams.base/ios/iostate.flags/exceptions_iostate.pass.cpp
  test/std/input.output/iostreams.base/ios/iostate.flags/setstate.pass.cpp
  test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array.pass.cpp
  test/std/language.support/support.dynamic/new.delete/new.delete.array/new_array_nothrow.pass.cpp
  test/std/language.support/support.dynamic/new.delete/new.delete.single/new.pass.cpp
  test/std/language.support/support.dynamic/new.delete/new.delete.single/new_nothrow.pass.cpp
  test/std/language.support/support.exception/except.nested/assign.pass.cpp
  test/std/language.support/support.exception/except.nested/ctor_copy.pass.cpp
  test/std/language.support/support.exception/except.nested/ctor_default.pass.cpp
  test/std/language.support/support.exception/except.nested/rethrow_if_nested.pass.cpp
  test/std/language.support/support.exception/except.nested/rethrow_nested.pass.cpp
  test/std/language.support/support.exception/except.nested/throw_with_nested.pass.cpp
  test/std/language.support/support.exception/propagation/current_exception.pass.cpp
  test/std/language.support/support.exception/propagation/make_exception_ptr.pass.cpp
  test/std/language.support/support.exception/propagation/rethrow_exception.pass.cpp
  test/std/language.support/support.exception/uncaught/uncaught_exception.pass.cpp
  test/std/language.support/support.exception/uncaught/uncaught_exceptions.pass.cpp
  test/std/localization/locale.categories/category.collate/locale.collate.byname/transform.pass.cpp
  test/std/localization/locales/locale.convenience/conversions/conversions.string/ctor_err_string.pass.cpp
  test/std/localization/locales/locale.global.templates/use_facet.pass.cpp
  test/std/localization/locales/locale/locale.members/combine.pass.cpp
  test/std/numerics/complex.number/complex.ops/complex_divide_complex.pass.cpp
  test/std/numerics/rand/rand.device/ctor.pass.cpp
  test/std/numerics/rand/rand.device/eval.pass.cpp
  test/std/re/re.alg/re.alg.search/grep.pass.cpp
  test/std/re/re.regex/re.regex.assign/assign.pass.cpp
  test/std/re/re.regex/re.regex.construct/bad_escape.pass.cpp
  test/std/re/re.regex/re.regex.construct/bad_repeat.pass.cpp
  test/std/strings/basic.string/string.access/at.pass.cpp
  test/std/strings/basic.string/string.capacity/capacity.pass.cpp
  test/std/strings/basic.string/string.capacity/max_size.pass.cpp
  test/std/strings/basic.string/string.capacity/over_max_size.pass.cpp
  test/std/strings/basic.string/string.capacity/reserve.pass.cpp
  test/std/strings/basic.string/string.capacity/resize_size.pass.cpp
  test/std/strings/basic.string/string.capacity/resize_size_char.pass.cpp
  test/std/strings/basic.string/string.cons/substr.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_append/string_size_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_assign/string_size_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_copy/copy.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_erase/size_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_insert/size_pointer.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_insert/size_pointer_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_insert/size_size_char.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_insert/size_string.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_insert/size_string_size_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_replace/size_size_pointer.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_replace/size_size_pointer_size.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_replace/size_size_size_char.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_replace/size_size_string.pass.cpp
  test/std/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp
  test/std/strings/basic.string/string.ops/string_compare/size_size_pointer.pass.cpp
  test/std/strings/basic.string/string.ops/string_compare/size_size_pointer_size.pass.cpp
  test/std/strings/basic.string/string.ops/string_compare/size_size_string.pass.cpp
  test/std/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp
  test/std/strings/basic.string/string.ops/string_substr/substr.pass.cpp
  test/std/strings/string.conversions/stod.pass.cpp
  test/std/strings/string.conversions/stof.pass.cpp
  test/std/strings/string.conversions/stoi.pass.cpp
  test/std/strings/string.conversions/stol.pass.cpp
  test/std/strings/string.conversions/stold.pass.cpp
  test/std/strings/string.conversions/stoll.pass.cpp
  test/std/strings/string.conversions/stoul.pass.cpp
  test/std/strings/string.conversions/stoull.pass.cpp
  test/std/thread/futures/futures.async/async.pass.cpp
  test/std/thread/futures/futures.promise/dtor.pass.cpp
  test/std/thread/futures/futures.promise/get_future.pass.cpp
  test/std/thread/futures/futures.promise/move_assign.pass.cpp
  test/std/thread/futures/futures.promise/move_ctor.pass.cpp
  test/std/thread/futures/futures.promise/set_exception.pass.cpp
  test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp
  test/std/thread/futures/futures.promise/set_lvalue.pass.cpp
  test/std/thread/futures/futures.promise/set_rvalue.pass.cpp
  test/std/thread/futures/futures.promise/set_value_const.pass.cpp
  test/std/thread/futures/futures.promise/set_value_void.pass.cpp
  test/std/thread/futures/futures.shared_future/dtor.pass.cpp
  test/std/thread/futures/futures.shared_future/get.pass.cpp
  test/std/thread/futures/futures.tas/futures.task.members/dtor.pass.cpp
  test/std/thread/futures/futures.tas/futures.task.members/get_future.pass.cpp
  test/std/thread/futures/futures.tas/futures.task.members/make_ready_at_thread_exit.pass.cpp
  test/std/thread/futures/futures.tas/futures.task.members/operator.pass.cpp
  test/std/thread/futures/futures.tas/futures.task.members/reset.pass.cpp
  test/std/thread/futures/futures.unique_future/dtor.pass.cpp
  test/std/thread/futures/futures.unique_future/get.pass.cpp
  test/std/thread/thread.condition/thread.condition.condvarany/wait_terminates.sh.cpp
  test/std/thread/thread.mutex/thread.lock.algorithm/lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock.algorithm/try_lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_for.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/try_lock_until.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.shared/thread.lock.shared.locking/unlock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_for.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/try_lock_until.pass.cpp
  test/std/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.locking/unlock.pass.cpp
  test/std/thread/thread.mutex/thread.once/thread.once.callonce/call_once.pass.cpp
  test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp
  test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy.pass.cpp
  test/std/utilities/memory/specialized.algorithms/uninitialized.copy/uninitialized_copy_n.pass.cpp
  test/std/utilities/memory/specialized.algorithms/uninitialized.fill.n/uninitialized_fill_n.pass.cpp
  test/std/utilities/memory/specialized.algorithms/uninitialized.fill/uninitialized_fill.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/nullptr_t_deleter_allocator_throw.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/nullptr_t_deleter_throw.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter_allocator_throw.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_deleter_throw.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/pointer_throw.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/unique_ptr.pass.cpp
  test/std/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/weak_ptr.pass.cpp
  test/std/utilities/template.bitset/bitset.cons/char_ptr_ctor.pass.cpp
  test/std/utilities/template.bitset/bitset.cons/string_ctor.pass.cpp
  test/std/utilities/template.bitset/bitset.members/flip_one.pass.cpp
  test/std/utilities/template.bitset/bitset.members/reset_one.pass.cpp
  test/std/utilities/template.bitset/bitset.members/set_one.pass.cpp
  test/std/utilities/template.bitset/bitset.members/test.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14292.39541.patch
Type: text/x-patch
Size: 83196 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151106/f2c5e92f/attachment-0001.bin>


More information about the cfe-commits mailing list