[cfe-commits] [libcxx] r113086 - in /libcxx/trunk: include/ include/ext/ src/ test/algorithms/alg.modifying.operations/alg.move/ test/algorithms/alg.modifying.operations/alg.partitions/ test/algorithms/alg.modifying.operations/alg.remove/ test/algorithms/alg.modifying.operations/alg.rotate/ test/algorithms/alg.modifying.operations/alg.swap/ test/algorithms/alg.modifying.operations/alg.unique/ test/algorithms/alg.sorting/alg.heap.operations/make.heap/ test/algorithms/alg.sorting/alg.heap.operations/pop.heap/ test/algor...

Howard Hinnant hhinnant at apple.com
Sat Sep 4 16:28:21 PDT 2010


Author: hhinnant
Date: Sat Sep  4 18:28:19 2010
New Revision: 113086

URL: http://llvm.org/viewvc/llvm-project?rev=113086&view=rev
Log:
Changed __config to react to all of clang's currently documented has_feature flags, and renamed _LIBCPP_MOVE to _LIBCPP_HAS_NO_RVALUE_REFERENCES to be more consistent with the rest of the libc++'s flags, and with clang's nomenclature.

Modified:
    libcxx/trunk/include/__config
    libcxx/trunk/include/__functional_base
    libcxx/trunk/include/__hash_table
    libcxx/trunk/include/__mutex_base
    libcxx/trunk/include/__split_buffer
    libcxx/trunk/include/__tree
    libcxx/trunk/include/algorithm
    libcxx/trunk/include/deque
    libcxx/trunk/include/exception
    libcxx/trunk/include/ext/hash_map
    libcxx/trunk/include/forward_list
    libcxx/trunk/include/fstream
    libcxx/trunk/include/future
    libcxx/trunk/include/ios
    libcxx/trunk/include/istream
    libcxx/trunk/include/iterator
    libcxx/trunk/include/list
    libcxx/trunk/include/locale
    libcxx/trunk/include/map
    libcxx/trunk/include/memory
    libcxx/trunk/include/mutex
    libcxx/trunk/include/ostream
    libcxx/trunk/include/queue
    libcxx/trunk/include/random
    libcxx/trunk/include/regex
    libcxx/trunk/include/scoped_allocator
    libcxx/trunk/include/set
    libcxx/trunk/include/sstream
    libcxx/trunk/include/stack
    libcxx/trunk/include/string
    libcxx/trunk/include/strstream
    libcxx/trunk/include/thread
    libcxx/trunk/include/type_traits
    libcxx/trunk/include/unordered_map
    libcxx/trunk/include/unordered_set
    libcxx/trunk/include/utility
    libcxx/trunk/include/valarray
    libcxx/trunk/include/vector
    libcxx/trunk/src/strstream.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
    libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/make.heap/make_heap_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/pop.heap/pop_heap_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/push.heap/push_heap_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/sort.heap/sort_heap_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.nth.element/nth_element_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.sort/sort/sort_comp.pass.cpp
    libcxx/trunk/test/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp
    libcxx/trunk/test/containers/Emplaceable.h
    libcxx/trunk/test/containers/MoveOnly.h
    libcxx/trunk/test/containers/associative/map/map.access/index_rv_key.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/move.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.cons/move_assign.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
    libcxx/trunk/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/move.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
    libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/emplace.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/insert_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/insert_iter_rv.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/insert_rv.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/move.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
    libcxx/trunk/test/containers/associative/set/emplace.pass.cpp
    libcxx/trunk/test/containers/associative/set/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/associative/set/insert_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/set/insert_iter_rv.pass.cpp
    libcxx/trunk/test/containers/associative/set/insert_rv.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/move.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/associative/set/set.cons/move_assign.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/push_rv.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/push_rv.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/move.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.cons/size.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.fail.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
    libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/move.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.cons/size_type.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/move.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/move.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
    libcxx/trunk/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
    libcxx/trunk/test/containers/test_allocator.h
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/emplace.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/insert_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/emplace.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/emplace_hint.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/insert_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/insert_rvalue.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
    libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.cons/move.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/fstream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/input.streams/istream.rvalue/rvalue.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.assign/move_assign.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.rvalue/CharT_pointer.pass.cpp
    libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.assign/move.pass.cpp
    libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.assign/move.pass.cpp
    libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/string.streams/stringstream.cons/move.pass.cpp
    libcxx/trunk/test/input.output/string.streams/stringstream.cons/stringstream.assign/move.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/back.insert.iter.op=/rv_value.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/front.insert.iter.op=/rv_value.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/insert.iterators/insert.iter.ops/insert.iter.op=/rv_value.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.index/difference_type.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.star/op_star.pass.cpp
    libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
    libcxx/trunk/test/language.support/support.initlist/support.initlist.access/access.pass.cpp
    libcxx/trunk/test/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp
    libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/initializer_list_assign.pass.cpp
    libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/move_assign.pass.cpp
    libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/initializer_list.pass.cpp
    libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/move.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/ctor_init.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/param_ctor_init.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/ctor_init_func.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/param_ctor_init_func.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/ctor_init_func.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/param_ctor_init_func.pass.cpp
    libcxx/trunk/test/numerics/rand/rand.util/rand.util.seedseq/initializer_list.pass.cpp
    libcxx/trunk/test/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
    libcxx/trunk/test/re/re.regex/re.regex.assign/assign.il.pass.cpp
    libcxx/trunk/test/re/re.regex/re.regex.assign/il.pass.cpp
    libcxx/trunk/test/re/re.regex/re.regex.construct/il_flg.pass.cpp
    libcxx/trunk/test/re/test_allocator.h
    libcxx/trunk/test/strings/basic.string/string.cons/initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.cons/move.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.cons/move_alloc.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.cons/move_assignment.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.modifiers/string_op+=/initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
    libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp
    libcxx/trunk/test/thread/futures/futures.atomic_future/copy_assign.pass.cpp
    libcxx/trunk/test/thread/futures/futures.promise/move_assign.pass.cpp
    libcxx/trunk/test/thread/futures/futures.promise/move_ctor.pass.cpp
    libcxx/trunk/test/thread/futures/futures.promise/set_rvalue.pass.cpp
    libcxx/trunk/test/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp
    libcxx/trunk/test/thread/futures/futures.shared_future/copy_assign.pass.cpp
    libcxx/trunk/test/thread/futures/futures.shared_future/move_assign.pass.cpp
    libcxx/trunk/test/thread/futures/futures.unique_future/copy_assign.fail.cpp
    libcxx/trunk/test/thread/futures/futures.unique_future/move_assign.pass.cpp
    libcxx/trunk/test/thread/futures/futures.unique_future/move_ctor.pass.cpp
    libcxx/trunk/test/thread/futures/test_allocator.h
    libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp
    libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp
    libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp
    libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp
    libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp
    libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy.pass.cpp
    libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp
    libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/test_allocator.h
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_copy.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_move.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/copy.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/default.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size_hint.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/deallocate.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/destroy.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/inner_allocator.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/max_size.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/outer_allocator.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/select_on_container_copy_construction.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/inner_allocator_type.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_copy_assignment.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_move_assignment.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_swap.pass.cpp
    libcxx/trunk/test/utilities/memory/allocator.adaptor/allocators.h
    libcxx/trunk/test/utilities/memory/allocator.adaptor/types.pass.cpp
    libcxx/trunk/test/utilities/memory/default.allocator/allocator.members/construct.pass.cpp
    libcxx/trunk/test/utilities/memory/unique.ptr/deleter.h
    libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move01.pass.cpp
    libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move02.pass.cpp
    libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert08.fail.cpp
    libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert11.fail.cpp
    libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer_deleter01.pass.cpp
    libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp
    libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y_rv.pass.cpp
    libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_rv.pass.cpp
    libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
    libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
    libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
    libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
    libcxx/trunk/test/utilities/tuple/tuple.tuple/MoveOnly.h
    libcxx/trunk/test/utilities/tuple/tuple.tuple/allocators.h
    libcxx/trunk/test/utilities/utility/declval/declval.pass.cpp
    libcxx/trunk/test/utilities/utility/forward/forward.pass.cpp
    libcxx/trunk/test/utilities/utility/forward/move_copy.pass.cpp
    libcxx/trunk/test/utilities/utility/forward/move_if_noexcept.pass.cpp
    libcxx/trunk/test/utilities/utility/forward/move_only.pass.cpp
    libcxx/trunk/test/utilities/utility/forward/move_only1.fail.cpp
    libcxx/trunk/test/utilities/utility/forward/move_only2.fail.cpp
    libcxx/trunk/test/utilities/utility/forward/move_only3.fail.cpp
    libcxx/trunk/test/utilities/utility/forward/move_only4.fail.cpp
    libcxx/trunk/test/utilities/utility/pairs/pairs.pair/U_V.pass.cpp
    libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair.pass.cpp
    libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp
    libcxx/trunk/test/utilities/utility/pairs/pairs.pair/make_pair.pass.cpp
    libcxx/trunk/test/utilities/utility/pairs/pairs.pair/rv_pair_U_V.pass.cpp
    libcxx/trunk/test/utilities/utility/utility.swap/swap.pass.cpp
    libcxx/trunk/test/utilities/utility/utility.swap/swap_array.pass.cpp

Modified: libcxx/trunk/include/__config
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__config?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__config (original)
+++ libcxx/trunk/include/__config Sat Sep  4 18:28:19 2010
@@ -86,6 +86,10 @@
 
 #if defined(__clang__)
 
+#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
+#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
+#define _LIBCPP_HAS_NO_UNICODE_CHARS
+
 #if !(__has_feature(cxx_exceptions))
 #define _LIBCPP_NO_EXCEPTIONS
 #endif
@@ -94,43 +98,12 @@
 #define _LIBCPP_NO_RTTI
 #endif
 
-#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
-#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES
-
-#if __has_feature(cxx_inline_namespaces)
-#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {inline namespace _LIBCPP_NAMESPACE {
-#define _LIBCPP_END_NAMESPACE_STD  } }
-#define _STD std::_LIBCPP_NAMESPACE
-
-namespace std {
-inline namespace _LIBCPP_NAMESPACE {
-}
-using namespace _LIBCPP_NAMESPACE;
-}
-#else  // __has_feature(cxx_inline_namespaces)
-#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {
-#define _LIBCPP_END_NAMESPACE_STD }
-#define _STD std
-#endif  // __has_feature(cxx_inline_namespaces)
-
-#ifndef __GXX_EXPERIMENTAL_CXX0X__
-
+#if !(__has_feature(cxx_decltype))
 #define _LIBCPP_HAS_NO_DECLTYPE
-#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
-#define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
-#define _LIBCPP_HAS_NO_NULLPTR
-#define _LIBCPP_HAS_NO_STATIC_ASSERT
-#define _LIBCPP_HAS_NO_UNICODE_CHARS
-#define _LIBCPP_HAS_NO_VARIADICS
-
-#else  // __GXX_EXPERIMENTAL_CXX0X__
-
-#if __has_feature(cxx_rvalue_references)
-#define _LIBCPP_MOVE
 #endif
 
-#if !(__has_feature(cxx_decltype))
-#define _LIBCPP_HAS_NO_DECLTYPE
+#if !(__has_feature(cxx_attributes))
+#define _LIBCPP_HAS_NO_ATTRIBUTES
 #endif
 
 #if !(__has_feature(cxx_deleted_functions))
@@ -138,19 +111,48 @@
 #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
 #endif  // !(__has_feature(cxx_deleted_functions))
 
+#if !(__has_feature(cxx_lambdas))
+#define _LIBCPP_HAS_NO_LAMBDAS
+#endif
+
 #if !(__has_feature(cxx_nullptr))
 #define _LIBCPP_HAS_NO_NULLPTR
 #endif
 
+#if !(__has_feature(cxx_rvalue_references))
+#define _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#endif
+
 #if !(__has_feature(cxx_static_assert))
 #define _LIBCPP_HAS_NO_STATIC_ASSERT
 #endif
 
+#if !(__has_feature(cxx_auto_type))
+#define _LIBCPP_HAS_NO_AUTO_TYPE
+#endif
+
 #if !(__has_feature(cxx_variadic_templates))
 #define _LIBCPP_HAS_NO_VARIADICS
 #endif
 
-#endif  // __GXX_EXPERIMENTAL_CXX0X__
+#if __has_feature(cxx_inline_namespaces)
+#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {inline namespace _LIBCPP_NAMESPACE {
+#define _LIBCPP_END_NAMESPACE_STD  } }
+#define _STD std::_LIBCPP_NAMESPACE
+
+namespace std {
+inline namespace _LIBCPP_NAMESPACE {
+}
+using namespace _LIBCPP_NAMESPACE;
+}
+
+#else  // __has_feature(cxx_inline_namespaces)
+#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {
+#define _LIBCPP_END_NAMESPACE_STD }
+#define _STD std
+#endif  // __has_feature(cxx_inline_namespaces)
+
+// end defined(__clang__)
 
 #elif defined(__GNUC__)
 
@@ -170,11 +172,12 @@
 #define _LIBCPP_HAS_NO_STATIC_ASSERT
 #define _LIBCPP_HAS_NO_UNICODE_CHARS
 #define _LIBCPP_HAS_NO_VARIADICS
+#define _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #else  // __GXX_EXPERIMENTAL_CXX0X__
 
-#if __GNUC__ >= 4 && __GNUC_MINOR__ >= 3
-#define _LIBCPP_MOVE
+#if !(__GNUC__ >= 4 && __GNUC_MINOR__ >= 3)
+#define _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #endif
 
 #if !(__GNUC__ >= 4 && __GNUC_MINOR__ >= 3)

Modified: libcxx/trunk/include/__functional_base
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__functional_base?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__functional_base (original)
+++ libcxx/trunk/include/__functional_base Sat Sep  4 18:28:19 2010
@@ -457,7 +457,7 @@
 public:
     // construct/copy/destroy
     _LIBCPP_INLINE_VISIBILITY reference_wrapper(type& __f) : __f_(&__f) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     private: reference_wrapper(type&&); public: // = delete; // do not bind to temps
 #endif
 
@@ -511,10 +511,20 @@
     return cref(__t.get());
 }
 
-#ifdef _LIBCPP_MOVE
-template <class _Tp> void ref(const _Tp&& __t);// = delete; // LWG 688
-template <class _Tp> void cref(const _Tp&& __t);// = delete; // LWG 688
-#endif  // _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+
+template <class _Tp> void ref(const _Tp&& __t) = delete;
+template <class _Tp> void cref(const _Tp&& __t) = delete;
+
+#else  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+
+template <class _Tp> void ref(const _Tp&& __t);// = delete;
+template <class _Tp> void cref(const _Tp&& __t);// = delete;
+
+#endif  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
+
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // _LIBCPP_HAS_NO_VARIADICS
 

Modified: libcxx/trunk/include/__hash_table
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__hash_table?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__hash_table (original)
+++ libcxx/trunk/include/__hash_table Sat Sep  4 18:28:19 2010
@@ -346,7 +346,7 @@
     __bucket_list_deallocator(const allocator_type& __a, size_type __size)
         : __data_(__size, __a) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     __bucket_list_deallocator(__bucket_list_deallocator&& __x)
         : __data_(_STD::move(__x.__data_))
@@ -354,7 +354,7 @@
         __x.size() = 0;
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     size_type& size()       {return __data_.first();}
     size_type  size() const {return __data_.first();}
