Merging r-196058:
------------------------------------------------------------------------
r196058 | marshall | 2013-12-01 19:24:33 -0800 (Sun, 01 Dec 2013) | 1 line

Fix for PRPR17934; based on a fix suggested by Peter Sommerlad
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/branches/release_34@197013 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r196058:
------------------------------------------------------------------------
r196058 | marshall | 2013-12-01 19:24:33 -0800 (Sun, 01 Dec 2013) | 1 line

Fix for PRPR17934; based on a fix suggested by Peter Sommerlad
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/branches/release_34@197133 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197061:
------------------------------------------------------------------------
r197061 | marshall | 2013-12-11 11:32:32 -0800 (Wed, 11 Dec 2013) | 1 line

Move std::begin(array) and std::end(array) out from under an #ifdef that was preventing people from building libc++ using gcc. This corrects a mistake that I introduced in r196058
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/branches/release_34@197134 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r197314:
------------------------------------------------------------------------
r197314 | logan | 2013-12-13 22:45:09 -0800 (Fri, 13 Dec 2013) | 9 lines

Fix GCC unknown pragma warning in libc++.

We should check defined(__clang__) before the usage of the
clang diagnostic pragmas.

The [-Wswitch] warning in src/future.cpp should be ignored.
As the result, the equivalent GCC pragma is added.


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/branches/release_34@198100 91177308-0d34-0410-b5e6-96231b3b80d8
Merge branch 'release_34' into powerpc-darwin8-rel-3.4
ignore test-generated compilation files
ignore some more files
allow building against darwin8's libsupc++.a instead of libc++abi
provide definitions missing in supc++ (may be incorrect)

Conflicts:
	.gitignore
proper implementation of get_terminate/get_unexpected, based on Apple's libstdc++
new handler for darwin8
relax static_asserts for container::size_type == std::size_t by comparing size
There were two identical files named 'min_allocator.h'. Move one of them to /support and delete the other. Then adjust all the tests that used them to include the moved one. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@195785 91177308-0d34-0410-b5e6-96231b3b80d8
restore original size_type test, but inside preprocessor conditional
disable 64b atomic tests until implemented, perhaps using mutexes on PPC32
adjust tests to use same preprocessor conditionals as in <limits>
another size_type vs. size_t test fix
implement atomic<> using mutex/lock_guard for 64b ops on 32b PPC
not pretty, not fast, but passes atomic tests
alignment of bool on powerpc32-darwin is 4
ignore temp files during tests