@@ -486,14 +486,14 @@
     explicit __hash_table(const allocator_type& __a);
     __hash_table(const __hash_table& __u);
     __hash_table(const __hash_table& __u, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_table(__hash_table&& __u);
     __hash_table(__hash_table&& __u, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~__hash_table();
 
     __hash_table& operator=(const __hash_table& __u);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_table& operator=(__hash_table&& __u);
 #endif
     template <class _InputIterator>
@@ -512,31 +512,31 @@
     iterator             __node_insert_multi(const_iterator __p,
                                              __node_pointer __nd);
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class... _Args>
         pair<iterator, bool> __emplace_unique(_Args&&... __args);
     template <class... _Args>
         iterator __emplace_multi(_Args&&... __args);
     template <class... _Args>
         iterator __emplace_hint_multi(const_iterator __p, _Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
     pair<iterator, bool> __insert_unique(const value_type& __x);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P>
         pair<iterator, bool> __insert_unique(_P&& __x);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P>
         iterator __insert_multi(_P&& __x);
     template <class _P>
         iterator __insert_multi(const_iterator __p, _P&& __x);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator __insert_multi(const value_type& __x);
     iterator __insert_multi(const_iterator __p, const value_type& __x);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void clear();
     void rehash(size_type __n);
@@ -615,11 +615,13 @@
 private:
     void __rehash(size_type __n);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class ..._Args>
         __node_holder __construct_node(_Args&& ...__args);
+#endif
     __node_holder __construct_node(value_type&& __v, size_t __hash);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __node_holder __construct_node(const value_type& __v);
 #endif
     __node_holder __construct_node(const value_type& __v, size_t __hash);
@@ -734,7 +736,7 @@
 {
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 __hash_table<_Tp, _Hash, _Equal, _Alloc>::__hash_table(__hash_table&& __u)
@@ -777,7 +779,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 __hash_table<_Tp, _Hash, _Equal, _Alloc>::~__hash_table()
@@ -842,7 +844,7 @@
     return __cache;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 void
@@ -926,7 +928,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 template <class _InputIterator>
@@ -1245,7 +1247,8 @@
     return pair<iterator, bool>(iterator(__nd), __inserted);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 template <class... _Args>
@@ -1282,6 +1285,8 @@
     return __r;
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 template <class _P>
 pair<typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::iterator, bool>
@@ -1294,9 +1299,9 @@
     return __r;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 template <class _P>
@@ -1321,7 +1326,7 @@
     return __r;
 }
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::iterator
@@ -1344,7 +1349,7 @@
     return __r;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 void
@@ -1468,7 +1473,8 @@
     return end();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 template <class ..._Args>
@@ -1484,6 +1490,8 @@
     return __h;
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_holder
 __hash_table<_Tp, _Hash, _Equal, _Alloc>::__construct_node(value_type&& __v,
@@ -1498,7 +1506,7 @@
     return _STD::move(__h);
 }
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_holder
@@ -1513,7 +1521,7 @@
     return _STD::move(__h);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Hash, class _Equal, class _Alloc>
 typename __hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_holder

Modified: libcxx/trunk/include/__mutex_base
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__mutex_base?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__mutex_base (original)
+++ libcxx/trunk/include/__mutex_base Sat Sep  4 18:28:19 2010
@@ -115,7 +115,7 @@
     unique_lock& operator=(unique_lock const&); // = delete;
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unique_lock(unique_lock&& __u)
         : __m_(__u.__m_), __owns_(__u.__owns_)
         {__u.__m_ = nullptr; __u.__owns_ = false;}
@@ -129,7 +129,7 @@
             __u.__owns_ = false;
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void lock();
     bool try_lock();

Modified: libcxx/trunk/include/__split_buffer
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__split_buffer?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__split_buffer (original)
+++ libcxx/trunk/include/__split_buffer Sat Sep  4 18:28:19 2010
@@ -58,11 +58,11 @@
     __split_buffer(size_type __cap, size_type __start, __alloc_rr& __a);
     ~__split_buffer();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __split_buffer(__split_buffer&& __c);
     __split_buffer(__split_buffer&& __c, const __alloc_rr& __a);
     __split_buffer& operator=(__split_buffer&& __c);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY       iterator begin()       {return __begin_;}
     _LIBCPP_INLINE_VISIBILITY const_iterator begin() const {return __begin_;}
@@ -85,12 +85,12 @@
     void shrink_to_fit();
     void push_front(const_reference __x);
     void push_back(const_reference __x);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push_front(value_type&& __x);
     void push_back(value_type&& __x);
     template <class... _Args>
         void emplace_back(_Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY void pop_front() {__destruct_at_begin(__begin_+1);}
     _LIBCPP_INLINE_VISIBILITY void pop_back() {__destruct_at_end(__end_-1);}
@@ -367,7 +367,7 @@
         __alloc_traits::deallocate(__alloc(), __first_, capacity());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 __split_buffer<_Tp, _Allocator>::__split_buffer(__split_buffer&& __c)
@@ -425,7 +425,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -510,7 +510,7 @@
     --__begin_;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -542,7 +542,7 @@
     --__begin_;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -574,7 +574,7 @@
     ++__end_;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -606,6 +606,8 @@
     ++__end_;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 void
@@ -637,7 +639,9 @@
     ++__end_;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 _LIBCPP_END_NAMESPACE_STD
 

Modified: libcxx/trunk/include/__tree
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__tree?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/__tree (original)
+++ libcxx/trunk/include/__tree Sat Sep  4 18:28:19 2010
@@ -589,14 +589,14 @@
 
     value_type __value_;
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class ..._Args>
         explicit __tree_node(_Args&& ...__args)
             : __value_(_STD::forward<_Args>(__args)...) {}
-#else  // _LIBCPP_MOVE
+#else  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     explicit __tree_node(const value_type& __v)
             : __value_(__v) {}
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 };
 
 template <class> class __map_iterator;
@@ -827,11 +827,11 @@
         void __assign_unique(_InputIterator __first, _InputIterator __last);
     template <class _InputIterator>
         void __assign_multi(_InputIterator __first, _InputIterator __last);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __tree(__tree&& __t);
     __tree(__tree&& __t, const allocator_type& __a);
     __tree& operator=(__tree&& __t);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     ~__tree();
 
@@ -846,7 +846,8 @@
 
     void swap(__tree& __t);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
         pair<iterator, bool>
         __emplace_unique(_Args&&... __args);
@@ -860,6 +861,7 @@
     template <class... _Args>
         iterator
         __emplace_hint_multi(const_iterator __p, _Args&&... __args);
+#endif  // _LIBCPP_HAS_NO_VARIADICS
 
     template <class _V>
         pair<iterator, bool> __insert_unique(_V&& __v);
@@ -869,13 +871,13 @@
         iterator __insert_multi(_V&& __v);
     template <class _V>
         iterator __insert_multi(const_iterator __p, _V&& __v);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     pair<iterator, bool> __insert_unique(const value_type& __v);
     iterator __insert_unique(const_iterator __p, const value_type& __v);
     iterator __insert_multi(const value_type& __v);
     iterator __insert_multi(const_iterator __p, const value_type& __v);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     pair<iterator, bool> __node_insert_unique(__node_pointer __nd);
     iterator             __node_insert_unique(const_iterator __p,
@@ -967,10 +969,10 @@
         __find_equal(const_iterator __hint, typename __node::base::pointer& __parent,
                      const _Key& __v);
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class ..._Args>
         __node_holder __construct_node(_Args&& ...__args);
-#else  // _LIBCPP_MOVE
+#else  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
         __node_holder __construct_node(const value_type& __v);
 #endif
 
@@ -1182,7 +1184,7 @@
     __begin_node() = __end_node();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Compare, class _Allocator>
 __tree<_Tp, _Compare, _Allocator>::__tree(__tree&& __t)
@@ -1302,7 +1304,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Compare, class _Allocator>
 __tree<_Tp, _Compare, _Allocator>::~__tree()
@@ -1591,7 +1593,8 @@
     ++size();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Tp, class _Compare, class _Allocator>
 template <class ..._Args>
@@ -1666,6 +1669,8 @@
     return iterator(static_cast<__node_pointer>(__h.release()));
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Compare, class _Allocator>
 template <class _V>
 pair<typename __tree<_Tp, _Compare, _Allocator>::iterator, bool>
@@ -1726,7 +1731,7 @@
     return iterator(__h.release());
 }
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Compare, class _Allocator>
 typename __tree<_Tp, _Compare, _Allocator>::__node_holder
@@ -1795,7 +1800,7 @@
     return iterator(__h.release());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Compare, class _Allocator>
 pair<typename __tree<_Tp, _Compare, _Allocator>::iterator, bool>

Modified: libcxx/trunk/include/algorithm
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/algorithm?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/algorithm (original)
+++ libcxx/trunk/include/algorithm Sat Sep  4 18:28:19 2010
@@ -2693,7 +2693,7 @@
 template <class _RandomAccessIterator, class _RandomNumberGenerator>
 void
 random_shuffle(_RandomAccessIterator __first, _RandomAccessIterator __last,
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
                _RandomNumberGenerator&& __rand)
 #else
                _RandomNumberGenerator& __rand)

Modified: libcxx/trunk/include/deque
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/deque?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/deque (original)
+++ libcxx/trunk/include/deque Sat Sep  4 18:28:19 2010
@@ -930,12 +930,12 @@
     explicit __deque_base(const allocator_type& __a);
     ~__deque_base();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     __deque_base(__deque_base&& __c);
     __deque_base(__deque_base&& __c, const allocator_type& __a);
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(__deque_base& __c);
     void clear();
 
@@ -1059,7 +1059,7 @@
         __alloc_traits::deallocate(__alloc(), *__i, __block_size);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 __deque_base<_Tp, _Allocator>::__deque_base(__deque_base&& __c)
@@ -1090,7 +1090,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -1171,11 +1171,11 @@
     deque& operator=(const deque& __c);
     deque& operator=(initializer_list<value_type> __il) {assign(__il); return *this;}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     deque(deque&& __c);
     deque(deque&& __c, const allocator_type& __a);
     deque& operator=(deque&& __c);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     template <class _InputIter>
         void assign(_InputIter __f, _InputIter __l,
@@ -1227,14 +1227,16 @@
     // 23.2.2.3 modifiers:
     void push_front(const value_type& __v);
     void push_back(const value_type& __v);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args> void emplace_front(_Args&&... __args);
     template <class... _Args> void emplace_back(_Args&&... __args);
     template <class... _Args> iterator emplace(const_iterator __p, _Args&&... __args);
+#endif  // _LIBCPP_HAS_NO_VARIADICS
     void push_front(value_type&& __v);
     void push_back(value_type&& __v);
     iterator insert(const_iterator __p, value_type&& __v);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, const value_type& __v);
     iterator insert(const_iterator __p, size_type __n, const value_type& __v);
     template <class _InputIter>
@@ -1396,7 +1398,7 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 inline
@@ -1449,7 +1451,7 @@
     __base::__move_assign(__c);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 template <class _InputIter>
@@ -1645,7 +1647,7 @@
     ++__base::size();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -1659,6 +1661,8 @@
     ++__base::size();
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 void
@@ -1672,7 +1676,8 @@
     ++__base::size();
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -1687,7 +1692,7 @@
     ++__base::size();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -1702,6 +1707,8 @@
     ++__base::size();
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 void
@@ -1716,7 +1723,8 @@
     ++__base::size();
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 typename deque<_Tp, _Allocator>::iterator
@@ -1779,7 +1787,7 @@
     return __base::begin() + __pos;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 typename deque<_Tp, _Allocator>::iterator
@@ -1836,6 +1844,8 @@
     return __base::begin() + __pos;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 typename deque<_Tp, _Allocator>::iterator
@@ -1892,7 +1902,8 @@
     return __base::begin() + __pos;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 typename deque<_Tp, _Allocator>::iterator

Modified: libcxx/trunk/include/exception
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/exception?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/exception (original)
+++ libcxx/trunk/include/exception Sat Sep  4 18:28:19 2010
@@ -179,16 +179,16 @@
 
 template <class _Tp>
 void
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 throw_with_nested /*[[noreturn]]*/ (_Tp&& __t, typename enable_if<
                   is_class<typename remove_reference<_Tp>::type>::value &&
                   !is_base_of<nested_exception, typename remove_reference<_Tp>::type>::value
                                     >::type* = 0)
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 throw_with_nested (_Tp& __t, typename enable_if<
                   is_class<_Tp>::value && !is_base_of<nested_exception, _Tp>::value
                                     >::type* = 0)
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 {
 #ifndef _LIBCPP_NO_EXCEPTIONS
     throw __nested<typename remove_reference<_Tp>::type>(_STD::forward<_Tp>(__t));
@@ -197,16 +197,16 @@
 
 template <class _Tp>
 void
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 throw_with_nested /*[[noreturn]]*/ (_Tp&& __t, typename enable_if<
                   !is_class<typename remove_reference<_Tp>::type>::value ||
                   is_base_of<nested_exception, typename remove_reference<_Tp>::type>::value
                                     >::type* = 0)
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 throw_with_nested (_Tp& __t, typename enable_if<
                   !is_class<_Tp>::value || is_base_of<nested_exception, _Tp>::value
                                     >::type* = 0)
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 {
 #ifndef _LIBCPP_NO_EXCEPTIONS
     throw _STD::forward<_Tp>(__t);

Modified: libcxx/trunk/include/ext/hash_map
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/ext/hash_map?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/ext/hash_map (original)
+++ libcxx/trunk/include/ext/hash_map Sat Sep  4 18:28:19 2010
@@ -304,7 +304,7 @@
           __second_constructed(false)
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_map_node_destructor(__hash_node_destructor<allocator_type>&& __x)
         : __na_(__x.__na_),
           __first_constructed(__x.__value_constructed),
@@ -312,7 +312,7 @@
         {
             __x.__value_constructed = false;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_map_node_destructor(const __hash_node_destructor<allocator_type>& __x)
         : __na_(__x.__na_),
           __first_constructed(__x.__value_constructed),
@@ -320,7 +320,7 @@
         {
             const_cast<bool&>(__x.__value_constructed) = false;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void operator()(pointer __p)
     {

Modified: libcxx/trunk/include/forward_list
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/forward_list?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/forward_list (original)
+++ libcxx/trunk/include/forward_list Sat Sep  4 18:28:19 2010
@@ -355,10 +355,10 @@
     __forward_list_base(const allocator_type& __a)
         : __before_begin_(__begin_node(), __node_allocator(__a)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __forward_list_base(__forward_list_base&& __x);
     __forward_list_base(__forward_list_base&& __x, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 private:
     __forward_list_base(const __forward_list_base&);
@@ -405,7 +405,7 @@
         }
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 inline
@@ -428,7 +428,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 __forward_list_base<_Tp, _Alloc>::~__forward_list_base()
@@ -498,17 +498,17 @@
                      >::type* = nullptr);
     forward_list(const forward_list& __x);
     forward_list(const forward_list& __x, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     forward_list(forward_list&& __x) : base(_STD::move(__x)) {}
     forward_list(forward_list&& __x, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     forward_list(initializer_list<value_type> __il);
     forward_list(initializer_list<value_type> __il, const allocator_type& __a);
 
     // ~forward_list() = default;
 
     forward_list& operator=(const forward_list& __x);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     forward_list& operator=(forward_list&& __x);
 #endif
     forward_list& operator=(initializer_list<value_type> __il);
@@ -543,19 +543,23 @@
     reference       front()       {return base::__before_begin()->__next_->__value_;}
     const_reference front() const {return base::__before_begin()->__next_->__value_;}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args> void emplace_front(_Args&&... __args);
+#endif
     void push_front(value_type&& __v);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push_front(const value_type& __v);
 
     void pop_front();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
         iterator emplace_after(const_iterator __p, _Args&&... __args);
+#endif  // _LIBCPP_HAS_NO_VARIADICS
     iterator insert_after(const_iterator __p, value_type&& __v);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert_after(const_iterator __p, const value_type& __v);
     iterator insert_after(const_iterator __p, size_type __n, const value_type& __v);
     template <class _InputIterator>
@@ -577,28 +581,28 @@
     void resize(size_type __n, const value_type& __v);
     void clear() {base::clear();}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice_after(const_iterator __p, forward_list&& __x);
     void splice_after(const_iterator __p, forward_list&& __x, const_iterator __i);
     void splice_after(const_iterator __p, forward_list&& __x,
                       const_iterator __f, const_iterator __l);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice_after(const_iterator __p, forward_list& __x);
     void splice_after(const_iterator __p, forward_list& __x, const_iterator __i);
     void splice_after(const_iterator __p, forward_list& __x,
                       const_iterator __f, const_iterator __l);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void remove(const value_type& __v);
     template <class _Predicate> void remove_if(_Predicate __pred);
     void unique() {unique(__equal_to<value_type>());}
     template <class _BinaryPredicate> void unique(_BinaryPredicate __binary_pred);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void merge(forward_list&& __x) {merge(_STD::move(__x), __less<value_type>());}
     template <class _Compare> void merge(forward_list&& __x, _Compare __comp);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void merge(forward_list& __x) {merge(__x, __less<value_type>());}
     template <class _Compare> void merge(forward_list& __x, _Compare __comp);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void sort() {sort(__less<value_type>());}
     template <class _Compare> void sort(_Compare __comp);
     void reverse();
@@ -609,10 +613,10 @@
     typedef typename base::__node_traits     __node_traits;
     typedef typename base::__node_pointer    __node_pointer;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void __move_assign(forward_list& __x, true_type);
     void __move_assign(forward_list& __x, false_type);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     template <class _Compare>
         static
@@ -705,7 +709,7 @@
     insert_after(cbefore_begin(), __x.begin(), __x.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 forward_list<_Tp, _Alloc>::forward_list(forward_list&& __x,
@@ -719,7 +723,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 forward_list<_Tp, _Alloc>::forward_list(initializer_list<value_type> __il)
@@ -747,7 +751,7 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 void
@@ -782,7 +786,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 inline
@@ -836,7 +840,8 @@
     assign(__il.begin(), __il.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Tp, class _Alloc>
 template <class... _Args>
@@ -852,6 +857,8 @@
     base::__before_begin()->__next_ = __h.release();
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Alloc>
 void
 forward_list<_Tp, _Alloc>::push_front(value_type&& __v)
@@ -864,7 +871,7 @@
     base::__before_begin()->__next_ = __h.release();
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 void
@@ -889,7 +896,8 @@
     __node_traits::deallocate(__a, __p, 1);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Tp, class _Alloc>
 template <class... _Args>
@@ -907,6 +915,8 @@
     return iterator(__r->__next_);
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Alloc>
 typename forward_list<_Tp, _Alloc>::iterator
 forward_list<_Tp, _Alloc>::insert_after(const_iterator __p, value_type&& __v)
@@ -921,7 +931,7 @@
     return iterator(__r->__next_);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 typename forward_list<_Tp, _Alloc>::iterator
@@ -1137,7 +1147,7 @@
 template <class _Tp, class _Alloc>
 void
 forward_list<_Tp, _Alloc>::splice_after(const_iterator __p,
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
                                         forward_list&& __x)
 #else
                                         forward_list& __x)
@@ -1162,7 +1172,7 @@
 template <class _Tp, class _Alloc>
 void
 forward_list<_Tp, _Alloc>::splice_after(const_iterator __p,
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
                                         forward_list&& __x,
 #else
                                         forward_list& __x,
@@ -1184,7 +1194,7 @@
 template <class _Tp, class _Alloc>
 void
 forward_list<_Tp, _Alloc>::splice_after(const_iterator __p,
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
                                         forward_list&& __x,
 #else
                                         forward_list& __x,
@@ -1272,7 +1282,7 @@
 template <class _Tp, class _Alloc>
 template <class _Compare>
 void
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 forward_list<_Tp, _Alloc>::merge(forward_list&& __x, _Compare __comp)
 #else
 forward_list<_Tp, _Alloc>::merge(forward_list& __x, _Compare __comp)

Modified: libcxx/trunk/include/fstream
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/fstream?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/fstream (original)
+++ libcxx/trunk/include/fstream Sat Sep  4 18:28:19 2010
@@ -189,13 +189,13 @@
 
     // 27.9.1.2 Constructors/destructor:
     basic_filebuf();
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_filebuf(basic_filebuf&& __rhs);
 #endif
     virtual ~basic_filebuf();
 
     // 27.9.1.3 Assign/swap:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_filebuf& operator=(basic_filebuf&& __rhs);
 #endif
     void swap(basic_filebuf& __rhs);
@@ -260,7 +260,7 @@
     setbuf(0, 4096);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 basic_filebuf<_CharT, _Traits>::basic_filebuf(basic_filebuf&& __rhs)
@@ -333,7 +333,7 @@
     swap(__rhs);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 basic_filebuf<_CharT, _Traits>::~basic_filebuf()
@@ -970,11 +970,11 @@
     basic_ifstream();
     explicit basic_ifstream(const char* __s, ios_base::openmode __mode = ios_base::in);
     explicit basic_ifstream(const string& __s, ios_base::openmode __mode = ios_base::in);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ifstream(basic_ifstream&& __rhs);
 #endif
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ifstream& operator=(basic_ifstream&& __rhs);
 #endif
     void swap(basic_ifstream& __rhs);
@@ -1014,7 +1014,7 @@
         this->setstate(ios_base::failbit);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1035,7 +1035,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1115,11 +1115,11 @@
     basic_ofstream();
     explicit basic_ofstream(const char* __s, ios_base::openmode __mode = ios_base::out);
     explicit basic_ofstream(const string& __s, ios_base::openmode __mode = ios_base::out);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ofstream(basic_ofstream&& __rhs);
 #endif
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ofstream& operator=(basic_ofstream&& __rhs);
 #endif
     void swap(basic_ofstream& __rhs);
@@ -1159,7 +1159,7 @@
         this->setstate(ios_base::failbit);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1180,7 +1180,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1260,11 +1260,11 @@
     basic_fstream();
     explicit basic_fstream(const char* __s, ios_base::openmode __mode = ios_base::in | ios_base::out);
     explicit basic_fstream(const string& __s, ios_base::openmode __mode = ios_base::in | ios_base::out);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_fstream(basic_fstream&& __rhs);
 #endif
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_fstream& operator=(basic_fstream&& __rhs);
 #endif
     void swap(basic_fstream& __rhs);
@@ -1304,7 +1304,7 @@
         this->setstate(ios_base::failbit);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1325,7 +1325,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY

Modified: libcxx/trunk/include/future
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/future?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/future (original)
+++ libcxx/trunk/include/future Sat Sep  4 18:28:19 2010
@@ -610,14 +610,14 @@
 public:
 
     template <class _Arg>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         void set_value(_Arg&& __arg);
 #else
         void set_value(_Arg& __arg);
 #endif
 
     template <class _Arg>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         void set_value_at_thread_exit(_Arg&& __arg);
 #else
         void set_value_at_thread_exit(_Arg& __arg);
@@ -639,7 +639,7 @@
 template <class _R>
 template <class _Arg>
 void
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 __assoc_state<_R>::set_value(_Arg&& __arg)
 #else
 __assoc_state<_R>::set_value(_Arg& __arg)
@@ -657,7 +657,7 @@
 template <class _R>
 template <class _Arg>
 void
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 __assoc_state<_R>::set_value_at_thread_exit(_Arg&& __arg)
 #else
 __assoc_state<_R>::set_value_at_thread_exit(_Arg& __arg)
@@ -834,14 +834,14 @@
     _F __func_;
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit __deferred_assoc_state(_F&& __f);
 #endif
 
     virtual void __execute();
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R, class _F>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -851,7 +851,7 @@
     this->__set_deferred();
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R, class _F>
 void
@@ -880,14 +880,14 @@
     _F __func_;
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit __deferred_assoc_state(_F&& __f);
 #endif
 
     virtual void __execute();
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _F>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -897,7 +897,7 @@
     this->__set_deferred();
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _F>
 void
@@ -928,7 +928,7 @@
 
 template <class _R, class _F>
 future<_R>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 __make_deferred_assoc_state(_F&& __f);
 #else
 __make_deferred_assoc_state(_F __f);
@@ -946,7 +946,7 @@
     template <class> friend class atomic_future;
 
     template <class _R1, class _F>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         friend future<_R1> __make_deferred_assoc_state(_F&& __f);
 #else
         friend future<_R1> __make_deferred_assoc_state(_F __f);
@@ -954,7 +954,7 @@
 
 public:
     future() : __state_(nullptr) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     future(future&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     future(const future&) = delete;
@@ -964,12 +964,12 @@
             future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     future(const future&);
     future& operator=(const future&);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~future();
 
     // retrieving the value
@@ -1035,7 +1035,7 @@
     template <class> friend class atomic_future;
 
     template <class _R1, class _F>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         friend future<_R1> __make_deferred_assoc_state(_F&& __f);
 #else
         friend future<_R1> __make_deferred_assoc_state(_F __f);
@@ -1043,7 +1043,7 @@
 
 public:
     future() : __state_(nullptr) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     future(future&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     future(const future&) = delete;
@@ -1053,12 +1053,12 @@
             future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     future(const future&);
     future& operator=(const future&);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~future();
 
     // retrieving the value
@@ -1119,7 +1119,7 @@
     template <class> friend class atomic_future;
 
     template <class _R1, class _F>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         friend future<_R1> __make_deferred_assoc_state(_F&& __f);
 #else
         friend future<_R1> __make_deferred_assoc_state(_F __f);
@@ -1127,7 +1127,7 @@
 
 public:
     future() : __state_(nullptr) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     future(future&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     future(const future&) = delete;
@@ -1137,12 +1137,12 @@
             future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     future(const future&);
     future& operator=(const future&);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~future();
 
     // retrieving the value
@@ -1188,30 +1188,30 @@
     promise();
     template <class _Alloc>
         promise(allocator_arg_t, const _Alloc& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise(promise&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     promise(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~promise();
 
     // assignment
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise& operator=(promise&& __rhs)
         {
             promise(std::move(__rhs)).swap(*this);
             return *this;
         }
     promise& operator=(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise& operator=(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(promise& __rhs) {_STD::swap(__state_, __rhs.__state_);}
 
     // retrieving the result
@@ -1219,14 +1219,14 @@
 
     // setting the result
     void set_value(const _R& __r);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void set_value(_R&& __r);
 #endif
     void set_exception(exception_ptr __p);
 
     // setting the result with deferred notification
     void set_value_at_thread_exit(const _R& __r);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void set_value_at_thread_exit(_R&& __r);
 #endif
     void set_exception_at_thread_exit(exception_ptr __p);
@@ -1281,7 +1281,7 @@
     __state_->set_value(__r);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R>
 void
@@ -1292,7 +1292,7 @@
     __state_->set_value(_STD::move(__r));
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R>
 void
@@ -1312,7 +1312,7 @@
     __state_->set_value_at_thread_exit(__r);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R>
 void
@@ -1323,7 +1323,7 @@
     __state_->set_value_at_thread_exit(_STD::move(__r));
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _R>
 void
@@ -1349,30 +1349,30 @@
     promise();
     template <class _Allocator>
         promise(allocator_arg_t, const _Allocator& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise(promise&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     promise(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~promise();
 
     // assignment
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise& operator=(promise&& __rhs)
         {
             promise(std::move(__rhs)).swap(*this);
             return *this;
         }
     promise& operator=(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise& operator=(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(promise& __rhs) {_STD::swap(__state_, __rhs.__state_);}
 
     // retrieving the result
@@ -1478,30 +1478,30 @@
     promise();
     template <class _Allocator>
         promise(allocator_arg_t, const _Allocator& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise(promise&& __rhs)
         : __state_(__rhs.__state_) {__rhs.__state_ = nullptr;}
     promise(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~promise();
 
     // assignment
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     promise& operator=(promise&& __rhs)
         {
             promise(std::move(__rhs)).swap(*this);
             return *this;
         }
     promise& operator=(const promise& __rhs) = delete;
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     promise& operator=(const promise& __rhs);
 public:
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(promise& __rhs) {_STD::swap(__state_, __rhs.__state_);}
 
     // retrieving the result
@@ -2021,7 +2021,7 @@
 
 template <class _R, class _F>
 future<_R>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 __make_deferred_assoc_state(_F&& __f)
 #else
 __make_deferred_assoc_state(_F __f)
@@ -2077,21 +2077,21 @@
     shared_future() : __state_(nullptr) {}
     shared_future(const shared_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future(future<_R>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
     shared_future(shared_future&& __rhs) : __state_(__rhs.__state_)
         {__rhs.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~shared_future();
     shared_future& operator=(const shared_future& __rhs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future& operator=(shared_future&& __rhs)
         {
             shared_future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     // retrieving the value
     const _R& get() const {return __state_->copy();}
@@ -2140,21 +2140,21 @@
     shared_future() : __state_(nullptr) {}
     shared_future(const shared_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future(future<_R&>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
     shared_future(shared_future&& __rhs) : __state_(__rhs.__state_)
         {__rhs.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~shared_future();
     shared_future& operator=(const shared_future& __rhs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future& operator=(shared_future&& __rhs)
         {
             shared_future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     // retrieving the value
     _R& get() const {return __state_->copy();}
@@ -2203,21 +2203,21 @@
     shared_future() : __state_(nullptr) {}
     shared_future(const shared_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future(future<void>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
     shared_future(shared_future&& __rhs) : __state_(__rhs.__state_)
         {__rhs.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~shared_future();
     shared_future& operator=(const shared_future& __rhs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_future& operator=(shared_future&& __rhs)
         {
             shared_future(std::move(__rhs)).swap(*this);
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     // retrieving the value
     void get() const {__state_->copy();}
@@ -2258,10 +2258,10 @@
     atomic_future() : __state_(nullptr) {}
     atomic_future(const atomic_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     atomic_future(future<_R>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~atomic_future();
     atomic_future& operator=(const atomic_future& __rhs);
 
@@ -2332,10 +2332,10 @@
     atomic_future() : __state_(nullptr) {}
     atomic_future(const atomic_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     atomic_future(future<_R&>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~atomic_future();
     atomic_future& operator=(const atomic_future& __rhs);
 
@@ -2406,10 +2406,10 @@
     atomic_future() : __state_(nullptr) {}
     atomic_future(const atomic_future& __rhs) : __state_(__rhs.__state_)
         {if (__state_) __state_->__add_shared();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     atomic_future(future<void>&& __f) : __state_(__f.__state_)
         {__f.__state_ = nullptr;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ~atomic_future();
     atomic_future& operator=(const atomic_future& __rhs);
 

Modified: libcxx/trunk/include/ios
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/ios?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/ios (original)
+++ libcxx/trunk/include/ios Sat Sep  4 18:28:19 2010
@@ -609,7 +609,7 @@
     void init(basic_streambuf<char_type, traits_type>* __sb);
 
     void move(basic_ios& __rhs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void move(basic_ios&& __rhs) {move(__rhs);}
 #endif
     void swap(basic_ios& __rhs);

Modified: libcxx/trunk/include/istream
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/istream?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/istream (original)
+++ libcxx/trunk/include/istream Sat Sep  4 18:28:19 2010
@@ -176,12 +176,12 @@
     explicit basic_istream(basic_streambuf<char_type, traits_type>* __sb);
     virtual ~basic_istream();
 protected:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_istream(basic_istream&& __rhs);
 #endif
 
     // 27.7.1.1.2 Assign/swap:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_istream& operator=(basic_istream&& __rhs);
 #endif
     void swap(basic_istream& __rhs);
@@ -287,7 +287,7 @@
     this->init(__sb);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -307,7 +307,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 basic_istream<_CharT, _Traits>::~basic_istream()
@@ -1463,7 +1463,7 @@
     return __is;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1474,7 +1474,7 @@
     return __is;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 class basic_iostream
@@ -1493,12 +1493,12 @@
     explicit basic_iostream(basic_streambuf<char_type, traits_type>* __sb);
     virtual ~basic_iostream();
 protected:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_iostream(basic_iostream&& __rhs);
 #endif
 
     // assign/swap
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_iostream& operator=(basic_iostream&& __rhs);
 #endif
     void swap(basic_iostream& __rhs);
@@ -1512,7 +1512,7 @@
 {
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1530,7 +1530,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 basic_iostream<_CharT, _Traits>::~basic_iostream()
@@ -1655,7 +1655,7 @@
     return getline(__is, __str, __is.widen('\n'));
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _CharT, class _Traits, class _Allocator>
 inline
@@ -1675,7 +1675,7 @@
     return getline(__is, __str, __is.widen('\n'));
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, size_t _Size>
 basic_istream<_CharT, _Traits>&

Modified: libcxx/trunk/include/iterator
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/iterator?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/iterator (original)
+++ libcxx/trunk/include/iterator Sat Sep  4 18:28:19 2010
@@ -626,10 +626,10 @@
     _LIBCPP_INLINE_VISIBILITY explicit back_insert_iterator(_Container& __x) : container(&__x) {}
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator=(typename _Container::const_reference __value)
         {container->push_back(__value); return *this;}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator=(typename _Container::value_type&& __value)
         {container->push_back(_STD::move(__value)); return *this;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator*()     {return *this;}
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator& operator++()    {return *this;}
     _LIBCPP_INLINE_VISIBILITY back_insert_iterator  operator++(int) {return *this;}
@@ -659,10 +659,10 @@
     _LIBCPP_INLINE_VISIBILITY explicit front_insert_iterator(_Container& __x) : container(&__x) {}
     _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator=(typename _Container::const_reference __value)
         {container->push_front(__value); return *this;}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator=(typename _Container::value_type&& __value)
         {container->push_front(_STD::move(__value)); return *this;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator*()     {return *this;}
     _LIBCPP_INLINE_VISIBILITY front_insert_iterator& operator++()    {return *this;}
     _LIBCPP_INLINE_VISIBILITY front_insert_iterator  operator++(int) {return *this;}
@@ -694,10 +694,10 @@
         : container(&__x), iter(__i) {}
     _LIBCPP_INLINE_VISIBILITY insert_iterator& operator=(typename _Container::const_reference __value)
         {iter = container->insert(iter, __value); ++iter; return *this;}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY insert_iterator& operator=(typename _Container::value_type&& __value)
         {iter = container->insert(iter, _STD::move(__value)); ++iter; return *this;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY insert_iterator& operator*()        {return *this;}
     _LIBCPP_INLINE_VISIBILITY insert_iterator& operator++()       {return *this;}
     _LIBCPP_INLINE_VISIBILITY insert_iterator& operator++(int)    {return *this;}
@@ -890,7 +890,7 @@
     typedef typename iterator_traits<iterator_type>::value_type value_type;
     typedef typename iterator_traits<iterator_type>::difference_type difference_type;
     typedef typename iterator_traits<iterator_type>::pointer pointer;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef value_type&& reference;
 #else
     typedef typename iterator_traits<iterator_type>::reference reference;
@@ -1615,7 +1615,7 @@
 
 #endif  // _LIBCPP_DEBUG
 
-#if defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
 
 template <class _C>
 inline
@@ -1649,7 +1649,7 @@
     return __c.end();
 }
 
-#else  // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
+#else  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
 
 template <class _C>
 inline
@@ -1683,7 +1683,7 @@
     return __c.end();
 }
 
-#endif  // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_DECLTYPE)
 
 template <class _T, size_t _N>
 inline

Modified: libcxx/trunk/include/list
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/list?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/list (original)
+++ libcxx/trunk/include/list Sat Sep  4 18:28:19 2010
@@ -501,11 +501,11 @@
     list& operator=(const list& __c);
     list(initializer_list<value_type> __il);
     list(initializer_list<value_type> __il, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     list(list&& __c);
     list(list&& __c, const allocator_type& __a);
     list& operator=(list&& __c);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     list& operator=(initializer_list<value_type> __il)
         {assign(__il.begin(), __il.end()); return *this;}
 
@@ -541,17 +541,19 @@
           reference back()         {return base::__end_.__prev_->__value_;}
     const_reference back()  const  {return base::__end_.__prev_->__value_;}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push_front(value_type&& __x);
     void push_back(value_type&& __x);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
        void emplace_front(_Args&&... __args);
     template <class... _Args>
         void emplace_back(_Args&&... __args);
     template <class... _Args>
         iterator emplace(const_iterator __p, _Args&&... __args);
+#endif  // _LIBCPP_HAS_NO_VARIADICS
     iterator insert(const_iterator __p, value_type&& __x);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void push_front(const value_type& __x);
     void push_back(const value_type& __x);
@@ -577,19 +579,19 @@
     void resize(size_type __n, const value_type& __x);
 
     void splice(const_iterator __p, list& __c);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice(const_iterator __p, list&& __c) {splice(__p, __c);}
 #endif
     void splice(const_iterator __p, list& __c, const_iterator __i);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice(const_iterator __p, list&& __c, const_iterator __i)
         {splice(__p, __c, __i);}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice(const_iterator __p, list& __c, const_iterator __f, const_iterator __l);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void splice(const_iterator __p, list&& __c, const_iterator __f, const_iterator __l)
         {splice(__p, __c, __f, __l);}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void remove(const value_type& __x);
     template <class _Pred> void remove_if(_Pred __pred);
@@ -597,15 +599,15 @@
     template <class _BinaryPred>
         void unique(_BinaryPred __binary_pred);
     void merge(list& __c);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void merge(list&& __c) {merge(__c);}
 #endif
     template <class _Comp>
         void merge(list& __c, _Comp __comp);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Comp>
         void merge(list&& __c, _Comp __comp) {merge(__c, __comp);}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void sort();
     template <class _Comp>
         void sort(_Comp __comp);
@@ -647,7 +649,7 @@
 list<_Tp, _Alloc>::list(size_type __n)
 {
     for (; __n > 0; --__n)
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         emplace_back();
 #else
         push_back(value_type());
@@ -736,7 +738,7 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 inline
@@ -792,7 +794,7 @@
     splice(end(), __c);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 template <class _InpIter>
@@ -976,7 +978,7 @@
     __hold.release();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 void
@@ -1004,6 +1006,8 @@
     __hold.release();
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Alloc>
 template <class... _Args>
 void
@@ -1047,6 +1051,8 @@
     return iterator(__hold.release());
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Alloc>
 typename list<_Tp, _Alloc>::iterator
 list<_Tp, _Alloc>::insert(const_iterator __p, value_type&& __x)
@@ -1061,7 +1067,7 @@
     return iterator(__hold.release());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Alloc>
 void

Modified: libcxx/trunk/include/locale
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/locale?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/locale (original)
+++ libcxx/trunk/include/locale Sat Sep  4 18:28:19 2010
@@ -3564,7 +3564,7 @@
     wstring_convert(_Codecvt* __pcvt, state_type __state);
     wstring_convert(const byte_string& __byte_err,
                     const wide_string& __wide_err = wide_string());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     wstring_convert(wstring_convert&& __wc);
 #endif
     ~wstring_convert();
@@ -3614,7 +3614,7 @@
     __cvtptr_ = new _Codecvt;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Codecvt, class _Elem, class _Wide_alloc, class _Byte_alloc>
 inline
@@ -3628,7 +3628,7 @@
     __wc.__cvtptr_ = nullptr;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
 
 template<class _Codecvt, class _Elem, class _Wide_alloc, class _Byte_alloc>
 wstring_convert<_Codecvt, _Elem, _Wide_alloc, _Byte_alloc>::~wstring_convert()

Modified: libcxx/trunk/include/map
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/map?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/map (original)
+++ libcxx/trunk/include/map Sat Sep  4 18:28:19 2010
@@ -455,7 +455,7 @@
           __second_constructed(false)
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __map_node_destructor(__tree_node_destructor<allocator_type>&& __x)
         : __na_(__x.__na_),
           __first_constructed(__x.__value_constructed),
@@ -463,7 +463,7 @@
         {
             __x.__value_constructed = false;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
 
     void operator()(pointer __p)
     {
@@ -672,7 +672,7 @@
             insert(__m.begin(), __m.end());
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     map(map&& __m)
         : __tree_(_STD::move(__m.__tree_))
@@ -705,7 +705,7 @@
             return *this;
         }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
 
     explicit map(const allocator_type& __a)
         : __tree_(__a)
@@ -738,7 +738,7 @@
     size_type max_size() const {return __tree_.max_size();}
 
     mapped_type& operator[](const key_type& __k);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     mapped_type& operator[](key_type&& __k);
 #endif
 
@@ -749,7 +749,7 @@
     key_compare    key_comp()      const {return __tree_.value_comp().key_comp();}
     value_compare  value_comp()    const {return value_compare(__tree_.value_comp().key_comp());}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     pair<iterator, bool>
         emplace() {return __tree_.__emplace_unique();}
@@ -760,11 +760,15 @@
         emplace(_A0&& __a0)
             {return __tree_.__emplace_unique(_STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         pair<iterator, bool>
         emplace(_A0&& __a0, _Args&& ...__args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     iterator
     emplace_hint(const_iterator __p)
         {return __tree_.__emplace_hint_unique(__p.__i_);}
@@ -775,11 +779,15 @@
         emplace_hint(const_iterator __p, _A0&& __a0)
             {return __tree_.__emplace_hint_unique(__p.__i_, _STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator
         emplace_hint(const_iterator __p, _A0&& __a0, _Args&& ...__args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         pair<iterator, bool> insert(_P&& __p)
@@ -790,7 +798,7 @@
         iterator insert(const_iterator __pos, _P&& __p)
             {return __tree_.__insert_unique(__pos.__i_, _STD::forward<_P>(__p));}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     pair<iterator, bool>
         insert(const value_type& __v) {return __tree_.__insert_unique(__v);}
@@ -845,15 +853,17 @@
     typedef __map_node_destructor<__node_allocator> _D;
     typedef unique_ptr<__node, _D> __node_holder;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __node_holder __construct_node();
     template <class _A0,
               class = typename enable_if<is_convertible<_A0, value_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0, _Args&& ...__args);
-#else  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __node_holder __construct_node(const key_type& __k);
 #endif
 
@@ -1016,7 +1026,7 @@
     return const_cast<const __node_base_const_pointer&>(__parent->__left_);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 map<_Key, _Tp, _Compare, _Allocator>::map(map&& __m, const allocator_type& __a)
@@ -1058,6 +1068,8 @@
     return __h;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 template <class _A0, class ..._Args,
           class>
@@ -1073,7 +1085,9 @@
     return __h;
 }
 
-#else  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 typename map<_Key, _Tp, _Compare, _Allocator>::__node_holder
@@ -1088,7 +1102,7 @@
     return _STD::move(__h);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 _Tp&
@@ -1106,7 +1120,7 @@
     return __r->__value_.second;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 _Tp&
@@ -1124,7 +1138,7 @@
     return __r->__value_.second;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 _Tp&
@@ -1152,7 +1166,7 @@
     return static_cast<__node_const_pointer>(__child)->__value_.second;
 }
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 template <class _A0, class ..._Args,
@@ -1185,7 +1199,7 @@
     return __r;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 inline
@@ -1332,7 +1346,7 @@
             insert(__m.begin(), __m.end());
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     multimap(multimap&& __m)
         : __tree_(_STD::move(__m.__tree_))
@@ -1364,7 +1378,7 @@
             __tree_.__assign_multi(__il.begin(), __il.end());
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
     explicit multimap(const allocator_type& __a)
         : __tree_(__a)
@@ -1400,7 +1414,7 @@
     key_compare    key_comp()      const {return __tree_.value_comp().key_comp();}
     value_compare  value_comp()    const {return value_compare(__tree_.value_comp().key_comp());}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     iterator emplace() {return __tree_.__emplace_multi();}
 
@@ -1410,11 +1424,15 @@
         emplace(_A0&& __a0)
             {return __tree_.__emplace_multi(_STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator
         emplace(_A0&& __a0, _Args&& ...__args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     iterator emplace_hint(const_iterator __p)
         {return __tree_.__emplace_hint_multi(__p.__i_);}
 
@@ -1424,11 +1442,15 @@
         emplace_hint(const_iterator __p, _A0&& __a0)
             {return __tree_.__emplace_hint_multi(__p.__i_, _STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator
         emplace_hint(const_iterator __p, _A0&& __a0, _Args&& ...__args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         iterator insert(_P&& __p)
@@ -1439,7 +1461,7 @@
         iterator insert(const_iterator __pos, _P&& __p)
             {return __tree_.__insert_multi(__pos.__i_, _STD::forward<_P>(__p));}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     iterator insert(const value_type& __v) {return __tree_.__insert_multi(__v);}
 
@@ -1489,18 +1511,20 @@
     typedef __map_node_destructor<__node_allocator> _D;
     typedef unique_ptr<__node, _D> __node_holder;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __node_holder __construct_node();
     template <class _A0,
               class = typename enable_if<is_convertible<_A0, value_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class _A0, class ..._Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0, _Args&& ...__args);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 multimap<_Key, _Tp, _Compare, _Allocator>::multimap(multimap&& __m, const allocator_type& __a)
@@ -1543,6 +1567,8 @@
     return __h;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 template <class _A0, class ..._Args,
           class // = typename enable_if<is_convertible<_A0, key_type>::value>::type
@@ -1559,9 +1585,10 @@
     return __h;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 template <class _A0, class ..._Args,
@@ -1593,7 +1620,7 @@
     return __r;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 
 template <class _Key, class _Tp, class _Compare, class _Allocator>
 inline

Modified: libcxx/trunk/include/memory
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/memory?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/memory (original)
+++ libcxx/trunk/include/memory Sat Sep  4 18:28:19 2010
@@ -1448,7 +1448,7 @@
 {
 };
 
-#if defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
 
 // uses-allocator construction
 
@@ -1466,7 +1466,7 @@
     : integral_constant<int, __uses_alloc_ctor_imp<_Tp, _Alloc, _Args...>::value>
     {};
 
-#endif  // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
 
 // allocator
 
@@ -1492,7 +1492,7 @@
         {return static_cast<pointer>(::operator new(__n * sizeof(_Tp)));}
     _LIBCPP_INLINE_VISIBILITY void deallocate(pointer __p, size_type) {::operator delete((void*)__p);}
     _LIBCPP_INLINE_VISIBILITY size_type max_size() const throw() {return size_type(~0) / sizeof(_Tp);}
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class _Up, class... _Args>
         _LIBCPP_INLINE_VISIBILITY
         void
@@ -1500,7 +1500,7 @@
         {
             ::new((void*)__p) _Up(_STD::forward<_Args>(__args)...);
         }
-#else  // _LIBCPP_MOVE
+#else  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
         _LIBCPP_INLINE_VISIBILITY
         void
         construct(pointer __p)
@@ -1568,7 +1568,7 @@
         {
             ::new((void*)__p) _Tp(__a0, __a1);
         }
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     _LIBCPP_INLINE_VISIBILITY void destroy(pointer __p) {__p->~_Tp();}
 };
 
@@ -1732,10 +1732,10 @@
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(_T1_param __t1, _T2_param __t2)
         : __first_(_STD::forward<_T1_param>(__t1)), __second_(_STD::forward<_T2_param>(__t2)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)
         : __first_(_STD::forward<_T1>(__p.first())), __second_(_STD::forward<_T2>(__p.second())) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY _T1_reference       first()       {return __first_;}
     _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return __first_;}
@@ -1775,10 +1775,10 @@
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(_T1_param __t1, _T2_param __t2)
         : _T1(_STD::forward<_T1_param>(__t1)), __second_(_STD::forward<_T2_param>(__t2)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)
         : _T1(_STD::move(__p.first())), __second_(_STD::forward<_T2>(__p.second())) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY _T1_reference       first()       {return *this;}
     _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return *this;}
@@ -1817,10 +1817,10 @@
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(_T1_param __t1, _T2_param __t2)
         : _T2(_STD::forward<_T2_param>(__t2)), __first_(_STD::forward<_T1_param>(__t1)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)
         : _T2(_STD::forward<_T2>(__p.second())), __first_(_STD::move(__p.first())) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY _T1_reference       first()       {return __first_;}
     _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return __first_;}
@@ -1858,10 +1858,10 @@
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(_T1_param __t1, _T2_param __t2)
         : _T1(_STD::forward<_T1_param>(__t1)), _T2(_STD::forward<_T2_param>(__t2)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY __libcpp_compressed_pair_imp(__libcpp_compressed_pair_imp&& __p)
         : _T1(_STD::move(__p.first())), _T2(_STD::move(__p.second())) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY _T1_reference       first()       {return *this;}
     _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return *this;}
@@ -1897,10 +1897,10 @@
     _LIBCPP_INLINE_VISIBILITY __compressed_pair(_T1_param __t1, _T2_param __t2)
         : base(_STD::forward<_T1_param>(__t1), _STD::forward<_T2_param>(__t2)) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __compressed_pair(__compressed_pair&& __p)
         : base(_STD::move(__p)) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY _T1_reference       first()       {return base::first();}
     _LIBCPP_INLINE_VISIBILITY _T1_const_reference first() const {return base::first();}
@@ -1953,21 +1953,21 @@
 private:
     __compressed_pair<pointer, deleter_type> __ptr_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unique_ptr(const unique_ptr&);
     unique_ptr& operator=(const unique_ptr&);
     template <class _Up, class _Ep>
         unique_ptr(const unique_ptr<_Up, _Ep>&);
     template <class _Up, class _Ep>
         unique_ptr& operator=(const unique_ptr<_Up, _Ep>&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unique_ptr(unique_ptr&);
     template <class _Up, class _Ep>
         unique_ptr(unique_ptr<_Up, _Ep>&);
     unique_ptr& operator=(unique_ptr&);
     template <class _Up, class _Ep>
         unique_ptr& operator=(unique_ptr<_Up, _Ep>&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     struct __nat {int __for_bool_;};
 
@@ -1993,7 +1993,7 @@
                 "unique_ptr constructed with null function pointer deleter");
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY unique_ptr(pointer __p, typename conditional<
                                         is_reference<deleter_type>::value,
                                         deleter_type,
@@ -2054,7 +2054,7 @@
                 __ptr_.second() = _STD::forward<_Ep>(__u.get_deleter());
                 return *this;
             }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY operator __rv<unique_ptr>()
     {
@@ -2085,7 +2085,7 @@
         operator=(auto_ptr<_Up> __p)
             {reset(__p.release()); return *this;}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY ~unique_ptr() {reset();}
 
     _LIBCPP_INLINE_VISIBILITY unique_ptr& operator=(nullptr_t)
@@ -2130,17 +2130,17 @@
 private:
     __compressed_pair<pointer, deleter_type> __ptr_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unique_ptr(const unique_ptr&);
     unique_ptr& operator=(const unique_ptr&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unique_ptr(unique_ptr&);
     template <class _Up>
         unique_ptr(unique_ptr<_Up>&);
     unique_ptr& operator=(unique_ptr&);
     template <class _Up>
         unique_ptr& operator=(unique_ptr<_Up>&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     struct __nat {int __for_bool_;};
 
@@ -2159,7 +2159,7 @@
             static_assert(!is_pointer<deleter_type>::value,
                 "unique_ptr constructed with null function pointer deleter");
         }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_same<_P, pointer>::value>::type
              >
@@ -2210,7 +2210,7 @@
             __ptr_.second() = _STD::forward<deleter_type>(__u.get_deleter());
             return *this;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY explicit unique_ptr(pointer __p)
         : __ptr_(__p)
@@ -2240,7 +2240,7 @@
         return *this;
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY ~unique_ptr() {reset();}
 
     _LIBCPP_INLINE_VISIBILITY unique_ptr& operator=(nullptr_t)
@@ -2263,7 +2263,7 @@
         return __t;
     }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_same<_P, pointer>::value>::type
              >
@@ -2288,7 +2288,7 @@
         if (__tmp)
             __ptr_.second()(__tmp);
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY void reset(pointer __p = pointer())
     {
         pointer __tmp = __ptr_.first();
@@ -2296,12 +2296,12 @@
         if (__tmp)
             __ptr_.second()(__tmp);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_INLINE_VISIBILITY void swap(unique_ptr& __u) {__ptr_.swap(__u.__ptr_);}
 private:
 
-#ifndef _LIBCPP_MOVE
+#ifdef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Up>
         explicit unique_ptr(_Up);
     template <class _Up>
@@ -2315,7 +2315,7 @@
                          is_convertible<_Up, pointer>::value,
                          __nat
                       >::type = __nat());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 };
 
 template <class _Tp, class _Dp>
@@ -2667,19 +2667,19 @@
     template<class _Yp>
         shared_ptr(const shared_ptr<_Yp>& __r,
                    typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_ptr(shared_ptr&& __r);
     template<class _Yp> shared_ptr(shared_ptr<_Yp>&& __r,
                    typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type = __nat());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template<class _Yp> explicit shared_ptr(const weak_ptr<_Yp>& __r,
                    typename enable_if<is_convertible<_Yp*, _Tp*>::value, __nat>::type= __nat());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template<class _Yp> shared_ptr(auto_ptr<_Yp>&& __r);
 #else
     template<class _Yp> shared_ptr(auto_ptr<_Yp> __r);
 #endif
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     template <class _Yp, class _Dp> shared_ptr(const unique_ptr<_Yp, _Dp>& __r);// = delete;
 public:
@@ -2687,30 +2687,30 @@
        typename enable_if<!is_lvalue_reference<_Dp>::value, __nat>::type = __nat());
     template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>&&,
        typename enable_if<is_lvalue_reference<_Dp>::value, __nat>::type = __nat());
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>,
        typename enable_if<!is_lvalue_reference<_Dp>::value, __nat>::type = __nat());
     template <class _Yp, class _Dp> shared_ptr(unique_ptr<_Yp, _Dp>,
        typename enable_if<is_lvalue_reference<_Dp>::value, __nat>::type = __nat());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     ~shared_ptr();
 
     shared_ptr& operator=(const shared_ptr& __r);
     template<class _Yp> shared_ptr& operator=(const shared_ptr<_Yp>& __r);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     shared_ptr& operator=(shared_ptr&& __r);
     template<class _Yp> shared_ptr& operator=(shared_ptr<_Yp>&& __r);
     template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp>&& __r);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template<class _Yp> shared_ptr& operator=(auto_ptr<_Yp> __r);
 #endif
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 private:
     template <class _Yp, class _Dp> shared_ptr& operator=(const unique_ptr<_Yp, _Dp>& __r);// = delete;
 public:
     template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp>&& __r);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Yp, class _Dp> shared_ptr& operator=(unique_ptr<_Yp, _Dp> __r);
 #endif
 
@@ -2954,7 +2954,7 @@
         __cntrl_->__add_shared();
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -2978,11 +2978,11 @@
     __r.__cntrl_ = 0;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Tp>
 template<class _Yp>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 shared_ptr<_Tp>::shared_ptr(auto_ptr<_Yp>&& __r)
 #else
 shared_ptr<_Tp>::shared_ptr(auto_ptr<_Yp> __r)
@@ -2997,7 +2997,7 @@
 
 template<class _Tp>
 template <class _Yp, class _Dp>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp>&& __r,
 #else
 shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp> __r,
@@ -3013,7 +3013,7 @@
 
 template<class _Tp>
 template <class _Yp, class _Dp>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp>&& __r,
 #else
 shared_ptr<_Tp>::shared_ptr(unique_ptr<_Yp, _Dp> __r,
@@ -3240,7 +3240,7 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -3281,7 +3281,7 @@
     return *this;
 }
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Tp>
 template<class _Yp>
@@ -3303,7 +3303,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY

Modified: libcxx/trunk/include/mutex
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/mutex?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/mutex (original)
+++ libcxx/trunk/include/mutex Sat Sep  4 18:28:19 2010
@@ -456,7 +456,7 @@
 {
     _F __f_;
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit __call_once_param(_F&& __f) : __f_(_STD::move(__f)) {}
 #else
     explicit __call_once_param(const _F& __f) : __f_(__f) {}

Modified: libcxx/trunk/include/ostream
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/ostream?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/ostream (original)
+++ libcxx/trunk/include/ostream Sat Sep  4 18:28:19 2010
@@ -153,12 +153,12 @@
     explicit basic_ostream(basic_streambuf<char_type, traits_type>* __sb);
     virtual ~basic_ostream();
 protected:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ostream(basic_ostream&& __rhs);
 #endif
 
     // 27.7.2.3 Assign/swap
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ostream& operator=(basic_ostream&& __rhs);
 #endif
     void swap(basic_ostream& __rhs);
@@ -261,7 +261,7 @@
     this->init(__sb);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -279,7 +279,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits>
 basic_ostream<_CharT, _Traits>::~basic_ostream()
@@ -1206,7 +1206,7 @@
     return __os;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Stream, class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1222,7 +1222,7 @@
     return __os;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _CharT, class _Traits, class _Allocator>
 basic_ostream<_CharT, _Traits>&

Modified: libcxx/trunk/include/queue
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/queue?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/queue (original)
+++ libcxx/trunk/include/queue Sat Sep  4 18:28:19 2010
@@ -182,10 +182,10 @@
 public:
     queue() : c() {}
     explicit queue(const container_type& __c)  : c(__c) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit queue(container_type&& __c) : c(_STD::move(__c)) {}
     queue(queue&& __q) : c(_STD::move(__q.c)) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         explicit queue(const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
@@ -201,7 +201,7 @@
                        typename enable_if<uses_allocator<container_type,
                                                          _Alloc>::value>::type* = 0)
             : c(__c, __a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         queue(container_type&& __c, const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
@@ -218,7 +218,7 @@
         c = _STD::move(__q.c);
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     bool      empty() const {return c.empty();}
     size_type size() const  {return c.size();}
@@ -229,12 +229,14 @@
     const_reference back() const  {return c.back();}
 
     void push(const value_type& __v) {c.push_back(__v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push(value_type&& __v)      {c.push_back(_STD::move(__v));}
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
         void emplace(_Args&&... __args)
             {c.emplace_back(_STD::forward<_Args>(__args)...);}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void pop() {c.pop_front();}
 
     void swap(queue& __q)
@@ -336,7 +338,7 @@
     explicit priority_queue(const value_compare& __comp = value_compare())
         : c(), comp(__comp) {}
     priority_queue(const value_compare& __comp, const container_type& __c);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit priority_queue(const value_compare& __comp, container_type&& __c);
 #endif
     template <class _InputIter>
@@ -345,13 +347,13 @@
     template <class _InputIter>
         priority_queue(_InputIter __f, _InputIter __l,
                        const value_compare& __comp, const container_type& __c);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIter>
         priority_queue(_InputIter __f, _InputIter __l,
                        const value_compare& __comp, container_type&& __c);
     priority_queue(priority_queue&& __q);
     priority_queue& operator=(priority_queue&& __q);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         explicit priority_queue(const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
@@ -369,7 +371,7 @@
         priority_queue(const priority_queue& __q, const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
                                                          _Alloc>::value>::type* = 0);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         priority_queue(const value_compare& __comp, container_type&& __c,
                        const _Alloc& __a,
@@ -379,17 +381,19 @@
         priority_queue(priority_queue&& __q, const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
                                                          _Alloc>::value>::type* = 0);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     bool            empty() const {return c.empty();}
     size_type       size() const  {return c.size();}
     const_reference top() const   {return c.front();}
 
     void push(const value_type& __v);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push(value_type&& __v);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args> void emplace(_Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void pop();
 
     void swap(priority_queue& __q);
@@ -405,7 +409,7 @@
     _STD::make_heap(c.begin(), c.end(), comp);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 inline
@@ -417,7 +421,7 @@
     _STD::make_heap(c.begin(), c.end(), comp);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 template <class _InputIter>
@@ -443,7 +447,7 @@
     _STD::make_heap(c.begin(), c.end(), comp);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 template <class _InputIter>
@@ -475,7 +479,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 template <class _Alloc>
@@ -526,7 +530,7 @@
     _STD::make_heap(c.begin(), c.end(), comp);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 template <class _Alloc>
@@ -555,7 +559,7 @@
     _STD::make_heap(c.begin(), c.end(), comp);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 inline
@@ -566,7 +570,7 @@
     _STD::push_heap(c.begin(), c.end(), comp);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 inline
@@ -577,6 +581,8 @@
     _STD::push_heap(c.begin(), c.end(), comp);
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Container, class _Compare>
 template <class... _Args>
 inline
@@ -587,7 +593,8 @@
     _STD::push_heap(c.begin(), c.end(), comp);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Container, class _Compare>
 inline

Modified: libcxx/trunk/include/random
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/random?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/random (original)
+++ libcxx/trunk/include/random Sat Sep  4 18:28:19 2010
@@ -2685,10 +2685,10 @@
     discard_block_engine() : __n_(0) {}
     explicit discard_block_engine(const _Engine& __e)
         : __e_(__e), __n_(0) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit discard_block_engine(_Engine&& __e)
         : __e_(_STD::move(__e)), __n_(0) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit discard_block_engine(result_type __sd) : __e_(__sd), __n_(0) {}
     template<class _Sseq> explicit discard_block_engine(_Sseq& __q,
         typename enable_if<!is_convertible<_Sseq, result_type>::value &&
@@ -2872,10 +2872,10 @@
     independent_bits_engine() {}
     explicit independent_bits_engine(const _Engine& __e)
         : __e_(__e) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit independent_bits_engine(_Engine&& __e)
         : __e_(_STD::move(__e)) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit independent_bits_engine(result_type __sd) : __e_(__sd) {}
     template<class _Sseq> explicit independent_bits_engine(_Sseq& __q,
         typename enable_if<!is_convertible<_Sseq, result_type>::value &&
@@ -3080,10 +3080,10 @@
     shuffle_order_engine() {__init();}
     explicit shuffle_order_engine(const _Engine& __e)
         : __e_(__e) {__init();}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit shuffle_order_engine(_Engine&& __e)
         : __e_(_STD::move(__e)) {__init();}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit shuffle_order_engine(result_type __sd) : __e_(__sd) {__init();}
     template<class _Sseq> explicit shuffle_order_engine(_Sseq& __q,
         typename enable_if<!is_convertible<_Sseq, result_type>::value &&

Modified: libcxx/trunk/include/regex
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/regex?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/regex (original)
+++ libcxx/trunk/include/regex Sat Sep  4 18:28:19 2010
@@ -5185,10 +5185,8 @@
     explicit match_results(const allocator_type& __a = allocator_type());
 //    match_results(const match_results&) = default;
 //    match_results& operator=(const match_results&) = default;
-#ifdef _LIBCPP_MOVE
 //    match_results(match_results&& __m) = default;
 //    match_results& operator=(match_results&& __m) = default;
-#endif  // _LIBCPP_MOVE
 //    ~match_results() = default;
 
     // size:

Modified: libcxx/trunk/include/scoped_allocator
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/scoped_allocator?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/scoped_allocator (original)
+++ libcxx/trunk/include/scoped_allocator Sat Sep  4 18:28:19 2010
@@ -107,7 +107,7 @@
 
 _LIBCPP_BEGIN_NAMESPACE_STD
 
-#if defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
 
 // scoped_allocator_adaptor
 
@@ -526,7 +526,7 @@
     return !(__a == __b);
 }
 
-#endif  // defined(_LIBCPP_MOVE) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_ADVANCED_SFINAE)
 
 _LIBCPP_END_NAMESPACE_STD
 

Modified: libcxx/trunk/include/set
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/set?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/set (original)
+++ libcxx/trunk/include/set Sat Sep  4 18:28:19 2010
@@ -365,10 +365,10 @@
             insert(__s.begin(), __s.end());
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     set(set&& __s)
         : __tree_(_STD::move(__s.__tree_)) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     explicit set(const allocator_type& __a)
         : __tree_(__a) {}
@@ -379,7 +379,7 @@
             insert(__s.begin(), __s.end());
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     set(set&& __s, const allocator_type& __a);
 #endif
 
@@ -402,13 +402,13 @@
             return *this;
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     set& operator=(set&& __s)
         {
             __tree_ = _STD::move(__s.__tree_);
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
           iterator begin()       {return __tree_.begin();}
     const_iterator begin() const {return __tree_.begin();}
@@ -430,26 +430,26 @@
     size_type max_size() const {return __tree_.max_size();}
 
     // modifiers:
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class... _Args>
         pair<iterator, bool> emplace(_Args&&... __args)
             {return __tree_.__emplace_unique(_STD::forward<_Args>(__args)...);}
     template <class... _Args>
         iterator emplace_hint(const_iterator __p, _Args&&... __args)
             {return __tree_.__emplace_hint_unique(__p, _STD::forward<_Args>(__args)...);}
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     pair<iterator,bool> insert(const value_type& __v)
         {return __tree_.__insert_unique(__v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     pair<iterator,bool> insert(value_type&& __v)
         {return __tree_.__insert_unique(_STD::move(__v));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, const value_type& __v)
         {return __tree_.__insert_unique(__p, __v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, value_type&& __v)
         {return __tree_.__insert_unique(__p, _STD::move(__v));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __f, _InputIterator __l)
         {
@@ -492,7 +492,7 @@
         {return __tree_.__equal_range_unique(__k);}
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Compare, class _Allocator>
 set<_Key, _Compare, _Allocator>::set(set&& __s, const allocator_type& __a)
@@ -506,7 +506,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Compare, class _Allocator>
 inline
@@ -631,10 +631,10 @@
             insert(__s.begin(), __s.end());
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     multiset(multiset&& __s)
         : __tree_(_STD::move(__s.__tree_)) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit multiset(const allocator_type& __a)
         : __tree_(__a) {}
     multiset(const multiset& __s, const allocator_type& __a)
@@ -642,7 +642,7 @@
         {
             insert(__s.begin(), __s.end());
         }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     multiset(multiset&& __s, const allocator_type& __a);
 #endif
 
@@ -665,13 +665,13 @@
             return *this;
         }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     multiset& operator=(multiset&& __s)
         {
             __tree_ = _STD::move(__s.__tree_);
             return *this;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
           iterator begin()       {return __tree_.begin();}
     const_iterator begin() const {return __tree_.begin();}
@@ -693,26 +693,26 @@
     size_type max_size() const {return __tree_.max_size();}
 
     // modifiers:
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class... _Args>
         iterator emplace(_Args&&... __args)
             {return __tree_.__emplace_multi(_STD::forward<_Args>(__args)...);}
     template <class... _Args>
         iterator emplace_hint(const_iterator __p, _Args&&... __args)
             {return __tree_.__emplace_hint_multi(__p, _STD::forward<_Args>(__args)...);}
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     iterator insert(const value_type& __v)
         {return __tree_.__insert_multi(__v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(value_type&& __v)
         {return __tree_.__insert_multi(_STD::move(__v));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, const value_type& __v)
         {return __tree_.__insert_multi(__p, __v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, value_type&& __v)
         {return __tree_.__insert_multi(_STD::move(__v));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __f, _InputIterator __l)
         {
@@ -754,7 +754,7 @@
             {return __tree_.__equal_range_multi(__k);}
 };
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Compare, class _Allocator>
 multiset<_Key, _Compare, _Allocator>::multiset(multiset&& __s, const allocator_type& __a)
@@ -768,7 +768,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Compare, class _Allocator>
 inline

Modified: libcxx/trunk/include/sstream
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/sstream?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/sstream (original)
+++ libcxx/trunk/include/sstream Sat Sep  4 18:28:19 2010
@@ -206,12 +206,12 @@
     explicit basic_stringbuf(ios_base::openmode __wch = ios_base::in | ios_base::out);
     explicit basic_stringbuf(const string_type& __s,
                              ios_base::openmode __wch = ios_base::in | ios_base::out);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_stringbuf(basic_stringbuf&& __rhs);
 #endif
 
     // 27.8.1.2 Assign and swap:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_stringbuf& operator=(basic_stringbuf&& __rhs);
 #endif
     void swap(basic_stringbuf& __rhs);
@@ -250,7 +250,7 @@
     str(__s);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 basic_stringbuf<_CharT, _Traits, _Allocator>::basic_stringbuf(basic_stringbuf&& __rhs)
@@ -298,7 +298,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 void
@@ -546,12 +546,12 @@
     explicit basic_istringstream(ios_base::openmode __wch = ios_base::in);
     explicit basic_istringstream(const string_type& __s,
                                  ios_base::openmode __wch = ios_base::in);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_istringstream(basic_istringstream&& __rhs);
 
     // 27.8.2.2 Assign and swap:
     basic_istringstream& operator=(basic_istringstream&& __rhs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(basic_istringstream& __rhs);
 
     // 27.8.2.3 Members:
@@ -577,7 +577,7 @@
 {
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -597,7 +597,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -665,12 +665,12 @@
     explicit basic_ostringstream(ios_base::openmode __wch = ios_base::out);
     explicit basic_ostringstream(const string_type& __s,
                                  ios_base::openmode __wch = ios_base::out);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_ostringstream(basic_ostringstream&& __rhs);
 
     // 27.8.2.2 Assign and swap:
     basic_ostringstream& operator=(basic_ostringstream&& __rhs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(basic_ostringstream& __rhs);
 
     // 27.8.2.3 Members:
@@ -696,7 +696,7 @@
 {
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -716,7 +716,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -784,12 +784,12 @@
     explicit basic_stringstream(ios_base::openmode __wch = ios_base::in | ios_base::out);
     explicit basic_stringstream(const string_type& __s,
                                 ios_base::openmode __wch = ios_base::in | ios_base::out);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_stringstream(basic_stringstream&& __rhs);
 
     // 27.8.2.2 Assign and swap:
     basic_stringstream& operator=(basic_stringstream&& __rhs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void swap(basic_stringstream& __rhs);
 
     // 27.8.2.3 Members:
@@ -815,7 +815,7 @@
 {
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -835,7 +835,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 inline _LIBCPP_INLINE_VISIBILITY

Modified: libcxx/trunk/include/stack
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/stack?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/stack (original)
+++ libcxx/trunk/include/stack Sat Sep  4 18:28:19 2010
@@ -107,11 +107,11 @@
 public:
     stack() : c() {}
     explicit stack(const container_type& __c) : c(__c) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     explicit stack(container_type&& __c) : c(_STD::move(__c)) {}
     stack(stack&& __s) : c(_STD::move(__s.c)) {}
     stack& operator=(stack&& __s) {c = _STD::move(__s.c); return *this;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         explicit stack(const _Alloc& __a,
                        typename enable_if<uses_allocator<container_type,
@@ -127,7 +127,7 @@
               typename enable_if<uses_allocator<container_type,
                                                 _Alloc>::value>::type* = 0)
             : c(__s.c, __a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _Alloc>
         stack(container_type&& __c, const _Alloc& __a,
               typename enable_if<uses_allocator<container_type,
@@ -138,7 +138,7 @@
               typename enable_if<uses_allocator<container_type,
                                                 _Alloc>::value>::type* = 0)
             : c(_STD::move(__s.c), __a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     bool empty()     const      {return c.empty();}
     size_type size() const      {return c.size();}
@@ -146,11 +146,13 @@
     const_reference top() const {return c.back();}
 
     void push(const value_type& __v) {c.push_back(__v);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push(value_type&& __v) {c.push_back(_STD::move(__v));}
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args> void emplace(_Args&&... __args)
         {c.emplace_back(_STD::forward<_Args>(__args)...);}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void pop() {c.pop_back();}
 
     void swap(stack& __s)

Modified: libcxx/trunk/include/string
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/string?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/string (original)
+++ libcxx/trunk/include/string Sat Sep  4 18:28:19 2010
@@ -1031,10 +1031,10 @@
     explicit basic_string(const allocator_type& __a);
     basic_string(const basic_string& __str);
     basic_string(const basic_string& __str, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_string(basic_string&& __str);
     basic_string(basic_string&& __str, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     basic_string(const_pointer __s);
     basic_string(const_pointer __s, const allocator_type& __a);
     basic_string(const_pointer __s, size_type __n);
@@ -1053,7 +1053,7 @@
     ~basic_string();
 
     _LIBCPP_INLINE_VISIBILITY basic_string& operator=(const basic_string& __str) {return assign(__str);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     _LIBCPP_INLINE_VISIBILITY basic_string& operator=(basic_string&& __str) {swap(__str); return *this;}
 #endif
     _LIBCPP_INLINE_VISIBILITY basic_string& operator=(const_pointer __s)         {return assign(__s);}
@@ -1521,7 +1521,7 @@
         __init(__str.__get_long_pointer(), __str.__get_long_size());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -1545,7 +1545,7 @@
 #endif
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _CharT, class _Traits, class _Allocator>
 void
@@ -3423,7 +3423,7 @@
     return __r;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class _CharT, class _Traits, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -3483,7 +3483,7 @@
     return _STD::move(__lhs);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 // swap
 

Modified: libcxx/trunk/include/strstream
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/strstream?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/strstream (original)
+++ libcxx/trunk/include/strstream Sat Sep  4 18:28:19 2010
@@ -149,10 +149,10 @@
     strstreambuf(unsigned char* __gnext, streamsize __n, unsigned char* __pbeg = 0);
     strstreambuf(const unsigned char* __gnext, streamsize __n);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     strstreambuf(strstreambuf&& __rhs);
     strstreambuf& operator=(strstreambuf&& __rhs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     virtual ~strstreambuf();
 
@@ -200,7 +200,7 @@
     istrstream(char* __s, streamsize __n)
         : istream(&__sb_), __sb_(__s, __n) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     istrstream(istrstream&& __rhs)
         : istream(_STD::move(__rhs)),
           __sb_(_STD::move(__rhs.__sb_))
@@ -214,7 +214,7 @@
         __sb_ = _STD::move(__rhs.__sb_);
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     virtual ~istrstream();
 
@@ -242,7 +242,7 @@
           __sb_(__s, __n, __s + (__mode & ios::app ? strlen(__s) : 0))
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     ostrstream(ostrstream&& __rhs)
         : ostream(_STD::move(__rhs)),
           __sb_(_STD::move(__rhs.__sb_))
@@ -256,7 +256,7 @@
         __sb_ = _STD::move(__rhs.__sb_);
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     virtual ~ostrstream();
 
@@ -293,7 +293,7 @@
           __sb_(__s, __n, __s + (__mode & ios::app ? strlen(__s) : 0))
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     strstream(strstream&& __rhs)
         : iostream(_STD::move(__rhs)),
           __sb_(_STD::move(__rhs.__sb_))
@@ -307,7 +307,7 @@
         __sb_ = _STD::move(__rhs.__sb_);
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     virtual ~strstream();
 

Modified: libcxx/trunk/include/thread
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/thread?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/thread (original)
+++ libcxx/trunk/include/thread Sat Sep  4 18:28:19 2010
@@ -265,10 +265,10 @@
 #endif
     ~thread();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     thread(thread&& __t) : __t_(__t.__t_) {__t.__t_ = 0;}
     thread& operator=(thread&& __t);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void swap(thread& __t) {_STD::swap(__t_, __t.__t_);}
 
@@ -343,7 +343,7 @@
 
 #endif  // _LIBCPP_HAS_NO_VARIADICS
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 inline
 thread&
@@ -356,7 +356,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 inline
 void swap(thread& __x, thread& __y) {__x.swap(__y);}

Modified: libcxx/trunk/include/type_traits
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/type_traits?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/type_traits (original)
+++ libcxx/trunk/include/type_traits Sat Sep  4 18:28:19 2010
@@ -246,13 +246,13 @@
 template <class _Tp> struct is_lvalue_reference<_Tp&> : public true_type {};
 
 template <class _Tp> struct is_rvalue_reference        : public false_type {};
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _Tp> struct is_rvalue_reference<_Tp&&> : public true_type {};
 #endif
 
 template <class _Tp> struct is_reference        : public false_type {};
 template <class _Tp> struct is_reference<_Tp&>  : public true_type {};
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _Tp> struct is_reference<_Tp&&> : public true_type {};
 #endif
 
@@ -400,7 +400,7 @@
 
 template <class _Tp> struct remove_reference        {typedef _Tp type;};
 template <class _Tp> struct remove_reference<_Tp&>  {typedef _Tp type;};
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _Tp> struct remove_reference<_Tp&&> {typedef _Tp type;};
 #endif
 
@@ -413,7 +413,7 @@
 template <>          struct add_lvalue_reference<volatile void>       {typedef volatile void type;};
 template <>          struct add_lvalue_reference<const volatile void> {typedef const volatile void type;};
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp> struct add_rvalue_reference                      {typedef _Tp&& type;};
 template <>          struct add_rvalue_reference<void>                {typedef void type;};
@@ -421,7 +421,7 @@
 template <>          struct add_rvalue_reference<volatile void>       {typedef volatile void type;};
 template <>          struct add_rvalue_reference<const volatile void> {typedef const volatile void type;};
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 // remove_pointer
 
@@ -515,13 +515,13 @@
 
 namespace __is_convertible_imp
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _Tp> char  __test(const volatile typename remove_reference<_Tp>::type&&);
 #else
 template <class _Tp> char  __test(_Tp);
 #endif
 template <class _Tp> __two __test(...);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _Tp> _Tp&& __source();
 #else
 template <class _Tp> typename remove_reference<_Tp>::type& __source();
@@ -561,12 +561,12 @@
 template <class _T1, class _T2> struct __is_convertible<_T1, _T2, 1, 0> : false_type {};
 
 template <class _T1> struct __is_convertible<_T1, const _T1&, 1, 0> : true_type {};
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _T1> struct __is_convertible<_T1, _T1&&, 1, 0> : true_type {};
 template <class _T1> struct __is_convertible<_T1, const _T1&&, 1, 0> : true_type {};
 template <class _T1> struct __is_convertible<_T1, volatile _T1&&, 1, 0> : true_type {};
 template <class _T1> struct __is_convertible<_T1, const volatile _T1&&, 1, 0> : true_type {};
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _T1, class _T2> struct __is_convertible<_T1, _T2*, 1, 0>
     : public integral_constant<bool, __is_convertible<typename remove_all_extents<_T1>::type*, _T2*>::value> {};
@@ -581,7 +581,7 @@
     : public integral_constant<bool, __is_convertible<typename remove_all_extents<_T1>::type*, _T2*const volatile>::value> {};
 
 template <class _T1, class _T2> struct __is_convertible<_T1, _T2, 2, 0>                : public false_type {};
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 template <class _T1>            struct __is_convertible<_T1, _T1&&, 2, 0>               : public true_type {};
 #endif
 template <class _T1>            struct __is_convertible<_T1, _T1*, 2, 0>               : public true_type {};
@@ -1083,13 +1083,13 @@
 struct common_type<_Tp, _Up, void>
 {
 private:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static _Tp&& __t();
     static _Up&& __u();
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static _Tp __t();
     static _Up __u();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static bool __f();
 public:
     typedef decltype(__f() ? __t() : __u()) type;
@@ -1126,7 +1126,7 @@
 
 // move
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -1180,7 +1180,7 @@
 _Tp
 forward(typename remove_reference<_Tp>::type&& __t) = delete;
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 class __rv
@@ -1264,21 +1264,21 @@
     return _Tp(__rv<_Tp>(__t));
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 typename add_rvalue_reference<_Tp>::type
 declval();
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 typename add_lvalue_reference<_Tp>::type
 declval();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 struct decay

Modified: libcxx/trunk/include/unordered_map
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/unordered_map?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/unordered_map (original)
+++ libcxx/trunk/include/unordered_map Sat Sep  4 18:28:19 2010
@@ -375,7 +375,7 @@
           __second_constructed(false)
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_map_node_destructor(__hash_node_destructor<allocator_type>&& __x)
         : __na_(__x.__na_),
           __first_constructed(__x.__value_constructed),
@@ -383,7 +383,7 @@
         {
             __x.__value_constructed = false;
         }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __hash_map_node_destructor(const __hash_node_destructor<allocator_type>& __x)
         : __na_(__x.__na_),
           __first_constructed(__x.__value_constructed),
@@ -391,7 +391,7 @@
         {
             const_cast<bool&>(__x.__value_constructed) = false;
         }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     void operator()(pointer __p)
     {
@@ -573,10 +573,10 @@
     explicit unordered_map(const allocator_type& __a);
     unordered_map(const unordered_map& __u);
     unordered_map(const unordered_map& __u, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_map(unordered_map&& __u);
     unordered_map(unordered_map&& __u, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_map(initializer_list<value_type> __il);
     unordered_map(initializer_list<value_type> __il, size_type __n,
                   const hasher& __hf = hasher(), const key_equal& __eql = key_equal());
@@ -585,7 +585,7 @@
                   const allocator_type& __a);
     // ~unordered_map() = default;
     // unordered_map& operator=(const unordered_map& __u) = default;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_map& operator=(unordered_map&& __u);
 #endif
     unordered_map& operator=(initializer_list<value_type> __il);
@@ -604,7 +604,7 @@
     const_iterator cbegin() const {return __table_.begin();}
     const_iterator cend()   const {return __table_.end();}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     pair<iterator, bool> emplace()
         {return __table_.__emplace_unique();}
 
@@ -613,10 +613,14 @@
         pair<iterator, bool> emplace(_A0&& __a0)
             {return __table_.__emplace_unique(_STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         pair<iterator, bool> emplace(_A0&& __a0, _Args&&... __args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     iterator emplace_hint(const_iterator)
         {return __table_.__emplace_unique().first;}
 
@@ -625,28 +629,31 @@
         iterator emplace_hint(const_iterator, _A0&& __a0)
             {return __table_.__emplace_unique(_STD::forward<_A0>(__a0)).first;}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator emplace_hint(const_iterator, _A0&& __a0, _Args&&... __args)
             {return emplace(_STD::forward<_A0>(__a0),
                             _STD::forward<_Args>(__args)...).first;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     pair<iterator, bool> insert(const value_type& __x)
         {return __table_.__insert_unique(__x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         pair<iterator, bool> insert(_P&& __x)
             {return __table_.__insert_unique(_STD::forward<_P>(__x));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator, const value_type& __x)
         {return insert(__x).first;}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         iterator insert(const_iterator, _P&& __x)
             {return insert(_STD::forward<_P>(__x)).first;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __first, _InputIterator __last);
     void insert(initializer_list<value_type> __il)
@@ -674,7 +681,7 @@
         {return __table_.__equal_range_unique(__k);}
 
     mapped_type& operator[](const key_type& __k);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     mapped_type& operator[](key_type&& __k);
 #endif
 
@@ -702,14 +709,16 @@
     void reserve(size_type __n) {__table_.reserve(__n);}
 
 private:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0, _Args&&... __args);
+#endif  // _LIBCPP_HAS_NO_VARIADICS
     template <class _A0,
               class = typename enable_if<is_convertible<_A0, value_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __node_holder __construct_node(const key_type& __k);
 #endif
 };
@@ -787,7 +796,7 @@
     insert(__u.begin(), __u.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -812,7 +821,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_map(
@@ -841,7 +850,7 @@
     insert(__il.begin(), __il.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -852,7 +861,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -864,7 +873,8 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0, class... _Args,
@@ -885,6 +895,8 @@
     return __h;
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0,
           class // = typename enable_if<is_convertible<_A0, value_type>::value>::type
@@ -901,6 +913,8 @@
     return __h;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0, class... _Args,
           class // = typename enable_if<is_convertible<_A0, key_type>::value>::type
@@ -916,7 +930,8 @@
     return __r;
 }
 
-#else  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 typename unordered_map<_Key, _Tp, _Hash, _Pred, _Alloc>::__node_holder
@@ -931,7 +946,7 @@
     return _STD::move(__h);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _InputIterator>
@@ -957,7 +972,7 @@
     return __r.first->second;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 _Tp&
@@ -972,7 +987,7 @@
     return __r.first->second;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 _Tp&
@@ -1104,10 +1119,10 @@
     explicit unordered_multimap(const allocator_type& __a);
     unordered_multimap(const unordered_multimap& __u);
     unordered_multimap(const unordered_multimap& __u, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multimap(unordered_multimap&& __u);
     unordered_multimap(unordered_multimap&& __u, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multimap(initializer_list<value_type> __il);
     unordered_multimap(initializer_list<value_type> __il, size_type __n,
                        const hasher& __hf = hasher(),
@@ -1117,7 +1132,7 @@
                        const allocator_type& __a);
     // ~unordered_multimap() = default;
     // unordered_multimap& operator=(const unordered_multimap& __u) = default;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multimap& operator=(unordered_multimap&& __u);
 #endif
     unordered_multimap& operator=(initializer_list<value_type> __il);
@@ -1136,7 +1151,7 @@
     const_iterator cbegin() const {return __table_.begin();}
     const_iterator cend()   const {return __table_.end();}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator emplace()
         {return __table_.__emplace_multi();}
 
@@ -1145,10 +1160,14 @@
         iterator emplace(_A0&& __a0)
             {return __table_.__emplace_multi(_STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator emplace(_A0&& __a0, _Args&&... __args);
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
     iterator emplace_hint(const_iterator __p)
         {return __table_.__emplace_hint_multi(__p.__i_);}
 
@@ -1157,25 +1176,28 @@
         iterator emplace_hint(const_iterator __p, _A0&& __a0)
             {return __table_.__emplace_hint_multi(__p.__i_, _STD::forward<_A0>(__a0));}
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         iterator emplace_hint(const_iterator __p, _A0&& __a0, _Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const value_type& __x) {return __table_.__insert_multi(__x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         iterator insert(_P&& __x)
             {return __table_.__insert_multi(_STD::forward<_P>(__x));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, const value_type& __x)
         {return __table_.__insert_multi(__p.__i_, __x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _P,
               class = typename enable_if<is_convertible<_P, value_type>::value>::type>
         iterator insert(const_iterator __p, _P&& __x)
             {return __table_.__insert_multi(__p.__i_, _STD::forward<_P>(__x));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __first, _InputIterator __last);
     void insert(initializer_list<value_type> __il)
@@ -1223,14 +1245,14 @@
     void reserve(size_type __n) {__table_.reserve(__n);}
 
 private:
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class _A0, class... _Args,
               class = typename enable_if<is_convertible<_A0, key_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0, _Args&&... __args);
     template <class _A0,
               class = typename enable_if<is_convertible<_A0, value_type>::value>::type>
         __node_holder __construct_node(_A0&& __a0);
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
 };
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
@@ -1306,7 +1328,7 @@
     insert(__u.begin(), __u.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -1333,7 +1355,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 unordered_multimap<_Key, _Tp, _Hash, _Pred, _Alloc>::unordered_multimap(
@@ -1362,7 +1384,7 @@
     insert(__il.begin(), __il.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -1373,7 +1395,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 inline
@@ -1385,7 +1407,8 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+#ifndef _LIBCPP_HAS_NO_VARIADICS
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0, class... _Args,
@@ -1406,6 +1429,8 @@
     return __h;
 }
 
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0,
           class // = typename enable_if<is_convertible<_A0, value_type>::value>::type
@@ -1422,6 +1447,8 @@
     return __h;
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _A0, class... _Args,
           class // = typename enable_if<is_convertible<_A0, key_type>::value>::type
@@ -1451,7 +1478,8 @@
     return __r;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Key, class _Tp, class _Hash, class _Pred, class _Alloc>
 template <class _InputIterator>

Modified: libcxx/trunk/include/unordered_set
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/unordered_set?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/unordered_set (original)
+++ libcxx/trunk/include/unordered_set Sat Sep  4 18:28:19 2010
@@ -317,10 +317,10 @@
     explicit unordered_set(const allocator_type& __a);
     unordered_set(const unordered_set& __u);
     unordered_set(const unordered_set& __u, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_set(unordered_set&& __u);
     unordered_set(unordered_set&& __u, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_set(initializer_list<value_type> __il);
     unordered_set(initializer_list<value_type> __il, size_type __n,
                   const hasher& __hf = hasher(),
@@ -330,7 +330,7 @@
                   const allocator_type& __a);
     // ~unordered_set() = default;
     // unordered_set& operator=(const unordered_set& __u) = default;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_set& operator=(unordered_set&& __u);
 #endif
     unordered_set& operator=(initializer_list<value_type> __il);
@@ -349,26 +349,26 @@
     const_iterator cbegin() const {return __table_.begin();}
     const_iterator cend()   const {return __table_.end();}
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class... _Args>
         pair<iterator, bool> emplace(_Args&&... __args)
             {return __table_.__emplace_unique(_STD::forward<_Args>(__args)...);}
     template <class... _Args>
         iterator emplace_hint(const_iterator, _Args&&... __args)
             {return __table_.__emplace_unique(_STD::forward<_Args>(__args)...).first;}
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     pair<iterator, bool> insert(const value_type& __x)
         {return __table_.__insert_unique(__x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     pair<iterator, bool> insert(value_type&& __x)
         {return __table_.__insert_unique(_STD::move(__x));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator, const value_type& __x)
         {return insert(__x).first;}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator, value_type&& __x)
         {return insert(_STD::move(__x)).first;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __first, _InputIterator __last);
     void insert(initializer_list<value_type> __il)
@@ -485,7 +485,7 @@
     insert(__u.begin(), __u.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline
@@ -508,7 +508,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 unordered_set<_Value, _Hash, _Pred, _Alloc>::unordered_set(
@@ -537,7 +537,7 @@
     insert(__il.begin(), __il.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline
@@ -548,7 +548,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline
@@ -656,10 +656,10 @@
     explicit unordered_multiset(const allocator_type& __a);
     unordered_multiset(const unordered_multiset& __u);
     unordered_multiset(const unordered_multiset& __u, const allocator_type& __a);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multiset(unordered_multiset&& __u);
     unordered_multiset(unordered_multiset&& __u, const allocator_type& __a);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multiset(initializer_list<value_type> __il);
     unordered_multiset(initializer_list<value_type> __il, size_type __n,
                        const hasher& __hf = hasher(),
@@ -669,7 +669,7 @@
                        const allocator_type& __a);
     // ~unordered_multiset() = default;
     // unordered_multiset& operator=(const unordered_multiset& __u) = default;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     unordered_multiset& operator=(unordered_multiset&& __u);
 #endif
     unordered_multiset& operator=(initializer_list<value_type> __il);
@@ -688,24 +688,24 @@
     const_iterator cbegin() const {return __table_.begin();}
     const_iterator cend()   const {return __table_.end();}
 
-#ifdef _LIBCPP_MOVE
+#if !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     template <class... _Args>
         iterator emplace(_Args&&... __args)
             {return __table_.__emplace_multi(_STD::forward<_Args>(__args)...);}
     template <class... _Args>
         iterator emplace_hint(const_iterator __p, _Args&&... __args)
             {return __table_.__emplace_hint_multi(__p, _STD::forward<_Args>(__args)...);}
-#endif  // _LIBCPP_MOVE
+#endif  // !defined(_LIBCPP_HAS_NO_RVALUE_REFERENCES) && !defined(_LIBCPP_HAS_NO_VARIADICS)
     iterator insert(const value_type& __x) {return __table_.__insert_multi(__x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(value_type&& __x) {return __table_.__insert_multi(_STD::move(__x));}
 #endif
     iterator insert(const_iterator __p, const value_type& __x)
         {return __table_.__insert_multi(__p, __x);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __p, value_type&& __x)
         {return __table_.__insert_multi(__p, _STD::move(__x));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class _InputIterator>
         void insert(_InputIterator __first, _InputIterator __last);
     void insert(initializer_list<value_type> __il)
@@ -823,7 +823,7 @@
     insert(__u.begin(), __u.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline
@@ -846,7 +846,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 unordered_multiset<_Value, _Hash, _Pred, _Alloc>::unordered_multiset(
@@ -875,7 +875,7 @@
     insert(__il.begin(), __il.end());
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline
@@ -887,7 +887,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Value, class _Hash, class _Pred, class _Alloc>
 inline

Modified: libcxx/trunk/include/utility
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/utility?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/utility (original)
+++ libcxx/trunk/include/utility Sat Sep  4 18:28:19 2010
@@ -171,14 +171,14 @@
 
 template <class _Tp>
 inline _LIBCPP_INLINE_VISIBILITY
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 typename conditional
 <
     !has_nothrow_move_constructor<_Tp>::value && has_copy_constructor<_Tp>::value,
     const _Tp&,
     _Tp&&
 >::type
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 const _Tp&
 #endif
 move_if_noexcept(_Tp& __x)
@@ -207,7 +207,7 @@
     _LIBCPP_INLINE_VISIBILITY pair(const _T1& __x, const _T2& __y)
         : first(__x), second(__y) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     template <class _U1, class _U2,
               class = typename enable_if<is_convertible<_U1, first_type >::value &&
@@ -253,11 +253,11 @@
 
 #endif  // _LIBCPP_HAS_NO_VARIADICS
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template<class _U1, class _U2>
         _LIBCPP_INLINE_VISIBILITY pair(const pair<_U1, _U2>& __p)
             : first(__p.first), second(__p.second) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void _LIBCPP_INLINE_VISIBILITY swap(pair& __p) {_STD::swap(*this, __p);}
 private:
 
@@ -326,7 +326,7 @@
     swap(__x.second, __y.second);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp> class reference_wrapper;
 
@@ -357,7 +357,7 @@
                (_STD::forward<_T1>(__t1), _STD::forward<_T2>(__t2));
 }
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _T1, class _T2>
 inline _LIBCPP_INLINE_VISIBILITY
@@ -367,7 +367,7 @@
     return pair<_T1, _T2>(__x, __y);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #ifndef _LIBCPP_HAS_NO_VARIADICS
 

Modified: libcxx/trunk/include/valarray
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/valarray?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/valarray (original)
+++ libcxx/trunk/include/valarray Sat Sep  4 18:28:19 2010
@@ -795,10 +795,10 @@
     valarray(const value_type& __x, size_t __n);
     valarray(const value_type* __p, size_t __n);
     valarray(const valarray& __v);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     valarray(valarray&& __v);
     valarray(initializer_list<value_type> __il);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     valarray(const slice_array<value_type>& __sa);
     valarray(const gslice_array<value_type>& __ga);
     valarray(const mask_array<value_type>& __ma);
@@ -807,10 +807,10 @@
 
     // assignment:
     valarray& operator=(const valarray& __v);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     valarray& operator=(valarray&& __v);
     valarray& operator=(initializer_list<value_type>);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     valarray& operator=(const value_type& __x);
     valarray& operator=(const slice_array<value_type>& __sa);
     valarray& operator=(const gslice_array<value_type>& __ga);
@@ -829,22 +829,22 @@
     slice_array<value_type>                       operator[](slice __s);
     __val_expr<__indirect_expr<const valarray&> > operator[](const gslice& __gs) const;
     gslice_array<value_type>   operator[](const gslice& __gs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __val_expr<__indirect_expr<const valarray&> > operator[](gslice&& __gs) const;
     gslice_array<value_type>                      operator[](gslice&& __gs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __val_expr<__mask_expr<const valarray&> >     operator[](const valarray<bool>& __vb) const;
     mask_array<value_type>                        operator[](const valarray<bool>& __vb);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __val_expr<__mask_expr<const valarray&> >     operator[](valarray<bool>&& __vb) const;
     mask_array<value_type>                        operator[](valarray<bool>&& __vb);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __val_expr<__indirect_expr<const valarray&> > operator[](const valarray<size_t>& __vs) const;
     indirect_array<value_type>                    operator[](const valarray<size_t>& __vs);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     __val_expr<__indirect_expr<const valarray&> > operator[](valarray<size_t>&& __vs) const;
     indirect_array<value_type>                    operator[](valarray<size_t>&& __vs);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     // unary operators:
     valarray       operator+() const;
@@ -1395,7 +1395,7 @@
           __stride_(__stride)
         {__init(__start);}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_ALWAYS_INLINE
     gslice(size_t __start, const valarray<size_t>&  __size,
@@ -1418,7 +1418,7 @@
           __stride_(move(__stride))
         {__init(__start);}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 //  gslice(const gslice&)            = default;
 //  gslice(gslice&&)                 = default;
@@ -1559,7 +1559,7 @@
           __1d_(__gs.__1d_)
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_ALWAYS_INLINE
     gslice_array(gslice&& __gs, const valarray<value_type>& __v)
@@ -1567,7 +1567,7 @@
           __1d_(move(__gs.__1d_))
         {}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     template <class> friend class valarray;
 };
@@ -2232,7 +2232,7 @@
           __1d_(__ia)
         {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     _LIBCPP_ALWAYS_INLINE
     indirect_array(valarray<size_t>&& __ia, const valarray<value_type>& __v)
@@ -2240,7 +2240,7 @@
           __1d_(move(__ia))
         {}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     template <class> friend class valarray;
 };
@@ -2450,14 +2450,14 @@
           __1d_(__ia)
           {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     __indirect_expr(valarray<size_t>&& __ia, const _RmExpr& __e)
         : __expr_(__e),
           __1d_(move(__ia))
           {}
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
     _LIBCPP_ALWAYS_INLINE
@@ -2691,7 +2691,7 @@
     }
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -2728,7 +2728,7 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 valarray<_Tp>::valarray(const slice_array<value_type>& __sa)
@@ -2863,7 +2863,7 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -2889,7 +2889,7 @@
     return *this;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -2986,7 +2986,7 @@
     return gslice_array<value_type>(__gs, *this);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -3004,7 +3004,7 @@
     return gslice_array<value_type>(move(__gs), *this);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -3022,7 +3022,7 @@
     return mask_array<value_type>(__vb, *this);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -3040,7 +3040,7 @@
     return mask_array<value_type>(move(__vb), *this);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -3058,7 +3058,7 @@
     return indirect_array<value_type>(__vs, *this);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 inline _LIBCPP_ALWAYS_INLINE
@@ -3076,7 +3076,7 @@
     return indirect_array<value_type>(move(__vs), *this);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp>
 valarray<_Tp>

Modified: libcxx/trunk/include/vector
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/vector?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/include/vector (original)
+++ libcxx/trunk/include/vector Sat Sep  4 18:28:19 2010
@@ -484,11 +484,11 @@
     vector(const vector& __x);
     vector(const vector& __x, const allocator_type& __a);
     vector& operator=(const vector& __x);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     vector(vector&& __x);
     vector(vector&& __x, const allocator_type& __a);
     vector& operator=(vector&& __x);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     vector& operator=(initializer_list<value_type> __il)
         {assign(__il.begin(), __il.end()); return *this;}
 
@@ -552,19 +552,23 @@
         {return _STD::__to_raw_pointer(this->__begin_);}
 
     void push_back(const_reference __x);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void push_back(value_type&& __x);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
         void emplace_back(_Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void pop_back();
 
     iterator insert(const_iterator __position, const_reference __x);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __position, value_type&& __x);
+#ifndef _LIBCPP_HAS_NO_VARIADICS
     template <class... _Args>
         iterator emplace(const_iterator __position, _Args&&... __args);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     iterator insert(const_iterator __position, size_type __n, const_reference __x);
     template <class _InputIterator>
         typename enable_if
@@ -951,7 +955,7 @@
     }
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -1043,7 +1047,7 @@
     __c.__begin_ = __c.__end_ = __c.__end_cap() = nullptr;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -1283,7 +1287,7 @@
     }
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 void
@@ -1305,6 +1309,8 @@
     }
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 void
@@ -1326,7 +1332,8 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
@@ -1402,7 +1409,7 @@
     return __make_iter(__p);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 typename vector<_Tp, _Allocator>::iterator
@@ -1434,6 +1441,8 @@
     return __make_iter(__p);
 }
 
+#ifndef _LIBCPP_HAS_NO_VARIADICS
+
 template <class _Tp, class _Allocator>
 template <class... _Args>
 typename vector<_Tp, _Allocator>::iterator
@@ -1465,7 +1474,8 @@
     return __make_iter(__p);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_VARIADICS
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Tp, class _Allocator>
 typename vector<_Tp, _Allocator>::iterator
@@ -1761,11 +1771,11 @@
     vector(initializer_list<value_type> __il);
     vector(initializer_list<value_type> __il, const allocator_type& __a);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     vector(vector&& __v);
     vector(vector&& __v, const allocator_type& __a);
     vector& operator=(vector&& __v);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     vector& operator=(initializer_list<value_type> __il)
         {assign(__il.begin(), __il.end()); return *this;}
 
@@ -2272,7 +2282,8 @@
     return *this;
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
+
 template <class _Allocator>
 _LIBCPP_INLINE_VISIBILITY inline
 vector<bool, _Allocator>::vector(vector&& __v)
@@ -2337,7 +2348,8 @@
     __c.__begin_ = nullptr;
     __c.__cap() = __c.__size_ = 0;
 }
-#endif  // _LIBCPP_MOVE
+
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class _Allocator>
 void

Modified: libcxx/trunk/src/strstream.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/src/strstream.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/src/strstream.cpp (original)
+++ libcxx/trunk/src/strstream.cpp Sat Sep  4 18:28:19 2010
@@ -100,7 +100,7 @@
     __init((char*)__gnext, __n, nullptr);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 strstreambuf::strstreambuf(strstreambuf&& __rhs)
     : streambuf(__rhs),
@@ -132,7 +132,7 @@
     __rhs.setp(nullptr, nullptr);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 strstreambuf::~strstreambuf()
 {

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -38,7 +38,7 @@
         assert(ia[i] == ib[i]);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class InIter, class OutIter>
 void
@@ -56,7 +56,7 @@
         assert(*ib[i] == i);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -95,7 +95,7 @@
     test<const int*, random_access_iterator<int*> >();
     test<const int*, int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test1<input_iterator<std::unique_ptr<int>*>, output_iterator<std::unique_ptr<int>*> >();
     test1<input_iterator<std::unique_ptr<int>*>, input_iterator<std::unique_ptr<int>*> >();
     test1<input_iterator<std::unique_ptr<int>*>, forward_iterator<std::unique_ptr<int>*> >();
@@ -130,5 +130,5 @@
     test1<std::unique_ptr<int>*, bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*, random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*, std::unique_ptr<int>*>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.move/move_backward.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -38,7 +38,7 @@
         assert(ia[i] == ib[i]);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class InIter, class OutIter>
 void
@@ -56,7 +56,7 @@
         assert(*ib[i] == i);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -72,7 +72,7 @@
     test<const int*, random_access_iterator<int*> >();
     test<const int*, int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test1<bidirectional_iterator<std::unique_ptr<int>*>, bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<bidirectional_iterator<std::unique_ptr<int>*>, random_access_iterator<std::unique_ptr<int>*> >();
     test1<bidirectional_iterator<std::unique_ptr<int>*>, std::unique_ptr<int>*>();
@@ -84,5 +84,5 @@
     test1<std::unique_ptr<int>*, bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*, random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*, std::unique_ptr<int>*>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/partition.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.partitions/stable_partition.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -283,7 +283,7 @@
     }
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct is_null
 {
@@ -300,7 +300,7 @@
     Iter r = std::stable_partition(Iter(array), Iter(array+size), is_null());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -308,7 +308,7 @@
     test<random_access_iterator<std::pair<int,int>*> >();
     test<std::pair<int,int>*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test1<bidirectional_iterator<std::unique_ptr<int>*> >();
 #endif
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -39,7 +39,7 @@
     assert(ia[5] == 4);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class Iter>
 void
@@ -63,7 +63,7 @@
     assert(*ia[5] == 4);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -72,12 +72,12 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<std::unique_ptr<int>*> >();
     test1<bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.remove/remove_if.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -40,7 +40,7 @@
     assert(ia[5] == 4);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct pred
 {
@@ -72,7 +72,7 @@
     assert(*ia[5] == 4);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -81,12 +81,12 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<std::unique_ptr<int>*> >();
     test1<bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.rotate/rotate.pass.cpp Sat Sep  4 18:28:19 2010
@@ -15,7 +15,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -213,7 +213,7 @@
     assert(ig[5] == 2);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class Iter>
 void
@@ -419,7 +419,7 @@
     assert(*ig[5] == 2);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -428,12 +428,12 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<std::unique_ptr<int>*> >();
     test1<bidirectional_iterator<std::unique_ptr<int>*> >();
     test1<random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.swap/swap_ranges.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -38,7 +38,7 @@
     assert(j[2] == 3);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template<class Iter1, class Iter2>
 void
@@ -60,7 +60,7 @@
     assert(*j[2] == 3);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -84,7 +84,7 @@
     test<int*, random_access_iterator<int*> >();
     test<int*, int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<std::unique_ptr<int>*>, forward_iterator<std::unique_ptr<int>*> >();
     test1<forward_iterator<std::unique_ptr<int>*>, bidirectional_iterator<std::unique_ptr<int>*> >();
@@ -106,5 +106,5 @@
     test1<std::unique_ptr<int>*, random_access_iterator<std::unique_ptr<int>*> >();
     test1<std::unique_ptr<int>*, std::unique_ptr<int>*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -84,7 +84,7 @@
     assert(ii[2] == 2);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct do_nothing
 {
@@ -169,7 +169,7 @@
     assert(*ii[2] == 2);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -178,12 +178,12 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<Ptr*> >();
     test1<bidirectional_iterator<Ptr*> >();
     test1<random_access_iterator<Ptr*> >();
     test1<Ptr*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.modifying.operations/alg.unique/unique_pred.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <algorithm>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -110,7 +110,7 @@
     assert(count_equal::count == si-1);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct do_nothing
 {
@@ -211,7 +211,7 @@
     assert(count_equal::count == si-1);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -220,12 +220,12 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1<forward_iterator<Ptr*> >();
     test1<bidirectional_iterator<Ptr*> >();
     test1<random_access_iterator<Ptr*> >();
     test1<Ptr*>();
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/make.heap/make_heap_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/make.heap/make_heap_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/make.heap/make_heap_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/make.heap/make_heap_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -27,7 +27,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void test(unsigned N)
 {
@@ -49,7 +49,7 @@
     test(10);
     test(1000);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     const int N = 1000;
     std::unique_ptr<int>* ia = new std::unique_ptr<int> [N];
@@ -60,5 +60,5 @@
     assert(std::is_heap(ia, ia+N, indirect_less()));
     delete [] ia;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/pop.heap/pop_heap_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/pop.heap/pop_heap_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/pop.heap/pop_heap_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/pop.heap/pop_heap_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -27,7 +27,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void test(unsigned N)
 {
@@ -49,7 +49,7 @@
 {
     test(1000);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     const int N = 1000;
     std::unique_ptr<int>* ia = new std::unique_ptr<int> [N];
@@ -64,5 +64,5 @@
     }
     delete [] ia;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/push.heap/push_heap_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/push.heap/push_heap_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/push.heap/push_heap_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/push.heap/push_heap_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -28,7 +28,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void test(unsigned N)
 {
@@ -48,7 +48,7 @@
 {
     test(1000);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     const int N = 1000;
     std::unique_ptr<int>* ia = new std::unique_ptr<int> [N];
@@ -62,5 +62,5 @@
     }
     delete [] ia;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/sort.heap/sort_heap_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/sort.heap/sort_heap_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/sort.heap/sort_heap_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.heap.operations/sort.heap/sort_heap_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -27,7 +27,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void test(unsigned N)
 {
@@ -50,7 +50,7 @@
     test(10);
     test(1000);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     const int N = 1000;
     std::unique_ptr<int>* ia = new std::unique_ptr<int> [N];
@@ -62,5 +62,5 @@
     assert(std::is_sorted(ia, ia+N, indirect_less()));
     delete [] ia;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.merge/inplace_merge_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include <algorithm>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -28,7 +28,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../../iterators.h"
 
@@ -89,7 +89,7 @@
     test<random_access_iterator<int*> >();
     test<int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     unsigned N = 100;
     unsigned M = 50;
@@ -108,5 +108,5 @@
     }
     delete [] ia;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i = std::max({2, 3, 1});
     assert(i == 3);
     i = std::max({2, 1, 3});
@@ -31,5 +31,5 @@
     assert(i == 3);
     i = std::max({1, 3, 2});
     assert(i == 3);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/max_init_list_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i = std::max({2, 3, 1}, std::greater<int>());
     assert(i == 1);
     i = std::max({2, 1, 3}, std::greater<int>());
@@ -32,5 +32,5 @@
     assert(i == 1);
     i = std::max({1, 3, 2}, std::greater<int>());
     assert(i == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i = std::min({2, 3, 1});
     assert(i == 1);
     i = std::min({2, 1, 3});
@@ -31,5 +31,5 @@
     assert(i == 1);
     i = std::min({1, 3, 2});
     assert(i == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/min_init_list_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i = std::min({2, 3, 1}, std::greater<int>());
     assert(i == 3);
     i = std::min({2, 1, 3}, std::greater<int>());
@@ -32,5 +32,5 @@
     assert(i == 3);
     i = std::min({1, 3, 2}, std::greater<int>());
     assert(i == 3);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,12 +18,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert((std::minmax({1, 2, 3}) == std::pair<int, int>(1, 3)));
     assert((std::minmax({1, 3, 2}) == std::pair<int, int>(1, 3)));
     assert((std::minmax({2, 1, 3}) == std::pair<int, int>(1, 3)));
     assert((std::minmax({2, 3, 1}) == std::pair<int, int>(1, 3)));
     assert((std::minmax({3, 1, 2}) == std::pair<int, int>(1, 3)));
     assert((std::minmax({3, 2, 1}) == std::pair<int, int>(1, 3)));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.min.max/minmax_init_list_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,12 +19,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert((std::minmax({1, 2, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)));
     assert((std::minmax({1, 3, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)));
     assert((std::minmax({2, 1, 3}, std::greater<int>()) == std::pair<int, int>(3, 1)));
     assert((std::minmax({2, 3, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)));
     assert((std::minmax({3, 1, 2}, std::greater<int>()) == std::pair<int, int>(3, 1)));
     assert((std::minmax({3, 2, 1}, std::greater<int>()) == std::pair<int, int>(3, 1)));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.nth.element/nth_element_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.nth.element/nth_element_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.nth.element/nth_element_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.nth.element/nth_element_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 #include <functional>
 #include <vector>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -29,7 +29,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void
 test_one(unsigned N, unsigned M)
@@ -73,7 +73,7 @@
     test(1000);
     test(1009);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     std::vector<std::unique_ptr<int> > v(1000);
     for (int i = 0; i < v.size(); ++i)
@@ -81,5 +81,5 @@
     std::nth_element(v.begin(), v.begin() + v.size()/2, v.end(), indirect_less());
     assert(*v[v.size()/2] == v.size()/2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 #include <vector>
 #include <functional>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -29,7 +29,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void
 test_larger_sorts(unsigned N, unsigned M)
@@ -74,7 +74,7 @@
     test_larger_sorts(1000);
     test_larger_sorts(1009);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     std::vector<std::unique_ptr<int> > v(1000);
     for (int i = 0; i < v.size(); ++i)
@@ -83,5 +83,5 @@
     for (int i = 0; i < v.size()/2; ++i)
         assert(*v[i] == i);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.sort/sort/sort_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.sort/sort/sort_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.sort/sort/sort_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.sort/sort/sort_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 #include <functional>
 #include <vector>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -29,7 +29,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
@@ -42,7 +42,7 @@
     assert(std::is_sorted(v.begin(), v.end()));
     }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     std::vector<std::unique_ptr<int> > v(1000);
     for (int i = 0; i < v.size(); ++i)
@@ -53,5 +53,5 @@
     assert(*v[1] == 1);
     assert(*v[2] == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp (original)
+++ libcxx/trunk/test/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort_comp.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 #include <functional>
 #include <vector>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 
 struct indirect_less
@@ -29,7 +29,7 @@
         {return *x < *y;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct first_only
 {
@@ -68,7 +68,7 @@
 {
     test();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
     std::vector<std::unique_ptr<int> > v(1000);
     for (int i = 0; i < v.size(); ++i)
@@ -79,5 +79,5 @@
     assert(*v[1] == 1);
     assert(*v[2] == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/Emplaceable.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/Emplaceable.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/Emplaceable.h (original)
+++ libcxx/trunk/test/containers/Emplaceable.h Sat Sep  4 18:28:19 2010
@@ -1,7 +1,7 @@
 #ifndef EMPLACEABLE_H
 #define EMPLACEABLE_H
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 class Emplaceable
 {
@@ -40,6 +40,6 @@
 
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // EMPLACEABLE_H

Modified: libcxx/trunk/test/containers/MoveOnly.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/MoveOnly.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/MoveOnly.h (original)
+++ libcxx/trunk/test/containers/MoveOnly.h Sat Sep  4 18:28:19 2010
@@ -1,7 +1,7 @@
 #ifndef MOVEONLY_H
 #define MOVEONLY_H
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include <cstddef>
 #include <functional>
@@ -36,6 +36,6 @@
 
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // MOVEONLY_H

Modified: libcxx/trunk/test/containers/associative/map/map.access/index_rv_key.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.access/index_rv_key.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.access/index_rv_key.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.access/index_rv_key.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<MoveOnly, double> V;
     std::map<MoveOnly, double> m;
     assert(m.size() == 0);
@@ -34,5 +34,5 @@
     m[6] = 6.5;
     assert(m[6] == 6.5);
     assert(m.size() == 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     std::map<int, double> m =
                             {
@@ -41,5 +41,5 @@
     assert(*m.begin() == V(1, 1));
     assert(*next(m.begin()) == V(2, 1));
     assert(*next(m.begin(), 2) == V(3, 1));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     std::map<int, double> m =
                             {
@@ -37,5 +37,5 @@
     assert(*m.begin() == V(1, 1));
     assert(*next(m.begin()) == V(2, 1));
     assert(*next(m.begin(), 2) == V(3, 1));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     typedef test_compare<std::less<int> > C;
     std::map<int, double, C> m({
@@ -39,5 +39,5 @@
     assert(*next(m.begin()) == V(2, 1));
     assert(*next(m.begin(), 2) == V(3, 1));
     assert(m.key_comp() == C(3));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     typedef test_compare<std::less<int> > C;
     typedef test_allocator<std::pair<const int, double> > A;
@@ -42,5 +42,5 @@
     assert(*next(m.begin(), 2) == V(3, 1));
     assert(m.key_comp() == C(3));
     assert(m.get_allocator() == A(6));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     {
         typedef test_compare<std::less<int> > C;
@@ -68,5 +68,5 @@
         assert(mo.size() == 0);
         assert(distance(mo.begin(), mo.end()) == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<MoveOnly, MoveOnly> V;
         typedef std::pair<const MoveOnly, MoveOnly> VC;
@@ -140,5 +140,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<MoveOnly, MoveOnly> V;
         typedef std::pair<const MoveOnly, MoveOnly> VC;
@@ -143,5 +143,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::map<int, DefaultOnly> M;
         typedef std::pair<M::iterator, bool> R;
@@ -85,5 +85,5 @@
         assert(m.begin()->first == 2);
         assert(m.begin()->second == 3.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.modifiers/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::map<int, DefaultOnly> M;
         typedef M::iterator R;
@@ -78,5 +78,5 @@
         assert(m.begin()->first == 2);
         assert(m.begin()->second == 3.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     std::map<int, double> m =
                             {
@@ -39,5 +39,5 @@
     assert(*m.begin() == V(1, 1));
     assert(*next(m.begin()) == V(2, 1));
     assert(*next(m.begin(), 2) == V(3, 1));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::map<int, MoveOnly> M;
         typedef std::pair<int, MoveOnly> P;
@@ -51,5 +51,5 @@
         assert(r->first == 3);
         assert(r->second == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/map/map.modifiers/insert_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::map<int, MoveOnly> M;
         typedef std::pair<M::iterator, bool> R;
@@ -54,5 +54,5 @@
         assert(r.first->first == 3);
         assert(r.first->second == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multimap<int, double> C;
     typedef C::value_type V;
     C m = {{20, 1}};
@@ -46,5 +46,5 @@
     assert(*++i == V(3, 1));
     assert(*++i == V(3, 1.5));
     assert(*++i == V(3, 2));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multimap<int, double> C;
     typedef C::value_type V;
     C m =
@@ -45,5 +45,5 @@
     assert(*++i == V(3, 1));
     assert(*++i == V(3, 1.5));
     assert(*++i == V(3, 2));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef std::multimap<int, double, Cmp> C;
     typedef C::value_type V;
@@ -50,5 +50,5 @@
     assert(*++i == V(3, 1.5));
     assert(*++i == V(3, 2));
     assert(m.key_comp() == Cmp(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef test_allocator<std::pair<const int, double> > A;
     typedef std::multimap<int, double, Cmp, A> C;
@@ -53,5 +53,5 @@
     assert(*++i == V(3, 2));
     assert(m.key_comp() == Cmp(4));
     assert(m.get_allocator() == A(5));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::pair<const int, double> V;
     {
         typedef test_compare<std::less<int> > C;
@@ -74,5 +74,5 @@
         assert(mo.size() == 0);
         assert(distance(mo.begin(), mo.end()) == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<MoveOnly, MoveOnly> V;
         typedef std::pair<const MoveOnly, MoveOnly> VC;
@@ -140,5 +140,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<MoveOnly, MoveOnly> V;
         typedef std::pair<const MoveOnly, MoveOnly> VC;
@@ -143,5 +143,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multimap<int, DefaultOnly> M;
         typedef M::iterator R;
@@ -78,5 +78,5 @@
         assert(m.begin()->first == 2);
         assert(m.begin()->second == 3.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multimap<int, DefaultOnly> M;
         typedef M::iterator R;
@@ -78,5 +78,5 @@
         assert(m.begin()->first == 2);
         assert(m.begin()->second == 3.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multimap<int, double> C;
     typedef C::value_type V;
     C m =
@@ -49,5 +49,5 @@
     assert(*++i == V(3, 1));
     assert(*++i == V(3, 2));
     assert(*++i == V(3, 1.5));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multimap<int, MoveOnly> M;
         typedef std::pair<int, MoveOnly> P;
@@ -51,5 +51,5 @@
         assert(r->first == 3);
         assert(r->second == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multimap<int, MoveOnly> M;
         typedef M::iterator R;
@@ -50,5 +50,5 @@
         assert(r->first == 3);
         assert(r->second == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multiset<DefaultOnly> M;
         typedef M::iterator R;
@@ -67,5 +67,5 @@
         assert(m.size() == 1);
         assert(*r == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multiset<DefaultOnly> M;
         typedef M::iterator R;
@@ -67,5 +67,5 @@
         assert(m.size() == 1);
         assert(*r == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/insert_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/insert_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/insert_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/insert_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multiset<int> C;
     typedef C::value_type V;
     C m = {10, 8};
@@ -34,5 +34,5 @@
     assert(*++i == V(6));
     assert(*++i == V(8));
     assert(*++i == V(10));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/insert_iter_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/insert_iter_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/insert_iter_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/insert_iter_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multiset<MoveOnly> M;
         typedef M::iterator R;
@@ -45,5 +45,5 @@
         assert(m.size() == 4);
         assert(*r == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/insert_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/insert_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/insert_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/insert_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::multiset<MoveOnly> M;
         typedef M::iterator R;
@@ -45,5 +45,5 @@
         assert(m.size() == 4);
         assert(*r == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multiset<int> C;
     typedef C::value_type V;
     C m = {10, 8};
@@ -32,5 +32,5 @@
     assert(*++i == V(4));
     assert(*++i == V(5));
     assert(*++i == V(6));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::multiset<int> C;
     typedef C::value_type V;
     C m = {1, 2, 3, 4, 5, 6};
@@ -31,5 +31,5 @@
     assert(*++i == V(4));
     assert(*++i == V(5));
     assert(*++i == V(6));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef std::multiset<int, Cmp> C;
     typedef C::value_type V;
@@ -34,5 +34,5 @@
     assert(*++i == V(5));
     assert(*++i == V(6));
     assert(m.key_comp() == Cmp(10));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef test_allocator<int> A;
     typedef std::multiset<int, Cmp, A> C;
@@ -37,5 +37,5 @@
     assert(*++i == V(6));
     assert(m.key_comp() == Cmp(10));
     assert(m.get_allocator() == A(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int V;
         typedef test_compare<std::less<int> > C;
@@ -75,5 +75,5 @@
         assert(mo.size() == 0);
         assert(distance(mo.begin(), mo.end()) == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly V;
         typedef test_compare<std::less<MoveOnly> > C;
@@ -137,5 +137,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/multiset/multiset.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly V;
         typedef test_compare<std::less<MoveOnly> > C;
@@ -140,5 +140,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::set<DefaultOnly> M;
         typedef std::pair<M::iterator, bool> R;
@@ -73,5 +73,5 @@
         assert(m.size() == 1);
         assert(*r.first == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::set<DefaultOnly> M;
         typedef M::iterator R;
@@ -67,5 +67,5 @@
         assert(m.size() == 1);
         assert(*r == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/insert_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/insert_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/insert_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/insert_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::set<int> C;
     typedef C::value_type V;
     C m = {10, 8};
@@ -34,5 +34,5 @@
     assert(*++i == V(6));
     assert(*++i == V(8));
     assert(*++i == V(10));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/insert_iter_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/insert_iter_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/insert_iter_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/insert_iter_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::set<MoveOnly> M;
         typedef M::iterator R;
@@ -45,5 +45,5 @@
         assert(m.size() == 3);
         assert(*r == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/insert_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/insert_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/insert_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/insert_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::set<MoveOnly> M;
         typedef std::pair<M::iterator, bool> R;
@@ -49,5 +49,5 @@
         assert(m.size() == 3);
         assert(*r.first == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::set<int> C;
     typedef C::value_type V;
     C m = {10, 8};
@@ -32,5 +32,5 @@
     assert(*++i == V(4));
     assert(*++i == V(5));
     assert(*++i == V(6));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::set<int> C;
     typedef C::value_type V;
     C m = {1, 2, 3, 4, 5, 6};
@@ -31,5 +31,5 @@
     assert(*++i == V(4));
     assert(*++i == V(5));
     assert(*++i == V(6));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef std::set<int, Cmp> C;
     typedef C::value_type V;
@@ -34,5 +34,5 @@
     assert(*++i == V(5));
     assert(*++i == V(6));
     assert(m.key_comp() == Cmp(10));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_compare<std::less<int> > Cmp;
     typedef test_allocator<int> A;
     typedef std::set<int, Cmp, A> C;
@@ -37,5 +37,5 @@
     assert(*++i == V(6));
     assert(m.key_comp() == Cmp(10));
     assert(m.get_allocator() == A(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int V;
         typedef test_compare<std::less<int> > C;
@@ -69,5 +69,5 @@
         assert(mo.size() == 0);
         assert(distance(mo.begin(), mo.end()) == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly V;
         typedef test_compare<std::less<MoveOnly> > C;
@@ -137,5 +137,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/associative/set/set.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/associative/set/set.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/associative/set/set.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/containers/associative/set/set.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly V;
         typedef test_compare<std::less<MoveOnly> > C;
@@ -140,5 +140,5 @@
         assert(m3.key_comp() == C(5));
         assert(m1.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -30,11 +30,11 @@
         : base(comp, c, a) {}
     test(const value_compare& comp, const container_type& c,
         const test_allocator<int>& a) : base(comp, c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(const value_compare& comp, container_type&& c,
          const test_allocator<int>& a) : base(comp, std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 
     using base::c;

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -30,11 +30,11 @@
         : base(comp, a) {}
     test(const value_compare& comp, const container_type& c,
         const test_allocator<int>& a) : base(comp, c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(const value_compare& comp, container_type&& c,
          const test_allocator<int>& a) : base(comp, std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 
     using base::c;

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -41,11 +41,11 @@
         : base(comp, a) {}
     test(const value_compare& comp, const container_type& c,
         const test_allocator<int>& a) : base(comp, c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(const value_compare& comp, container_type&& c,
          const test_allocator<int>& a) : base(comp, std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 
     using base::c;

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -41,11 +41,11 @@
         : base(comp, a) {}
     test(const value_compare& comp, const container_type& c,
         const test_allocator<int>& a) : base(comp, c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(const value_compare& comp, container_type&& c,
          const test_allocator<int>& a) : base(comp, std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 
     using base::c;

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -52,11 +52,11 @@
     using base::c;
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test<MoveOnly> qo(std::less<MoveOnly>(),
                       make<std::vector<MoveOnly, test_allocator<MoveOnly> > >(5),
                       test_allocator<MoveOnly>(2));
@@ -64,5 +64,5 @@
     assert(q.size() == 5);
     assert(q.c.get_allocator() == test_allocator<MoveOnly>(6));
     assert(q.top() == MoveOnly(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,15 +28,15 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::priority_queue<MoveOnly> qo(std::less<MoveOnly>(), make<std::vector<MoveOnly> >(5));
     std::priority_queue<MoveOnly> q;
     q = std::move(qo);
     assert(q.size() == 5);
     assert(q.top() == MoveOnly(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,13 +28,13 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::priority_queue<MoveOnly> q(std::less<MoveOnly>(), make<std::vector<MoveOnly> >(5));
     assert(q.size() == 5);
     assert(q.top() == MoveOnly(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int a[] = {3, 5, 2, 0, 6, 8, 1};
     const int n = sizeof(a)/sizeof(a[0]);
     std::priority_queue<MoveOnly> q(a+n/2, a+n,
@@ -28,5 +28,5 @@
                                     std::vector<MoveOnly>(a, a+n/2));
     assert(q.size() == n);
     assert(q.top() == MoveOnly(8));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,14 +28,14 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::priority_queue<MoveOnly> qo(std::less<MoveOnly>(), make<std::vector<MoveOnly> >(5));
     std::priority_queue<MoveOnly> q = std::move(qo);
     assert(q.size() == 5);
     assert(q.top() == MoveOnly(4));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::priority_queue<Emplaceable> q;
     q.emplace(1, 2.5);
     assert(q.top() == Emplaceable(1, 2.5));
@@ -28,5 +28,5 @@
     assert(q.top() == Emplaceable(3, 4.5));
     q.emplace(2, 3.5);
     assert(q.top() == Emplaceable(3, 4.5));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::priority_queue<MoveOnly> q;
     q.push(1);
     assert(q.top() == 1);
@@ -28,5 +28,5 @@
     assert(q.top() == 3);
     q.push(2);
     assert(q.top() == 3);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,10 +24,10 @@
 
     explicit test(const test_allocator<int>& a) : base(a) {}
     test(const container_type& c, const test_allocator<int>& a) : base(c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(container_type&& c, const test_allocator<int>& a) : base(std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 };
 

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -36,10 +36,10 @@
 
     explicit test(const test_allocator<int>& a) : base(a) {}
     test(const container_type& c, const test_allocator<int>& a) : base(c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(container_type&& c, const test_allocator<int>& a) : base(std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 };
 

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include "../../../../test_allocator.h"
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -47,13 +47,13 @@
     allocator_type get_allocator() {return this->c.get_allocator();}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test<MoveOnly> q(make<C>(5), test_allocator<MoveOnly>(4));
     assert(q.get_allocator() == test_allocator<MoveOnly>(4));
     assert(q.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include "../../../../test_allocator.h"
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -47,14 +47,14 @@
     allocator_type get_allocator() {return this->c.get_allocator();}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test<MoveOnly> q(make<C>(5), test_allocator<MoveOnly>(4));
     test<MoveOnly> q2(std::move(q), test_allocator<MoveOnly>(5));
     assert(q2.get_allocator() == test_allocator<MoveOnly>(5));
     assert(q2.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,14 +28,14 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::queue<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     std::queue<MoveOnly> q2 = std::move(q);
     assert(q2.size() == 5);
     assert(q.empty());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,12 +28,12 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::queue<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     assert(q.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,15 +28,15 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::queue<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     std::queue<MoveOnly> q2;
     q2 = std::move(q);
     assert(q2.size() == 5);
     assert(q.empty());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::queue<Emplaceable> q;
     q.emplace(1, 2.5);
     q.emplace(2, 3.5);
@@ -26,5 +26,5 @@
     assert(q.size() == 3);
     assert(q.front() == Emplaceable(1, 2.5));
     assert(q.back() == Emplaceable(3, 4.5));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/push_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/push_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/push_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/queue/queue.defn/push_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::queue<MoveOnly> q;
     q.push(MoveOnly(1));
     assert(q.size() == 1);
@@ -32,5 +32,5 @@
     assert(q.size() == 3);
     assert(q.front() == MoveOnly(1));
     assert(q.back() == MoveOnly(3));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,10 +24,10 @@
 
     explicit test(const test_allocator<int>& a) : base(a) {}
     test(const container_type& c, const test_allocator<int>& a) : base(c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(container_type&& c, const test_allocator<int>& a) : base(std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 };
 

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -36,10 +36,10 @@
 
     explicit test(const test_allocator<int>& a) : base(a) {}
     test(const container_type& c, const test_allocator<int>& a) : base(c, a) {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(container_type&& c, const test_allocator<int>& a) : base(std::move(c), a) {}
     test(test&& q, const test_allocator<int>& a) : base(std::move(q), a) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_allocator<int> get_allocator() {return c.get_allocator();}
 };
 

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include "../../../../test_allocator.h"
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -47,13 +47,13 @@
     allocator_type get_allocator() {return this->c.get_allocator();}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test<MoveOnly> q(make<C>(5), test_allocator<MoveOnly>(4));
     assert(q.get_allocator() == test_allocator<MoveOnly>(4));
     assert(q.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 #include "../../../../test_allocator.h"
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -47,14 +47,14 @@
     allocator_type get_allocator() {return this->c.get_allocator();}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test<MoveOnly> q(make<C>(5), test_allocator<MoveOnly>(4));
     test<MoveOnly> q2(std::move(q), test_allocator<MoveOnly>(5));
     assert(q2.get_allocator() == test_allocator<MoveOnly>(5));
     assert(q2.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,14 +28,14 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::stack<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     std::stack<MoveOnly> q2 = std::move(q);
     assert(q2.size() == 5);
     assert(q.empty());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,12 +28,12 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::stack<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     assert(q.size() == 5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class C>
 C
@@ -28,15 +28,15 @@
     return c;
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::stack<MoveOnly> q(make<std::deque<MoveOnly> >(5));
     std::stack<MoveOnly> q2;
     q2 = std::move(q);
     assert(q2.size() == 5);
     assert(q.empty());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,12 +18,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::stack<Emplaceable> q;
     q.emplace(1, 2.5);
     q.emplace(2, 3.5);
     q.emplace(3, 4.5);
     assert(q.size() == 3);
     assert(q.top() == Emplaceable(3, 4.5));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/push_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/push_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/push_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/container.adaptors/stack/stack.defn/push_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::stack<MoveOnly> q;
     q.push(MoveOnly(1));
     assert(q.size() == 1);
@@ -29,5 +29,5 @@
     q.push(MoveOnly(3));
     assert(q.size() == 3);
     assert(q.top() == MoveOnly(3));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<int> d;
     d.assign({3, 4, 5, 6});
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,12 +16,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<int> d = {3, 4, 5, 6};
     assert(d.size() == 4);
     assert(d[0] == 3);
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<int, test_allocator<int>> d({3, 4, 5, 6}, test_allocator<int>(3));
     assert(d.get_allocator() == test_allocator<int>(3));
     assert(d.size() == 4);
@@ -26,5 +26,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         int ab[] = {3, 4, 2, 8, 0, 1, 44, 34, 45, 96, 80, 1, 13, 31, 45};
         int* an = ab + sizeof(ab)/sizeof(ab[0]);
@@ -50,5 +50,5 @@
         assert(c1.size() == 0);
         assert(c3.get_allocator() == c1.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         int ab[] = {3, 4, 2, 8, 0, 1, 44, 34, 45, 96, 80, 1, 13, 31, 45};
         int* an = ab + sizeof(ab)/sizeof(ab[0]);
@@ -65,5 +65,5 @@
         assert(c3.get_allocator() == A(3));
         assert(c1.size() != 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         int ab[] = {3, 4, 2, 8, 0, 1, 44, 34, 45, 96, 80, 1, 13, 31, 45};
         int* an = ab + sizeof(ab)/sizeof(ab[0]);
@@ -68,5 +68,5 @@
         assert(c1.size() == 0);
         assert(c3.get_allocator() == A(5));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<int> d;
     d = {3, 4, 5, 6};
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.cons/size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.cons/size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.cons/size.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.cons/size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -29,10 +29,10 @@
     assert(DefaultOnly::count == n);
     assert(d.size() == n);
     assert(distance(d.begin(), d.end()) == d.size());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     for (const_iterator i = d.begin(), e = d.end(); i != e; ++i)
         assert(*i == T());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     }
     assert(DefaultOnly::count == 0);
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../Emplaceable.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<Emplaceable>
 make(int size, int start = 0 )
@@ -85,15 +85,15 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2047, 2048, 2049};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int i = 0; i < N; ++i)
         for (int j = 0; j < N; ++j)
             testN(rng[i], rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../Emplaceable.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<Emplaceable>
 make(int size, int start = 0 )
@@ -60,15 +60,15 @@
     test(c1);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2047, 2048, 2049};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int i = 0; i < N; ++i)
         for (int j = 0; j < N; ++j)
             testN(rng[i], rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../Emplaceable.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<Emplaceable>
 make(int size, int start = 0 )
@@ -60,15 +60,15 @@
     test(c1);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2047, 2048, 2049};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int i = 0; i < N; ++i)
         for (int j = 0; j < N; ++j)
             testN(rng[i], rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<int> d(10, 1);
     std::deque<int>::iterator i = d.insert(d.cbegin() + 2, {3, 4, 5, 6});
     assert(d.size() == 14);
@@ -35,5 +35,5 @@
     assert(d[11] == 1);
     assert(d[12] == 1);
     assert(d[13] == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp Sat Sep  4 18:28:19 2010
@@ -200,7 +200,7 @@
 void
 test_move()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::deque<MoveOnly, stack_allocator<MoveOnly, 2000> > c;
     typedef std::deque<MoveOnly>::const_iterator CI;
     {
@@ -219,7 +219,7 @@
     j = 0;
     for (CI i = c.begin(); i != c.end(); ++i, ++j)
         assert(*i == MoveOnly(j));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }
 
 int main()

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<MoveOnly>
 make(int size, int start = 0 )
@@ -91,15 +91,15 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2047, 2048, 2049};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int i = 0; i < N; ++i)
         for (int j = 0; j < N; ++j)
             testN(rng[i], rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 #include "../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<MoveOnly>
 make(int size, int start = 0 )
@@ -54,14 +54,14 @@
     }
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2046, 2047, 2048, 2049, 4094, 4095, 4096};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int j = 0; j < N; ++j)
         test(rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include "../../../MoveOnly.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 std::deque<MoveOnly>
 make(int size, int start = 0 )
@@ -63,15 +63,15 @@
     test(c1, -10);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int rng[] = {0, 1, 2, 3, 1023, 1024, 1025, 2047, 2048, 2049};
     const int N = sizeof(rng)/sizeof(rng[0]);
     for (int i = 0; i < N; ++i)
         for (int j = 0; j < N; ++j)
             testN(rng[i], rng[j]);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         typedef std::forward_list<T> C;
@@ -40,5 +40,5 @@
             assert(*i == 10+n);
         assert(n == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef test_allocator<T> A;
@@ -158,5 +158,5 @@
         assert(c1.get_allocator() == A(10));
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         typedef std::forward_list<T> C;
@@ -40,5 +40,5 @@
             assert(*i == 10+n);
         assert(n == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         typedef std::forward_list<T> C;
@@ -26,5 +26,5 @@
             assert(*i == n);
         assert(n == 10);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         typedef test_allocator<T> A;
@@ -30,5 +30,5 @@
         assert(n == 10);
         assert(c.get_allocator() == A(14));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef test_allocator<int> A;
@@ -51,5 +51,5 @@
         assert(c0.empty());
         assert(c.get_allocator() == A(10));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef test_allocator<int> A;
@@ -51,5 +51,5 @@
         assert(!c0.empty());
         assert(c.get_allocator() == A(9));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.fail.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.fail.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
         C c = N;
         unsigned n = 0;
         for (C::const_iterator i = c.begin(), e = c.end(); i != e; ++i, ++n)
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(*i == T());
 #else
             ;

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
         C c(N);
         unsigned n = 0;
         for (C::const_iterator i = c.begin(), e = c.end(); i != e; ++i, ++n)
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(*i == T());
 #else
             ;

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef Emplaceable T;
         typedef std::forward_list<T> C;
@@ -51,5 +51,5 @@
         assert(*next(c.begin(), 3) == Emplaceable(2, 3.5));
         assert(distance(c.begin(), c.end()) == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef Emplaceable T;
         typedef std::forward_list<T> C;
@@ -31,5 +31,5 @@
         assert(*next(c.begin()) == Emplaceable());
         assert(distance(c.begin(), c.end()) == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         typedef std::forward_list<T> C;
@@ -42,5 +42,5 @@
         assert(*next(c.begin(), 3) == 1);
         assert(*next(c.begin(), 4) == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef std::forward_list<T> C;
@@ -51,5 +51,5 @@
         assert(*next(c.begin(), 3) == 2);
         assert(distance(c.begin(), c.end()) == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp Sat Sep  4 18:28:19 2010
@@ -31,7 +31,7 @@
         c.pop_front();
         assert(distance(c.begin(), c.end()) == 0);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef std::forward_list<T> C;
@@ -44,5 +44,5 @@
         c.pop_front();
         assert(distance(c.begin(), c.end()) == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef MoveOnly T;
         typedef std::forward_list<T> C;
@@ -31,5 +31,5 @@
         assert(*next(c.begin()) == 1);
         assert(distance(c.begin(), c.end()) == 2);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<int> d;
     d.assign({3, 4, 5, 6});
     assert(d.size() == 4);
@@ -25,5 +25,5 @@
     assert(*i++ == 4);
     assert(*i++ == 5);
     assert(*i++ == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::list<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::list<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -61,5 +61,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<int> d = {3, 4, 5, 6};
     assert(d.size() == 4);
     std::list<int>::iterator i = d.begin();
@@ -24,5 +24,5 @@
     assert(*i++ == 4);
     assert(*i++ == 5);
     assert(*i++ == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<int, test_allocator<int>> d({3, 4, 5, 6}, test_allocator<int>(3));
     assert(d.get_allocator() == test_allocator<int>(3));
     assert(d.size() == 4);
@@ -27,5 +27,5 @@
     assert(*i++ == 4);
     assert(*i++ == 5);
     assert(*i++ == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::list<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::list<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -45,5 +45,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::list<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::list<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -58,5 +58,5 @@
         assert(!l.empty());
         assert(l2.get_allocator() == other_allocator<MoveOnly>(4));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<int> d;
     d = {3, 4, 5, 6};
     assert(d.size() == 4);
@@ -25,5 +25,5 @@
     assert(*i++ == 4);
     assert(*i++ == 5);
     assert(*i++ == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.cons/size_type.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.cons/size_type.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.cons/size_type.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.cons/size_type.pass.cpp Sat Sep  4 18:28:19 2010
@@ -40,11 +40,11 @@
         ++i;
         assert(*i == 0);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::list<DefaultOnly> l(3);
         assert(l.size() == 3);
         assert(std::distance(l.begin(), l.end()) == 3);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -31,7 +31,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<A> c;
     c.emplace(c.cbegin(), 2, 3.5);
     assert(c.size() == 1);
@@ -43,5 +43,5 @@
     assert(c.front().getd() == 3.5);
     assert(c.back().geti() == 3);
     assert(c.back().getd() == 4.5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_back.pass.cpp Sat Sep  4 18:28:19 2010
@@ -31,7 +31,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<A> c;
     c.emplace_back(2, 3.5);
     assert(c.size() == 1);
@@ -43,5 +43,5 @@
     assert(c.front().getd() == 3.5);
     assert(c.back().geti() == 3);
     assert(c.back().getd() == 4.5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/emplace_front.pass.cpp Sat Sep  4 18:28:19 2010
@@ -31,7 +31,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<A> c;
     c.emplace_front(2, 3.5);
     assert(c.size() == 1);
@@ -43,5 +43,5 @@
     assert(c.front().getd() == 4.5);
     assert(c.back().geti() == 2);
     assert(c.back().getd() == 3.5);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<int> d(10, 1);
     std::list<int>::iterator i = d.insert(next(d.cbegin(), 2), {3, 4, 5, 6});
     assert(d.size() == 14);
@@ -36,5 +36,5 @@
     assert(*i++ == 1);
     assert(*i++ == 1);
     assert(*i++ == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<MoveOnly> l1;
     l1.insert(l1.cend(), MoveOnly(1));
     assert(l1.size() == 1);
@@ -27,5 +27,5 @@
     assert(l1.size() == 2);
     assert(l1.front() == MoveOnly(2));
     assert(l1.back() == MoveOnly(1));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<MoveOnly> l1;
     l1.push_back(MoveOnly(1));
     assert(l1.size() == 1);
@@ -27,5 +27,5 @@
     assert(l1.size() == 2);
     assert(l1.front() == MoveOnly(1));
     assert(l1.back() == MoveOnly(2));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::list<MoveOnly> l1;
     l1.push_front(MoveOnly(1));
     assert(l1.size() == 1);
@@ -27,5 +27,5 @@
     assert(l1.size() == 2);
     assert(l1.front() == MoveOnly(2));
     assert(l1.back() == MoveOnly(1));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d;
     d.assign({true, false, false, true});
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == false);
     assert(d[2] == false);
     assert(d[3] == true);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<bool, test_allocator<bool> > l(test_allocator<bool>(5));
         std::vector<bool, test_allocator<bool> > lo(test_allocator<bool>(5));
@@ -60,5 +60,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,12 +16,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d = {true, false, false, true};
     assert(d.size() == 4);
     assert(d[0] == true);
     assert(d[1] == false);
     assert(d[2] == false);
     assert(d[3] == true);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int, test_allocator<int>> d({true, false, false, true}, test_allocator<int>(3));
     assert(d.get_allocator() == test_allocator<int>(3));
     assert(d.size() == 4);
@@ -26,5 +26,5 @@
     assert(d[1] == false);
     assert(d[2] == false);
     assert(d[3] == true);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<bool> d(10, true);
     std::vector<bool>::iterator i = d.insert(d.cbegin() + 2, {false, true, true, false});
     assert(d.size() == 14);
@@ -35,5 +35,5 @@
     assert(d[11] == true);
     assert(d[12] == true);
     assert(d[13] == true);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<bool, test_allocator<bool> > l(test_allocator<bool>(5));
         std::vector<bool, test_allocator<bool> > lo(test_allocator<bool>(5));
@@ -44,5 +44,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<bool, test_allocator<bool> > l(test_allocator<bool>(5));
         std::vector<bool, test_allocator<bool> > lo(test_allocator<bool>(5));
@@ -57,5 +57,5 @@
         assert(!l.empty());
         assert(l2.get_allocator() == other_allocator<bool>(4));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<bool> d;
     d = {true, false, false, true};
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == false);
     assert(d[2] == false);
     assert(d[3] == true);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.capacity/resize_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly> v(100);
         v.resize(50);
@@ -37,7 +37,7 @@
         assert(v.size() == 200);
         assert(v.capacity() >= 200);
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<int> v(100);
         v.resize(50);
@@ -56,5 +56,5 @@
         assert(v.size() == 200);
         assert(v.capacity() >= 200);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d;
     d.assign({3, 4, 5, 6});
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::vector<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -61,5 +61,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/construct_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,10 +24,10 @@
     assert(c.__invariants());
     assert(c.size() == n);
     assert(c.get_allocator() == typename C::allocator_type());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     for (typename C::const_iterator i = c.cbegin(), e = c.cend(); i != e; ++i)
         assert(*i == typename C::value_type());
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }
 
 int main()

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,12 +16,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d = {3, 4, 5, 6};
     assert(d.size() == 4);
     assert(d[0] == 3);
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int, test_allocator<int>> d({3, 4, 5, 6}, test_allocator<int>(3));
     assert(d.get_allocator() == test_allocator<int>(3));
     assert(d.size() == 4);
@@ -26,5 +26,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::vector<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -45,5 +45,5 @@
         assert(l.empty());
         assert(l2.get_allocator() == lo.get_allocator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly, test_allocator<MoveOnly> > l(test_allocator<MoveOnly>(5));
         std::vector<MoveOnly, test_allocator<MoveOnly> > lo(test_allocator<MoveOnly>(5));
@@ -58,5 +58,5 @@
         assert(!l.empty());
         assert(l2.get_allocator() == other_allocator<MoveOnly>(4));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d;
     d = {3, 4, 5, 6};
     assert(d.size() == 4);
@@ -24,5 +24,5 @@
     assert(d[1] == 4);
     assert(d[2] == 5);
     assert(d[3] == 6);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../stack_allocator.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 class A
 {
@@ -49,11 +49,11 @@
     double getd() const {return d_;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<A> c;
         std::vector<A>::iterator i = c.emplace(c.cbegin(), 2, 3.5);
@@ -102,5 +102,5 @@
         assert(c.back().geti() == 3);
         assert(c.back().getd() == 4.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp Sat Sep  4 18:28:19 2010
@@ -15,7 +15,7 @@
 #include <cassert>
 #include "../../../stack_allocator.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 class A
 {
@@ -49,11 +49,11 @@
     double getd() const {return d_;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<A> c;
         c.emplace_back(2, 3.5);
@@ -80,5 +80,5 @@
         assert(c.back().geti() == 3);
         assert(c.back().getd() == 4.5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::vector<int> d(10, 1);
     std::vector<int>::iterator i = d.insert(d.cbegin() + 2, {3, 4, 5, 6});
     assert(d.size() == 14);
@@ -35,5 +35,5 @@
     assert(d[11] == 1);
     assert(d[12] == 1);
     assert(d[13] == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly> v(100);
         std::vector<MoveOnly>::iterator i = v.insert(v.cbegin() + 10, MoveOnly(3));
@@ -43,5 +43,5 @@
         for (++j; j < 101; ++j)
             assert(v[j] == MoveOnly());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::vector<MoveOnly> c;
         c.push_back(MoveOnly(0));
@@ -65,5 +65,5 @@
         for (int j = 0; j < c.size(); ++j)
             assert(c[j] == MoveOnly(j));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/test_allocator.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/test_allocator.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/test_allocator.h (original)
+++ libcxx/trunk/test/containers/test_allocator.h Sat Sep  4 18:28:19 2010
@@ -59,10 +59,10 @@
         {return UINT_MAX / sizeof(T);}
     void construct(pointer p, const T& val)
         {::new(p) T(val);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void construct(pointer p, T&& val)
         {::new(p) T(std::move(val));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void destroy(pointer p) {p->~T();}
 
     friend bool operator==(const test_allocator& x, const test_allocator& y)

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::allocator<std::pair<const int, std::string> > A;
         typedef std::unordered_map<int, std::string,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<std::pair<const int, std::string> > A;
         typedef std::unordered_map<int, std::string,
@@ -163,5 +163,5 @@
         assert(c.max_load_factor() == 1);
         assert(c0.size() == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -59,5 +59,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -60,5 +60,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp Sat Sep  4 18:28:19 2010
@@ -26,7 +26,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -62,5 +62,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -26,7 +26,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -63,5 +63,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -103,5 +103,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<int, std::string> P;
         typedef test_allocator<std::pair<const int, std::string>> A;
@@ -108,5 +108,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unord.map.elem/index.pass.cpp Sat Sep  4 18:28:19 2010
@@ -43,7 +43,7 @@
         assert(c.size() == 5);
         assert(c.at(11) == "eleven");
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<MoveOnly, std::string> C;
         typedef std::pair<int, std::string> P;
@@ -64,5 +64,5 @@
         assert(c.size() == 5);
         assert(c.at(11) == "eleven");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, Emplaceable> C;
         typedef std::pair<C::iterator, bool> R;
@@ -46,5 +46,5 @@
         assert(r.first->first == 5);
         assert(r.first->second == Emplaceable(6, 7));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, Emplaceable> C;
         typedef C::iterator R;
@@ -44,5 +44,5 @@
         assert(r->first == 5);
         assert(r->second == Emplaceable(6, 7));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_hint_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -50,7 +50,7 @@
         assert(r->first == 5.5);
         assert(r->second == 4);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<MoveOnly, MoveOnly> C;
         typedef C::iterator R;
@@ -77,5 +77,5 @@
         assert(r->first == 5);
         assert(r->second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<int, std::string> C;
         typedef std::pair<int, std::string> P;
@@ -44,5 +44,5 @@
         assert(c.at(3) == "three");
         assert(c.at(4) == "four");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.map/unorder.map.modifiers/insert_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -53,7 +53,7 @@
         assert(r.first->first == 5.5);
         assert(r.first->second == 4);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_map<MoveOnly, MoveOnly> C;
         typedef std::pair<C::iterator, bool> R;
@@ -83,5 +83,5 @@
         assert(r.first->first == 5);
         assert(r.first->second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<std::pair<const int, std::string> > A;
         typedef std::unordered_multimap<int, std::string,
@@ -82,5 +82,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<std::pair<const int, std::string> > A;
         typedef std::unordered_multimap<int, std::string,
@@ -221,5 +221,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -79,5 +79,5 @@
         assert(c.key_eq() == test_compare<std::equal_to<int> >());
         assert((c.get_allocator() == test_allocator<std::pair<const int, std::string> >()));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -81,5 +81,5 @@
         assert(c.key_eq() == test_compare<std::equal_to<int> >());
         assert((c.get_allocator() == test_allocator<std::pair<const int, std::string> >()));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -82,5 +82,5 @@
         assert(c.key_eq() == test_compare<std::equal_to<int> >());
         assert((c.get_allocator() == test_allocator<std::pair<const int, std::string> >()));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp Sat Sep  4 18:28:19 2010
@@ -26,7 +26,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -84,5 +84,5 @@
         assert(c.key_eq() == test_compare<std::equal_to<int> >(9));
         assert((c.get_allocator() == test_allocator<std::pair<const int, std::string> >()));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -26,7 +26,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -85,5 +85,5 @@
         assert(c.key_eq() == test_compare<std::equal_to<int> >(9));
         assert((c.get_allocator() == test_allocator<std::pair<const int, std::string> >(10)));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string,
                                    test_hash<std::hash<int> >,
@@ -125,5 +125,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<int, std::string> P;
         typedef test_allocator<std::pair<const int, std::string>> A;
@@ -156,5 +156,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, Emplaceable> C;
         typedef C::iterator R;
@@ -43,5 +43,5 @@
         assert(r->first == 5);
         assert(r->second == Emplaceable(6, 7));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, Emplaceable> C;
         typedef C::iterator R;
@@ -52,5 +52,5 @@
         assert(r->first == 3);
         assert(r->second == Emplaceable(5, 6));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -50,7 +50,7 @@
         assert(r->first == 5.5);
         assert(r->second == 4);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<MoveOnly, MoveOnly> C;
         typedef C::iterator R;
@@ -77,5 +77,5 @@
         assert(r->first == 5);
         assert(r->second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<int, std::string> C;
         typedef std::pair<int, std::string> P;
@@ -69,5 +69,5 @@
         assert(std::distance(c.begin(), c.end()) == c.size());
         assert(std::distance(c.cbegin(), c.cend()) == c.size());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -49,7 +49,7 @@
         assert(r->first == 5.5);
         assert(r->second == 4);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multimap<MoveOnly, MoveOnly> C;
         typedef C::iterator R;
@@ -75,5 +75,5 @@
         assert(r->first == 5);
         assert(r->second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<Emplaceable> C;
         typedef C::iterator R;
@@ -40,5 +40,5 @@
         assert(c.size() == 3);
         assert(*r == Emplaceable(5, 6));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<Emplaceable> C;
         typedef C::iterator R;
@@ -41,5 +41,5 @@
         assert(c.size() == 3);
         assert(*r == Emplaceable(5, 6));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -44,7 +44,7 @@
         assert(c.size() == 4);
         assert(*r == 5.5);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<MoveOnly> C;
         typedef C::iterator R;
@@ -67,5 +67,5 @@
         assert(c.size() == 4);
         assert(*r == 5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/insert_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/insert_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/insert_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/insert_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int> C;
         typedef int P;
@@ -43,5 +43,5 @@
         assert(c.count(3) == 1);
         assert(c.count(4) == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/insert_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -43,7 +43,7 @@
         assert(c.size() == 4);
         assert(*r == 5.5);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<MoveOnly> C;
         typedef C::iterator R;
@@ -65,5 +65,5 @@
         assert(c.size() == 4);
         assert(*r == 5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<int> A;
         typedef std::unordered_multiset<int,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<int> A;
         typedef std::unordered_multiset<int,
@@ -168,5 +168,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -55,5 +55,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -59,5 +59,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -60,5 +60,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -61,5 +61,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_multiset<int,
                                    test_hash<std::hash<int> >,
@@ -100,5 +100,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int P;
         typedef test_allocator<int> A;
@@ -115,5 +115,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/emplace.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/emplace.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/emplace.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/emplace.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<Emplaceable> C;
         typedef std::pair<C::iterator, bool> R;
@@ -43,5 +43,5 @@
         assert(*r.first == Emplaceable(5, 6));
         assert(!r.second);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/emplace_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/emplace_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/emplace_hint.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/emplace_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<Emplaceable> C;
         typedef C::iterator R;
@@ -41,5 +41,5 @@
         assert(c.size() == 2);
         assert(*r == Emplaceable(5, 6));
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/insert_hint_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -44,7 +44,7 @@
         assert(c.size() == 3);
         assert(*r == 5.5);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<MoveOnly> C;
         typedef C::iterator R;
@@ -67,5 +67,5 @@
         assert(c.size() == 3);
         assert(*r == 5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/insert_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/insert_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/insert_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/insert_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int> C;
         typedef int P;
@@ -43,5 +43,5 @@
         assert(c.count(3) == 1);
         assert(c.count(4) == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/insert_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/insert_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/insert_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/insert_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -47,7 +47,7 @@
         assert(*r.first == 5.5);
         assert(r.second);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<MoveOnly> C;
         typedef std::pair<C::iterator, bool> R;
@@ -73,5 +73,5 @@
         assert(*r.first == 5);
         assert(r.second);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<int> A;
         typedef std::unordered_set<int,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef test_allocator<int> A;
         typedef std::unordered_set<int,
@@ -160,5 +160,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -55,5 +55,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -57,5 +57,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -59,5 +59,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -60,5 +60,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -25,7 +25,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -61,5 +61,5 @@
         assert(c.load_factor() == (float)c.size()/c.bucket_count());
         assert(c.max_load_factor() == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unordered_set<int,
                                    test_hash<std::hash<int> >,
@@ -100,5 +100,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int P;
         typedef test_allocator<int> A;
@@ -107,5 +107,5 @@
 
         assert(c0.empty());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::filebuf f;
         assert(f.open("test.dat", std::ios_base::out | std::ios_base::in
@@ -50,5 +50,5 @@
         assert(f2.sgetc() == L'2');
     }
     remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/filebuf.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::filebuf f;
         assert(f.open("test.dat", std::ios_base::out | std::ios_base::in
@@ -48,5 +48,5 @@
         assert(f2.sgetc() == L'2');
     }
     remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/fstream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/fstream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/fstream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/fstream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::fstream fso("test.dat", std::ios_base::in | std::ios_base::out
                                                        | std::ios_base::trunc);
@@ -44,5 +44,5 @@
         assert(x == 3.25);
     }
     std::remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/fstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::fstream fso("test.dat", std::ios_base::in | std::ios_base::out
                                                        | std::ios_base::trunc);
@@ -42,5 +42,5 @@
         assert(x == 3.25);
     }
     std::remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ifstream fso("test.dat");
         std::ifstream fs;
@@ -36,5 +36,5 @@
         fs >> x;
         assert(x == 3.25);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/ifstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ifstream fso("test.dat");
         std::ifstream fs = move(fso);
@@ -34,5 +34,5 @@
         fs >> x;
         assert(x == 3.25);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ofstream fso("test.dat");
         std::ofstream fs;
@@ -46,5 +46,5 @@
         assert(x == 3.25);
     }
     remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/file.streams/fstreams/ofstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ofstream fso("test.dat");
         std::ofstream fs = move(fso);
@@ -44,5 +44,5 @@
         assert(x == 3.25);
     }
     remove("test.dat");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <istream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         {base::operator=(std::move(s)); return *this;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb1;
         testbuf<char> sb2;
@@ -88,5 +88,5 @@
         assert(is2.precision() == 6);
         assert(is2.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/input.streams/iostreamclass/iostream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <istream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         : base(std::move(s)) {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb;
         test_iostream<char> is1(&sb);
@@ -74,5 +74,5 @@
         assert(is.precision() == 6);
         assert(is.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/input.streams/istream.rvalue/rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/input.streams/istream.rvalue/rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/input.streams/istream.rvalue/rvalue.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/input.streams/istream.rvalue/rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 #include <istream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -42,11 +42,11 @@
     CharT* egptr() const {return base::egptr();}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb("   123");
         int i = 0;
@@ -59,5 +59,5 @@
         std::wistream(&sb) >> i;
         assert(i == 123);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <istream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         {base::operator=(std::move(s)); return *this;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb1;
         testbuf<char> sb2;
@@ -88,5 +88,5 @@
         assert(is2.precision() == 6);
         assert(is2.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/input.streams/istream/istream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <istream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         : base(std::move(s)) {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb;
         test_istream<char> is1(&sb);
@@ -74,5 +74,5 @@
         assert(is.precision() == 6);
         assert(is.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <ostream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         {base::operator=(std::move(s)); return *this;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb1;
         testbuf<char> sb2;
@@ -88,5 +88,5 @@
         assert(os2.precision() == 6);
         assert(os2.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <ostream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 struct testbuf
@@ -37,11 +37,11 @@
         : base(std::move(s)) {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb;
         test_ostream<char> os1(&sb);
@@ -70,5 +70,5 @@
         assert(os.precision() == 6);
         assert(os.getloc().name() == "C");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.rvalue/CharT_pointer.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.rvalue/CharT_pointer.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.rvalue/CharT_pointer.pass.cpp (original)
+++ libcxx/trunk/test/input.output/iostream.format/output.streams/ostream.rvalue/CharT_pointer.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 #include <ostream>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class CharT>
 class testbuf
@@ -53,11 +53,11 @@
         }
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         testbuf<char> sb;
         std::ostream(&sb) << "testing...";
@@ -68,5 +68,5 @@
         std::wostream(&sb) << L"123";
         assert(sb.str() == L"123");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.assign/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.assign/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.assign/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.assign/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::istringstream ss0(" 123 456");
         std::istringstream ss;
@@ -46,5 +46,5 @@
         ss >> i;
         assert(i == 456);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/istringstream/istringstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::istringstream ss0(" 123 456");
         std::istringstream ss(std::move(ss0));
@@ -44,5 +44,5 @@
         ss >> i;
         assert(i == 456);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.assign/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.assign/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.assign/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.assign/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ostringstream ss0(" 123 456");
         std::ostringstream ss;
@@ -42,5 +42,5 @@
         ss << i << ' ' << 567;;
         assert(ss.str() == L"234 5676");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/ostringstream/ostringstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::ostringstream ss0(" 123 456");
         std::ostringstream ss(std::move(ss0));
@@ -40,5 +40,5 @@
         ss << i << ' ' << 567;;
         assert(ss.str() == L"234 5676");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/stringstream.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/stringstream.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/stringstream.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/stringstream.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::stringstream ss0(" 123 456 ");
         std::stringstream ss(std::move(ss0));
@@ -48,5 +48,5 @@
         ss << i << ' ' << 123;
         assert(ss.str() == L"456 1236 ");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/input.output/string.streams/stringstream.cons/stringstream.assign/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/input.output/string.streams/stringstream.cons/stringstream.assign/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/input.output/string.streams/stringstream.cons/stringstream.assign/move.pass.cpp (original)
+++ libcxx/trunk/test/input.output/string.streams/stringstream.cons/stringstream.assign/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::stringstream ss0(" 123 456 ");
         std::stringstream ss;
@@ -50,5 +50,5 @@
         ss << i << ' ' << 123;
         assert(ss.str() == L"456 1236 ");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/back.insert.iter.op=/rv_value.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/back.insert.iter.op%3D/rv_value.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/back.insert.iter.op=/rv_value.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/insert.iterators/back.insert.iter.ops/back.insert.iter.op=/rv_value.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <iterator>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include <vector>
 #include <memory>
@@ -32,11 +32,11 @@
     assert(c.back() == typename C::value_type());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(std::vector<std::unique_ptr<int> >());
 #endif
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/front.insert.iter.op=/rv_value.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/front.insert.iter.op%3D/rv_value.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/front.insert.iter.op=/rv_value.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/insert.iterators/front.insert.iter.ops/front.insert.iter.op=/rv_value.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <iterator>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include <list>
 #include <memory>
@@ -31,11 +31,11 @@
     assert(c.front() == typename C::value_type());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test(std::list<std::unique_ptr<int> >());
 #endif
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/insert.iterators/insert.iter.ops/insert.iter.op=/rv_value.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/insert.iterators/insert.iter.ops/insert.iter.op%3D/rv_value.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/insert.iterators/insert.iter.ops/insert.iter.op=/rv_value.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/insert.iterators/insert.iter.ops/insert.iter.op=/rv_value.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 
 #include <iterator>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <vector>
 #include <memory>
 #include <cassert>
@@ -51,11 +51,11 @@
     void operator()(void*) const {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::unique_ptr<int, do_nothing> Ptr;
     typedef std::vector<Ptr> C;
     C c1;
@@ -91,5 +91,5 @@
         c2.push_back(Ptr(x+i));
     insert3at(c2, c2.begin()+3, Ptr(x+3), Ptr(x+4), Ptr(x+5));
     test(std::move(c1), 3, Ptr(x+3), Ptr(x+4), Ptr(x+5), c2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.index/difference_type.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.index/difference_type.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.index/difference_type.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.index/difference_type.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <iterator>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -33,26 +33,26 @@
     assert(rr == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct do_nothing
 {
     void operator()(void*) const {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
     char s[] = "1234567890";
     test(random_access_iterator<char*>(s+5), 4, '0');
     test(s+5, 4, '0');
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i[5];
     typedef std::unique_ptr<int, do_nothing> Ptr;
     Ptr p[5];
     for (unsigned j = 0; j < 5; ++j)
         p[j].reset(i+j);
     test(p, 3, Ptr(i+3));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.star/op_star.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.star/op_star.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.star/op_star.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.star/op_star.pass.cpp Sat Sep  4 18:28:19 2010
@@ -15,7 +15,7 @@
 
 #include <iterator>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -40,22 +40,22 @@
     assert(x2 == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct do_nothing
 {
     void operator()(void*) const {}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
     A a;
     test(&a, A());
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     int i;
     std::unique_ptr<int, do_nothing> p(&i);
     test(&p, std::unique_ptr<int, do_nothing>(&i));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp (original)
+++ libcxx/trunk/test/iterators/predef.iterators/move.iterators/move.iterator/types.pass.cpp Sat Sep  4 18:28:19 2010
@@ -38,7 +38,7 @@
     static_assert((std::is_same<typename R::difference_type, typename T::difference_type>::value), "");
     static_assert((std::is_same<typename R::pointer, typename T::pointer>::value), "");
     static_assert((std::is_same<typename R::value_type, typename T::value_type>::value), "");
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static_assert((std::is_same<typename R::reference, typename R::value_type&&>::value), "");
 #else
     static_assert((std::is_same<typename R::reference, typename T::reference>::value), "");

Modified: libcxx/trunk/test/language.support/support.initlist/support.initlist.access/access.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/language.support/support.initlist/support.initlist.access/access.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/language.support/support.initlist/support.initlist.access/access.pass.cpp (original)
+++ libcxx/trunk/test/language.support/support.initlist/support.initlist.access/access.pass.cpp Sat Sep  4 18:28:19 2010
@@ -32,7 +32,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     A test1 = {3, 2, 1};
 #endif
 }

Modified: libcxx/trunk/test/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp (original)
+++ libcxx/trunk/test/language.support/support.initlist/support.initlist.range/begin_end.pass.cpp Sat Sep  4 18:28:19 2010
@@ -30,7 +30,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     A test1 = {3, 2, 1};
 #endif
 }

Modified: libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/initializer_list_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/initializer_list_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/initializer_list_assign.pass.cpp (original)
+++ libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/initializer_list_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         T a[] = {1, 2, 3, 4, 5};
@@ -53,5 +53,5 @@
                 assert(v2[i][j] == a[i][j]);
         }
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/numerics/numarray/template.valarray/valarray.assign/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         T a[] = {1, 2, 3, 4, 5};
@@ -59,5 +59,5 @@
                 assert(v2[i][j] == a[i][j]);
         }
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         T a[] = {1, 2, 3, 4, 5};
@@ -37,5 +37,5 @@
         for (int i = 0; i < N; ++i)
             assert(v[i] == a[i]);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/numerics/numarray/template.valarray/valarray.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         T a[] = {1, 2, 3, 4, 5};
@@ -57,5 +57,5 @@
                 assert(v2[i][j] == a[i][j]);
         }
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/ctor_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/ctor_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/ctor_init.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/ctor_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::discrete_distribution<> D;
         D d = {};
@@ -77,5 +77,5 @@
         assert(p[1] == 0);
         assert(p[2] == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/param_ctor_init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/param_ctor_init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/param_ctor_init.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.discrete/param_ctor_init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::discrete_distribution<> D;
         typedef D::param_type P;
@@ -84,5 +84,5 @@
         assert(p[1] == 0);
         assert(p[2] == 1);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/ctor_init_func.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/ctor_init_func.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/ctor_init_func.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/ctor_init_func.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::piecewise_constant_distribution<> D;
         D d({}, f);
@@ -74,5 +74,5 @@
         assert(dn[0] == 0.203125);
         assert(dn[1] == 0.1484375);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/param_ctor_init_func.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/param_ctor_init_func.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/param_ctor_init_func.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.pconst/param_ctor_init_func.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::piecewise_constant_distribution<> D;
         typedef D::param_type P;
@@ -75,5 +75,5 @@
         assert(dn[0] == 0.203125);
         assert(dn[1] == 0.1484375);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/ctor_init_func.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/ctor_init_func.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/ctor_init_func.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/ctor_init_func.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::piecewise_linear_distribution<> D;
         D d({}, f);
@@ -78,5 +78,5 @@
         assert(dn[1] == 0.125);
         assert(dn[2] == 0.175);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/param_ctor_init_func.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/param_ctor_init_func.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/param_ctor_init_func.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.dis/rand.dist.samp/rand.dist.samp.plinear/param_ctor_init_func.pass.cpp Sat Sep  4 18:28:19 2010
@@ -24,7 +24,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::piecewise_linear_distribution<> D;
         typedef D::param_type P;
@@ -79,5 +79,5 @@
         assert(dn[1] == 0.125);
         assert(dn[2] == 0.175);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/numerics/rand/rand.util/rand.util.seedseq/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/numerics/rand/rand.util/rand.util.seedseq/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/numerics/rand/rand.util/rand.util.seedseq/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/numerics/rand/rand.util/rand.util.seedseq/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::seed_seq s= {5, 4, 3, 2, 1};
     assert(s.size() == 5);
     unsigned b[5] = {0};
@@ -29,5 +29,5 @@
     assert(b[2] == 3);
     assert(b[3] == 2);
     assert(b[4] == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp (original)
+++ libcxx/trunk/test/re/re.iter/re.tokiter/re.tokiter.cnstr/init.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::regex phone_numbers("\\d{3}-(\\d{4})");
         const char phone_book[] = "start 555-1234, 555-2345, 555-3456 end";
@@ -60,5 +60,5 @@
         ++i;
         assert(i == std::cregex_token_iterator());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/re/re.regex/re.regex.assign/assign.il.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/re/re.regex/re.regex.assign/assign.il.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/re/re.regex/re.regex.assign/assign.il.pass.cpp (original)
+++ libcxx/trunk/test/re/re.regex/re.regex.assign/assign.il.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::regex r2;
     r2.assign({'(', 'a', '(', '[', 'b', 'c', ']', ')', ')'});
     assert(r2.flags() == std::regex::ECMAScript);
@@ -29,5 +29,5 @@
     r2.assign({'(', 'a', '(', '[', 'b', 'c', ']', ')', ')'}, std::regex::extended);
     assert(r2.flags() == std::regex::extended);
     assert(r2.mark_count() == 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/re/re.regex/re.regex.assign/il.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/re/re.regex/re.regex.assign/il.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/re/re.regex/re.regex.assign/il.pass.cpp (original)
+++ libcxx/trunk/test/re/re.regex/re.regex.assign/il.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,10 +18,10 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::regex r2;
     r2 = {'(', 'a', '(', '[', 'b', 'c', ']', ')', ')'};
     assert(r2.flags() == std::regex::ECMAScript);
     assert(r2.mark_count() == 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/re/re.regex/re.regex.construct/il_flg.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/re/re.regex/re.regex.construct/il_flg.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/re/re.regex/re.regex.construct/il_flg.pass.cpp (original)
+++ libcxx/trunk/test/re/re.regex/re.regex.construct/il_flg.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <regex>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void
 test(std::initializer_list<char> il, std::regex_constants::syntax_option_type f, unsigned mc)
@@ -27,11 +27,11 @@
     assert(r.mark_count() == mc);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::string s1("\\(a\\)");
     std::string s2("\\(a[bc]\\)");
     std::string s3("\\(a\\([bc]\\)\\)");
@@ -66,5 +66,5 @@
     test({'\\', '(', 'a', '[', 'b', 'c', ']', '\\', ')'}, std::regex_constants::egrep, 0);
     test({'\\', '(', 'a', '\\', '(', '[', 'b', 'c', ']', '\\', ')', '\\', ')'}, std::regex_constants::egrep, 0);
     test({'(', 'a', '(', '[', 'b', 'c', ']', ')', ')'}, std::regex_constants::egrep, 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/re/test_allocator.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/re/test_allocator.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/re/test_allocator.h (original)
+++ libcxx/trunk/test/re/test_allocator.h Sat Sep  4 18:28:19 2010
@@ -59,10 +59,10 @@
         {return UINT_MAX / sizeof(T);}
     void construct(pointer p, const T& val)
         {::new(p) T(val);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void construct(pointer p, T&& val)
         {::new(p) T(std::move(val));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void destroy(pointer p) {p->~T();}
 
     friend bool operator==(const test_allocator& x, const test_allocator& y)

Modified: libcxx/trunk/test/strings/basic.string/string.cons/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.cons/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.cons/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.cons/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s = {'a', 'b', 'c'};
         assert(s == "abc");
@@ -28,5 +28,5 @@
         s = {L'a', L'b', L'c'};
         assert(s == L"abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.cons/initializer_list_assignment.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,11 +16,11 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s;
         s = {'a', 'b', 'c'};
         assert(s == "abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.cons/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.cons/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.cons/move.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.cons/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
 
@@ -31,15 +31,15 @@
     assert(s2.get_allocator() == s1.get_allocator());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_allocator<char> A;
     typedef std::basic_string<char, std::char_traits<char>, A> S;
     test(S(A(3)));
     test(S("1", A(5)));
     test(S("1234567890123456789012345678901234567890123456789012345678901234567890", A(7)));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.cons/move_alloc.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.cons/move_alloc.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.cons/move_alloc.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.cons/move_alloc.pass.cpp Sat Sep  4 18:28:19 2010
@@ -14,7 +14,7 @@
 #include <string>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
 
@@ -31,15 +31,15 @@
     assert(s2.get_allocator() == a);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef test_allocator<char> A;
     typedef std::basic_string<char, std::char_traits<char>, A> S;
     test(S(), A(3));
     test(S("1"), A(5));
     test(S("1234567890123456789012345678901234567890123456789012345678901234567890"), A(7));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.cons/move_assignment.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.cons/move_assignment.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.cons/move_assignment.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.cons/move_assignment.pass.cpp Sat Sep  4 18:28:19 2010
@@ -15,7 +15,7 @@
 #include <string>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include "../test_allocator.h"
 
@@ -31,11 +31,11 @@
     assert(s1.capacity() >= s1.size());
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     typedef std::string S;
     test(S(), S());
     test(S("1"), S());
@@ -52,5 +52,5 @@
     test(S("1234567890123456789012345678901234567890123456789012345678901234567890"
            "1234567890123456789012345678901234567890123456789012345678901234567890"),
          S("abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"));
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.modifiers/string_append/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,11 +16,11 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("123");
         s.append({'a', 'b', 'c'});
         assert(s == "123abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.modifiers/string_assign/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,11 +16,11 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("123");
         s.assign({'a', 'b', 'c'});
         assert(s == "abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.modifiers/string_insert/iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,12 +16,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("123456");
         std::string::iterator i = s.insert(s.begin() + 3, {'a', 'b', 'c'});
         assert(i - s.begin() == 3);
         assert(s == "123abc456");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.modifiers/string_op+=/initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.modifiers/string_op%2B%3D/initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.modifiers/string_op+=/initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.modifiers/string_op+=/initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,11 +16,11 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("123");
         s += {'a', 'b', 'c'};
         assert(s == "123abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.modifiers/string_replace/iter_iter_initializer_list.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,11 +16,11 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("123def456");
         s.replace(s.begin() + 3, s.begin() + 6, {'a', 'b', 'c'});
         assert(s == "123abc456");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_delim_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("initial text");
         getline(std::istringstream(" abc*  def*   ghij"), s, '*');
@@ -31,5 +31,5 @@
         getline(std::wistringstream(L" abc*  def*   ghij"), s, L'*');
         assert(s == L" abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string.io/get_line_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::string s("initial text");
         getline(std::istringstream(" abc\n  def\n   ghij"), s);
@@ -31,5 +31,5 @@
         getline(std::wistringstream(L" abc\n  def\n   ghij"), s);
         assert(s == L" abc");
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op%2B/char_string.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
     assert(lhs + rhs == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class S>
 void
@@ -36,7 +36,7 @@
     assert(lhs + move(rhs) == x);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 typedef std::string S;
 
@@ -47,12 +47,12 @@
     test0('a', S("1234567890"), S("a1234567890"));
     test0('a', S("12345678901234567890"), S("a12345678901234567890"));
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1('a', S(""), S("a"));
     test1('a', S("12345"), S("a12345"));
     test1('a', S("1234567890"), S("a1234567890"));
     test1('a', S("12345678901234567890"), S("a12345678901234567890"));
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op%2B/pointer_string.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
     assert(lhs + rhs == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class S>
 void
@@ -36,7 +36,7 @@
     assert(lhs + move(rhs) == x);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 typedef std::string S;
 
@@ -59,7 +59,7 @@
     test0("abcdefghijklmnopqrst", S("1234567890"), S("abcdefghijklmnopqrst1234567890"));
     test0("abcdefghijklmnopqrst", S("12345678901234567890"), S("abcdefghijklmnopqrst12345678901234567890"));
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1("", S(""), S(""));
     test1("", S("12345"), S("12345"));
@@ -78,5 +78,5 @@
     test1("abcdefghijklmnopqrst", S("1234567890"), S("abcdefghijklmnopqrst1234567890"));
     test1("abcdefghijklmnopqrst", S("12345678901234567890"), S("abcdefghijklmnopqrst12345678901234567890"));
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op%2B/string_char.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
     assert(lhs + rhs == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class S>
 void
@@ -36,7 +36,7 @@
     assert(move(lhs) + rhs == x);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 typedef std::string S;
 
@@ -47,12 +47,12 @@
     test0(S("abcdefghij"), '1', S("abcdefghij1"));
     test0(S("abcdefghijklmnopqrst"), '1', S("abcdefghijklmnopqrst1"));
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1(S(""), '1', S("1"));
     test1(S("abcde"), '1', S("abcde1"));
     test1(S("abcdefghij"), '1', S("abcdefghij1"));
     test1(S("abcdefghijklmnopqrst"), '1', S("abcdefghijklmnopqrst1"));
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op%2B/string_pointer.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
     assert(lhs + rhs == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class S>
 void
@@ -36,7 +36,7 @@
     assert(move(lhs) + rhs == x);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 typedef std::string S;
 
@@ -59,7 +59,7 @@
     test0(S("abcdefghijklmnopqrst"), "1234567890", S("abcdefghijklmnopqrst1234567890"));
     test0(S("abcdefghijklmnopqrst"), "12345678901234567890", S("abcdefghijklmnopqrst12345678901234567890"));
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1(S(""), "", S(""));
     test1(S(""), "12345", S("12345"));
@@ -78,5 +78,5 @@
     test1(S("abcdefghijklmnopqrst"), "1234567890", S("abcdefghijklmnopqrst1234567890"));
     test1(S("abcdefghijklmnopqrst"), "12345678901234567890", S("abcdefghijklmnopqrst12345678901234567890"));
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op%2B/string_string.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp (original)
+++ libcxx/trunk/test/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp Sat Sep  4 18:28:19 2010
@@ -39,7 +39,7 @@
     assert(lhs + rhs == x);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class S>
 void
@@ -62,7 +62,7 @@
     assert(move(lhs) + move(rhs) == x);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 typedef std::string S;
 
@@ -85,7 +85,7 @@
     test0(S("abcdefghijklmnopqrst"), S("1234567890"), S("abcdefghijklmnopqrst1234567890"));
     test0(S("abcdefghijklmnopqrst"), S("12345678901234567890"), S("abcdefghijklmnopqrst12345678901234567890"));
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     test1(S(""), S(""), S(""));
     test1(S(""), S("12345"), S("12345"));
@@ -138,5 +138,5 @@
     test3(S("abcdefghijklmnopqrst"), S("1234567890"), S("abcdefghijklmnopqrst1234567890"));
     test3(S("abcdefghijklmnopqrst"), S("12345678901234567890"), S("abcdefghijklmnopqrst12345678901234567890"));
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.atomic_future/copy_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.atomic_future/copy_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.atomic_future/copy_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.atomic_future/copy_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -70,5 +70,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.promise/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.promise/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.promise/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.promise/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert(test_alloc_base::count == 0);
     {
         std::promise<int> p0(std::allocator_arg, test_allocator<int>());
@@ -85,5 +85,5 @@
         assert(test_alloc_base::count == 1);
     }
     assert(test_alloc_base::count == 0);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.promise/move_ctor.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.promise/move_ctor.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.promise/move_ctor.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.promise/move_ctor.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert(test_alloc_base::count == 0);
     {
         std::promise<int> p0(std::allocator_arg, test_allocator<int>());
@@ -79,5 +79,5 @@
         assert(test_alloc_base::count == 1);
     }
     assert(test_alloc_base::count == 0);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.promise/set_rvalue.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.promise/set_rvalue.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.promise/set_rvalue.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.promise/set_rvalue.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,7 +17,7 @@
 #include <memory>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct A
 {
@@ -26,11 +26,11 @@
     A(A&&) {throw 9;}
 };
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::unique_ptr<int> T;
         T i(new int(3));
@@ -63,5 +63,5 @@
             assert(j == 9);
         }
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.promise/set_rvalue_at_thread_exit.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,23 +17,23 @@
 #include <memory>
 #include <cassert>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void func(std::promise<std::unique_ptr<int>>& p)
 {
     p.set_value_at_thread_exit(std::unique_ptr<int>(new int(5)));
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         std::promise<std::unique_ptr<int>> p;
         std::future<std::unique_ptr<int>> f = p.get_future();
         std::thread(func, std::move(p)).detach();
         assert(*f.get() == 5);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.shared_future/copy_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.shared_future/copy_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.shared_future/copy_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.shared_future/copy_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -70,5 +70,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.shared_future/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.shared_future/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.shared_future/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.shared_future/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -70,5 +70,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.unique_future/copy_assign.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.unique_future/copy_assign.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.unique_future/copy_assign.fail.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.unique_future/copy_assign.fail.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -70,5 +70,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.unique_future/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.unique_future/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.unique_future/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.unique_future/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -70,5 +70,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/futures.unique_future/move_ctor.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/futures.unique_future/move_ctor.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/futures.unique_future/move_ctor.pass.cpp (original)
+++ libcxx/trunk/test/thread/futures/futures.unique_future/move_ctor.pass.cpp Sat Sep  4 18:28:19 2010
@@ -18,7 +18,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef int T;
         std::promise<T> p;
@@ -64,5 +64,5 @@
         assert(!f0.valid());
         assert(!f.valid());
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/futures/test_allocator.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/futures/test_allocator.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/futures/test_allocator.h (original)
+++ libcxx/trunk/test/thread/futures/test_allocator.h Sat Sep  4 18:28:19 2010
@@ -59,10 +59,10 @@
         {return UINT_MAX / sizeof(T);}
     void construct(pointer p, const T& val)
         {::new(p) T(val);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void construct(pointer p, T&& val)
         {::new(p) T(std::move(val));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void destroy(pointer p) {p->~T();}
 
     friend bool operator==(const test_allocator& x, const test_allocator& y)

Modified: libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp (original)
+++ libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::unique_lock<std::mutex> lk0(m0);
     std::unique_lock<std::mutex> lk1(m1);
     lk1 = std::move(lk0);
@@ -29,5 +29,5 @@
     assert(lk1.owns_lock() == true);
     assert(lk0.mutex() == nullptr);
     assert(lk0.owns_lock() == false);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp (original)
+++ libcxx/trunk/test/thread/thread.mutex/thread.lock/thread.lock.unique/thread.lock.unique.cons/move_ctor.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,12 +20,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::unique_lock<std::mutex> lk0(m);
     std::unique_lock<std::mutex> lk = std::move(lk0);
     assert(lk.mutex() == &m);
     assert(lk.owns_lock() == true);
     assert(lk0.mutex() == nullptr);
     assert(lk0.owns_lock() == false);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp (original)
+++ libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.assign/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -56,7 +56,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::set_terminate(f1);
     {
         assert(G::n_alive == 0);
@@ -78,5 +78,5 @@
         t0 = std::move(t1);
         assert(false);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp (original)
+++ libcxx/trunk/test/thread/thread.threads/thread.thread.class/thread.thread.constr/move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -51,7 +51,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         assert(G::n_alive == 0);
         assert(!G::op_run);
@@ -64,5 +64,5 @@
         assert(G::n_alive == 0);
         assert(G::op_run);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp (original)
+++ libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/alloc_rfunction.pass.cpp Sat Sep  4 18:28:19 2010
@@ -61,7 +61,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert(new_called == 0);
     {
     std::function<int(int)> f = A();
@@ -77,5 +77,5 @@
     assert(f.target<A>() == 0);
     assert(f.target<int(*)(int)>() == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy.pass.cpp (original)
+++ libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy.pass.cpp Sat Sep  4 18:28:19 2010
@@ -99,7 +99,7 @@
     assert(f2.target<int(*)(int)>() == 0);
     assert(f2.target<A>() == 0);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert(new_called == 0);
     {
     std::function<int(int)> f = A();
@@ -115,5 +115,5 @@
     assert(f.target<A>() == 0);
     assert(f.target<int(*)(int)>() == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp (original)
+++ libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/func.wrap.func.con/copy_assign.pass.cpp Sat Sep  4 18:28:19 2010
@@ -102,7 +102,7 @@
     assert(f2.target<int(*)(int)>() == 0);
     assert(f2.target<A>() == 0);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     assert(new_called == 0);
     {
     std::function<int(int)> f = A();
@@ -119,5 +119,5 @@
     assert(f.target<A>() == 0);
     assert(f.target<int(*)(int)>() == 0);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/test_allocator.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/test_allocator.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/test_allocator.h (original)
+++ libcxx/trunk/test/utilities/function.objects/func.wrap/func.wrap.func/test_allocator.h Sat Sep  4 18:28:19 2010
@@ -59,10 +59,10 @@
         {return UINT_MAX / sizeof(T);}
     void construct(pointer p, const T& val)
         {::new(p) T(val);}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void construct(pointer p, T&& val)
         {::new(p) T(std::move(val));}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     void destroy(pointer p) {p->~T();}
 
     friend bool operator==(const test_allocator& x, const test_allocator& y)

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/allocs.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -108,5 +108,5 @@
             std::scoped_allocator_adaptor<A2<int>, A3<int>>(A2<int>(5), A3<int>(6))));
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_copy.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_copy.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_copy.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_copy.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<double>> B;
@@ -65,5 +65,5 @@
         assert(a2 == a1);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_move.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_move.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_move.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/converting_move.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<double>> B;
@@ -71,5 +71,5 @@
         assert(a2 == a1);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/copy.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/copy.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/copy.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/copy.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -66,5 +66,5 @@
         assert(a2 == a1);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/default.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/default.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/default.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.cnstr/default.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -54,5 +54,5 @@
         assert(A3<int>::move_called == false);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -45,5 +45,5 @@
         assert(A1<int>::allocate_called == true);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size_hint.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size_hint.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size_hint.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/allocate_size_hint.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -66,5 +66,5 @@
         assert(a.allocate(10, (const void*)20) == (int*)20);
         assert(A2<int>::allocate_called == true);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/construct.pass.cpp Sat Sep  4 18:28:19 2010
@@ -20,7 +20,7 @@
 
 #include "../allocators.h"
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 struct B
 {
@@ -111,11 +111,11 @@
 
 bool F::constructed = false;
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<std::string>> A;
@@ -189,5 +189,5 @@
         s->~S();
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/deallocate.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/deallocate.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/deallocate.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/deallocate.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -42,5 +42,5 @@
         assert((A1<int>::deallocate_called == std::pair<int*, std::size_t>((int*)10, 20)));
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/destroy.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/destroy.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/destroy.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/destroy.pass.cpp Sat Sep  4 18:28:19 2010
@@ -32,7 +32,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<B>> A;
@@ -66,5 +66,5 @@
         assert(A3<S>::destroy_called);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/inner_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/inner_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/inner_allocator.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/inner_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -41,5 +41,5 @@
             std::scoped_allocator_adaptor<A2<int>, A3<int>>(A2<int>(6), A3<int>(8))));
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/max_size.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/max_size.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/max_size.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/max_size.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -39,5 +39,5 @@
         assert(a.max_size() == 200);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/outer_allocator.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/outer_allocator.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/outer_allocator.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/outer_allocator.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -40,5 +40,5 @@
         assert(a.outer_allocator() == A1<int>(5));
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/select_on_container_copy_construction.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/select_on_container_copy_construction.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/select_on_container_copy_construction.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.members/select_on_container_copy_construction.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     {
         typedef std::scoped_allocator_adaptor<A1<int>> A;
@@ -51,5 +51,5 @@
         assert(a2.inner_allocator().inner_allocator().outer_allocator().id() == -1);
     }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/inner_allocator_type.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/inner_allocator_type.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/inner_allocator_type.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/inner_allocator_type.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert((std::is_same<
         std::scoped_allocator_adaptor<A1<int>>::inner_allocator_type,
@@ -35,5 +35,5 @@
         std::scoped_allocator_adaptor<A1<int>, A2<int>, A3<int>>::inner_allocator_type,
         std::scoped_allocator_adaptor<A2<int>, A3<int>>>::value), "");
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_copy_assignment.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_copy_assignment.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_copy_assignment.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_copy_assignment.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert((std::is_same<
         std::scoped_allocator_adaptor<A1<int>>::propagate_on_container_copy_assignment,
@@ -35,5 +35,5 @@
         std::scoped_allocator_adaptor<A1<int>, A2<int>, A3<int>>::propagate_on_container_copy_assignment,
         std::true_type>::value), "");
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_move_assignment.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_move_assignment.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_move_assignment.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_move_assignment.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert((std::is_same<
         std::scoped_allocator_adaptor<A1<int>>::propagate_on_container_move_assignment,
@@ -35,5 +35,5 @@
         std::scoped_allocator_adaptor<A1<int>, A2<int>, A3<int>>::propagate_on_container_move_assignment,
         std::true_type>::value), "");
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_swap.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_swap.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_swap.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocator.adaptor.types/propagate_on_container_swap.pass.cpp Sat Sep  4 18:28:19 2010
@@ -21,7 +21,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert((std::is_same<
         std::scoped_allocator_adaptor<A1<int>>::propagate_on_container_swap,
@@ -35,5 +35,5 @@
         std::scoped_allocator_adaptor<A1<int>, A2<int>, A3<int>>::propagate_on_container_swap,
         std::true_type>::value), "");
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/allocators.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/allocators.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/allocators.h (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/allocators.h Sat Sep  4 18:28:19 2010
@@ -4,7 +4,7 @@
 #include <type_traits>
 #include <utility>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class T>
 class A1
@@ -169,6 +169,6 @@
     return !(x == y);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // ALLOCATORS_H

Modified: libcxx/trunk/test/utilities/memory/allocator.adaptor/types.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/allocator.adaptor/types.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/allocator.adaptor/types.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/allocator.adaptor/types.pass.cpp Sat Sep  4 18:28:19 2010
@@ -30,7 +30,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert((std::is_base_of<
         A1<int>,
@@ -98,5 +98,5 @@
         std::scoped_allocator_adaptor<A2<int>, A1<int>>::const_void_pointer,
         const void*>::value), "");
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/memory/default.allocator/allocator.members/construct.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/default.allocator/allocator.members/construct.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/default.allocator/allocator.members/construct.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/default.allocator/allocator.members/construct.pass.cpp Sat Sep  4 18:28:19 2010
@@ -52,23 +52,23 @@
 class move_only
 {
     int data;
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {++move_only_constructed;}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {++move_only_constructed;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {++move_only_constructed;}
     ~move_only() {--move_only_constructed;}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/deleter.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/deleter.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/deleter.h (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/deleter.h Sat Sep  4 18:28:19 2010
@@ -24,16 +24,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -41,7 +41,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -50,13 +50,13 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(0) {}
     explicit Deleter(int s) : state_(s) {}
     ~Deleter() {assert(state_ >= 0); state_ = -1;}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -66,12 +66,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}
@@ -84,16 +84,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -101,7 +101,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -110,7 +110,7 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(0) {}
     explicit Deleter(int s) : state_(s) {}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move01.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move01.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move01.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move01.pass.cpp Sat Sep  4 18:28:19 2010
@@ -34,16 +34,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -51,7 +51,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -60,11 +60,11 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(5) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -74,12 +74,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move02.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move02.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move02.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move02.pass.cpp Sat Sep  4 18:28:19 2010
@@ -34,16 +34,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -51,7 +51,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -60,11 +60,11 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(5) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -74,12 +74,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert08.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert08.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert08.fail.cpp (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert08.fail.cpp Sat Sep  4 18:28:19 2010
@@ -46,16 +46,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -63,7 +63,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -72,11 +72,11 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(5) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -86,12 +86,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert11.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert11.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert11.fail.cpp (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/move_convert11.fail.cpp Sat Sep  4 18:28:19 2010
@@ -46,16 +46,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -63,7 +63,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -72,11 +72,11 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(5) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -86,12 +86,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}

Modified: libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer_deleter01.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer_deleter01.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer_deleter01.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer_deleter01.pass.cpp Sat Sep  4 18:28:19 2010
@@ -33,16 +33,16 @@
 {
     int state_;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(const Deleter&);
     Deleter& operator=(const Deleter&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&);
     Deleter& operator=(Deleter&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     Deleter(Deleter&& r) : state_(r.state_) {r.state_ = 0;}
     Deleter& operator=(Deleter&& r)
     {
@@ -50,7 +50,7 @@
         r.state_ = 0;
         return *this;
     }
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<Deleter>() {return std::__rv<Deleter>(*this);}
     Deleter(std::__rv<Deleter> r) : state_(r->state_) {r->state_ = 0;}
     Deleter& operator=(std::__rv<Deleter> r)
@@ -59,11 +59,11 @@
         r->state_ = 0;
         return *this;
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     Deleter() : state_(5) {}
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U>&& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
@@ -73,12 +73,12 @@
     template <class U>
         Deleter(const Deleter<U>& d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     template <class U>
         Deleter(Deleter<U> d,
             typename std::enable_if<!std::is_same<U, T>::value>::type* = 0)
             : state_(d.state()) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 public:
     int state() const {return state_;}
     void set_state(int i) {state_ = i;}

Modified: libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/auto_ptr.pass.cpp Sat Sep  4 18:28:19 2010
@@ -58,7 +58,7 @@
     {
     std::auto_ptr<A> ptr(new A);
     A* raw_ptr = ptr.get();
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     std::shared_ptr<B> p(std::move(ptr));
 #else
     std::shared_ptr<B> p(ptr);
@@ -76,7 +76,7 @@
     throw_next = true;
     try
     {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         std::shared_ptr<B> p(std::move(ptr));
 #else
         std::shared_ptr<B> p(ptr);

Modified: libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y_rv.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_Y_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -66,24 +66,24 @@
             std::shared_ptr<B> pB(std::move(pA));
             assert(B::count == 1);
             assert(A::count == 1);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(pB.use_count() == 1);
             assert(pA.use_count() == 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(pB.use_count() == 2);
             assert(pA.use_count() == 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(p == pB.get());
         }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         assert(pA.use_count() == 0);
         assert(B::count == 0);
         assert(A::count == 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
         assert(pA.use_count() == 1);
         assert(B::count == 1);
         assert(A::count == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     }
     assert(B::count == 0);
     assert(A::count == 0);

Modified: libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_rv.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_rv.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_rv.pass.cpp (original)
+++ libcxx/trunk/test/utilities/memory/util.smartptr/util.smartptr.shared/util.smartptr.shared.const/shared_ptr_rv.pass.cpp Sat Sep  4 18:28:19 2010
@@ -37,22 +37,22 @@
             A* p = pA.get();
             std::shared_ptr<A> pA2(std::move(pA));
             assert(A::count == 1);
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(pA.use_count() == 0);
             assert(pA2.use_count() == 1);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(pA.use_count() == 2);
             assert(pA2.use_count() == 2);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
             assert(pA2.get() == p);
         }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
         assert(pA.use_count() == 0);
         assert(A::count == 0);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
         assert(pA.use_count() == 1);
         assert(A::count == 1);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     }
     assert(A::count == 0);
     {

Modified: libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp (original)
+++ libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/add_rvalue_ref.pass.cpp Sat Sep  4 18:28:19 2010
@@ -13,7 +13,7 @@
 
 #include <type_traits>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class T, class U>
 void test_add_rvalue_reference()
@@ -21,11 +21,11 @@
     static_assert((std::is_same<typename std::add_rvalue_reference<T>::type, U>::value), "");
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_add_rvalue_reference<void, void>();
     test_add_rvalue_reference<int, int&&>();
     test_add_rvalue_reference<int[3], int(&&)[3]>();
@@ -33,5 +33,5 @@
     test_add_rvalue_reference<const int&, const int&>();
     test_add_rvalue_reference<int*, int*&&>();
     test_add_rvalue_reference<const int*, const int*&&>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp (original)
+++ libcxx/trunk/test/utilities/meta/meta.trans/meta.trans.ref/remove_ref.pass.cpp Sat Sep  4 18:28:19 2010
@@ -33,11 +33,11 @@
     test_remove_reference<int*&, int*>();
     test_remove_reference<const int*&, const int*>();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_remove_reference<int&&, int>();
     test_remove_reference<const int&&, const int>();
     test_remove_reference<int(&&)[3], int[3]>();
     test_remove_reference<int*&&, int*>();
     test_remove_reference<const int*&&, const int*>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp (original)
+++ libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.cat/rvalue_ref.pass.cpp Sat Sep  4 18:28:19 2010
@@ -33,8 +33,8 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_rvalue_ref<int&&>();
     test_rvalue_ref<const int&&>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp (original)
+++ libcxx/trunk/test/utilities/meta/meta.unary/meta.unary.comp/rvalue_ref.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,8 +27,8 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test_rvalue_ref<int&&>();
     test_rvalue_ref<const int&&>();
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/tuple/tuple.tuple/MoveOnly.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/tuple/tuple.tuple/MoveOnly.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/tuple/tuple.tuple/MoveOnly.h (original)
+++ libcxx/trunk/test/utilities/tuple/tuple.tuple/MoveOnly.h Sat Sep  4 18:28:19 2010
@@ -1,7 +1,7 @@
 #ifndef MOVEONLY_H
 #define MOVEONLY_H
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #include <cstddef>
 #include <functional>
@@ -36,6 +36,6 @@
 
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // MOVEONLY_H

Modified: libcxx/trunk/test/utilities/tuple/tuple.tuple/allocators.h
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/tuple/tuple.tuple/allocators.h?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/tuple/tuple.tuple/allocators.h (original)
+++ libcxx/trunk/test/utilities/tuple/tuple.tuple/allocators.h Sat Sep  4 18:28:19 2010
@@ -4,7 +4,7 @@
 #include <type_traits>
 #include <utility>
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 template <class T>
 class A1
@@ -169,6 +169,6 @@
     return !(x == y);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 #endif  // ALLOCATORS_H

Modified: libcxx/trunk/test/utilities/utility/declval/declval.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/declval/declval.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/declval/declval.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/declval/declval.pass.cpp Sat Sep  4 18:28:19 2010
@@ -22,7 +22,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static_assert((std::is_same<decltype(std::declval<A>()), A&&>::value), "");
 #else
     static_assert((std::is_same<decltype(std::declval<A>()), A>::value), "");

Modified: libcxx/trunk/test/utilities/utility/forward/forward.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/forward.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/forward.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/forward.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,19 +27,19 @@
 one test(A&);
 two test(const A&);
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 four test(A&&);
 eight test(const A&&);
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
     A a;
     const A ca = A();
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static_assert(sizeof(test(std::forward<A&>(a))) == 1, "");
     static_assert(sizeof(test(std::forward<A>(a))) == 4, "");
     static_assert(sizeof(test(std::forward<A>(source()))) == 4, "");
@@ -54,7 +54,7 @@
     static_assert(sizeof(test(std::forward<const A>(ca))) == 8, "");
     static_assert(sizeof(test(std::forward<const A>(csource()))) == 8, "");
 
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     static_assert(sizeof(test(std::forward<A&>(a))) == 1, "");
     static_assert(sizeof(test(std::forward<A>(a))) == 1, "");
@@ -69,5 +69,5 @@
     static_assert(sizeof(test(std::forward<const A&>(csource()))) == 2, "");
     static_assert(sizeof(test(std::forward<const A>(ca))) == 2, "");
     static_assert(sizeof(test(std::forward<const A>(csource()))) == 2, "");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/forward/move_copy.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_copy.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_copy.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_copy.pass.cpp Sat Sep  4 18:28:19 2010
@@ -17,25 +17,25 @@
 
 class A
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #else
 #endif
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     A(const A&) {++copy_ctor;}
     A& operator=(const A&);
 
     A(A&&) {++move_ctor;}
     A& operator=(A&&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     A(const A&) {++copy_ctor;}
     A& operator=(A&);
 
     operator std::__rv<A> () {return std::__rv<A>(*this);}
     A(std::__rv<A>) {++move_ctor;}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     A() {}
 };

Modified: libcxx/trunk/test/utilities/utility/forward/move_if_noexcept.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_if_noexcept.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_if_noexcept.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_if_noexcept.pass.cpp Sat Sep  4 18:28:19 2010
@@ -27,7 +27,7 @@
 public:
 
     A() {}
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     A(A&&) {}
 #endif
 };
@@ -40,16 +40,16 @@
     A a;
     const A ca;
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static_assert((std::is_same<decltype(std::move_if_noexcept(i)), int&&>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(ci)), const int&&>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(a)), const A&>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(ca)), const A&>::value), "");
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     static_assert((std::is_same<decltype(std::move_if_noexcept(i)), const int>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(ci)), const int>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(a)), const A>::value), "");
     static_assert((std::is_same<decltype(std::move_if_noexcept(ca)), const A>::value), "");
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 }

Modified: libcxx/trunk/test/utilities/utility/forward/move_only.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_only.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_only.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_only.pass.cpp Sat Sep  4 18:28:19 2010
@@ -14,23 +14,23 @@
 
 class move_only
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {}
 };

Modified: libcxx/trunk/test/utilities/utility/forward/move_only1.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_only1.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_only1.fail.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_only1.fail.cpp Sat Sep  4 18:28:19 2010
@@ -17,23 +17,23 @@
 
 class move_only
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {}
 };

Modified: libcxx/trunk/test/utilities/utility/forward/move_only2.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_only2.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_only2.fail.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_only2.fail.cpp Sat Sep  4 18:28:19 2010
@@ -17,23 +17,23 @@
 
 class move_only
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {}
 };

Modified: libcxx/trunk/test/utilities/utility/forward/move_only3.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_only3.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_only3.fail.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_only3.fail.cpp Sat Sep  4 18:28:19 2010
@@ -14,23 +14,23 @@
 
 class move_only
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {}
 };

Modified: libcxx/trunk/test/utilities/utility/forward/move_only4.fail.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/forward/move_only4.fail.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/forward/move_only4.fail.cpp (original)
+++ libcxx/trunk/test/utilities/utility/forward/move_only4.fail.cpp Sat Sep  4 18:28:19 2010
@@ -17,23 +17,23 @@
 
 class move_only
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(const move_only&);
     move_only& operator=(const move_only&);
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&);
     move_only& operator=(move_only&);
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 public:
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     move_only(move_only&&) {}
     move_only& operator=(move_only&&) {}
-#else  // _LIBCPP_MOVE
+#else  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
     operator std::__rv<move_only> () {return std::__rv<move_only>(*this);}
     move_only(std::__rv<move_only>) {}
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
     move_only() {}
 };

Modified: libcxx/trunk/test/utilities/utility/pairs/pairs.pair/U_V.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/pairs/pairs.pair/U_V.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/pairs/pairs.pair/U_V.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/pairs/pairs.pair/U_V.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,12 +19,12 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<std::unique_ptr<int>, short*> P;
         P p(std::unique_ptr<int>(new int(3)), nullptr);
         assert(*p.first == 3);
         assert(p.second == nullptr);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair.pass.cpp Sat Sep  4 18:28:19 2010
@@ -19,7 +19,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<std::unique_ptr<int>, short> P;
         P p1(std::unique_ptr<int>(new int(3)), 4);
@@ -28,5 +28,5 @@
         assert(*p2.first == 3);
         assert(p2.second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/pairs/pairs.pair/assign_rv_pair_U_V.pass.cpp Sat Sep  4 18:28:19 2010
@@ -29,7 +29,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<std::unique_ptr<Derived>, short> P1;
         typedef std::pair<std::unique_ptr<Base>, long> P2;
@@ -39,5 +39,5 @@
         assert(p2.first == nullptr);
         assert(p2.second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/pairs/pairs.pair/make_pair.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/pairs/pairs.pair/make_pair.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/pairs/pairs.pair/make_pair.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/pairs/pairs.pair/make_pair.pass.cpp Sat Sep  4 18:28:19 2010
@@ -23,7 +23,7 @@
         assert(p1.first == 3);
         assert(p1.second == 4);
     }
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<std::unique_ptr<int>, short> P1;
         P1 p1 = std::make_pair(std::unique_ptr<int>(new int(3)), 4);
@@ -36,5 +36,5 @@
         assert(p1.first == nullptr);
         assert(p1.second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/pairs/pairs.pair/rv_pair_U_V.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/pairs/pairs.pair/rv_pair_U_V.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/pairs/pairs.pair/rv_pair_U_V.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/pairs/pairs.pair/rv_pair_U_V.pass.cpp Sat Sep  4 18:28:19 2010
@@ -29,7 +29,7 @@
 
 int main()
 {
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     {
         typedef std::pair<std::unique_ptr<Derived>, short> P1;
         typedef std::pair<std::unique_ptr<Base>, long> P2;
@@ -38,5 +38,5 @@
         assert(p2.first == nullptr);
         assert(p2.second == 4);
     }
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 }

Modified: libcxx/trunk/test/utilities/utility/utility.swap/swap.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/utility.swap/swap.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/utility.swap/swap.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/utility.swap/swap.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <utility>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -30,7 +30,7 @@
     assert(j == 1);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void
 test1()
@@ -42,12 +42,12 @@
     assert(*j == 1);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
     test();
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test1();
 #endif
 }

Modified: libcxx/trunk/test/utilities/utility/utility.swap/swap_array.pass.cpp
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/test/utilities/utility/utility.swap/swap_array.pass.cpp?rev=113086&r1=113085&r2=113086&view=diff
==============================================================================
--- libcxx/trunk/test/utilities/utility/utility.swap/swap_array.pass.cpp (original)
+++ libcxx/trunk/test/utilities/utility/utility.swap/swap_array.pass.cpp Sat Sep  4 18:28:19 2010
@@ -16,7 +16,7 @@
 
 #include <utility>
 #include <cassert>
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 #include <memory>
 #endif
 
@@ -34,7 +34,7 @@
     assert(j[2] == 3);
 }
 
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 void
 test1()
@@ -54,12 +54,12 @@
     assert(*j[2] == 3);
 }
 
-#endif  // _LIBCPP_MOVE
+#endif  // _LIBCPP_HAS_NO_RVALUE_REFERENCES
 
 int main()
 {
     test();
-#ifdef _LIBCPP_MOVE
+#ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES
     test1();
 #endif
 }





More information about the cfe-commits mailing list