Make cv_status a class enum. Fixes PR18314. Thanks to Andersca for the report and the patch.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@197921 91177308-0d34-0410-b5e6-96231b3b80d8
Update the copyright credits -- Happy new year 2014!

FIXME: Dragonegg may be updated at non-trivial changes.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198274 91177308-0d34-0410-b5e6-96231b3b80d8
Patch by Howard. First part of fix for PR18218; add type traits needed to do the right thing. Fix the problems in PR18218 for isnan and pow - they also need to be applied to the other functions in <cmath>. Also, a drive-by fix for the test - now actually calls test_abs()

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198431 91177308-0d34-0410-b5e6-96231b3b80d8
Rename ___make_pair_return to __make_pair_return_impl; ___make_tuple_return to __make_tuple_return_impl; and ____iterator_traits to __iterator_traits_impl. Part of a campaign to remove > 2 underscores from libc++. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198457 91177308-0d34-0410-b5e6-96231b3b80d8
Implement the functions: clz, clzl, clzll, ctz, ctzl, and ctzll
for libcxx when compiled with Visual C++ on Win32 and Win64.

clang and gcc (MinGW) compilers provide these implementations themselves.



git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198481 91177308-0d34-0410-b5e6-96231b3b80d8
80 cols fixes.



git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198482 91177308-0d34-0410-b5e6-96231b3b80d8
Switch to using C++ style casts.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198505 91177308-0d34-0410-b5e6-96231b3b80d8
Rename several internal templates to get rid of ___ (triple underscores) or worse, four. No functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198608 91177308-0d34-0410-b5e6-96231b3b80d8
Removed extra trailing underscore in #ifdef (__GNUC___ --> __GNUC__ )

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198618 91177308-0d34-0410-b5e6-96231b3b80d8
Back out the <type_traits> changes from r198431; they were breaking when building with glibc. Need to find a better solution for PR18218.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198623 91177308-0d34-0410-b5e6-96231b3b80d8
Replace casts of __impl_ with the correct reinterpret_cast of the
address. Restores the assembly of before r198504.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198698 91177308-0d34-0410-b5e6-96231b3b80d8
Fix PR18404 - 'Bug in regex_token_iterator::operator++(int) implementation'. Enhance the tests for regex_token_iterator and regex_iterator.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@198878 91177308-0d34-0410-b5e6-96231b3b80d8
Fix a bug in regex_token_iterator's copy constructor. Caught by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199122 91177308-0d34-0410-b5e6-96231b3b80d8
Rename libc++ internal templates __is_void, __is_integral, __is_floating_point, __is_pointer, __is_function_imp, __is_function, __is_member_function_pointer, __is_member_pointer, __is_signed_impl, __is_signed, __is_unsigned_impl, __is_unsigned to __libcpp_is_XXX, because some compilers have decided that __is_XXX are keywords. No functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199184 91177308-0d34-0410-b5e6-96231b3b80d8
Update lib/buildit and test/testit to both pay attention to an env flag CXX_LANG, which people can set to 'c++03', 'c++11' or 'c++1y' to build/test using that language variant. If you don't set this env variable, you get c++11, just like today. Drive-by fix; remove duplicate -nostdinc++.


git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199222 91177308-0d34-0410-b5e6-96231b3b80d8
Whoops! Set the default in the last commit to c++1y instead of c++11

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199224 91177308-0d34-0410-b5e6-96231b3b80d8
Apply patch for Albert Wong: 'Modify testit to allow filtering tests by prefixes'.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199318 91177308-0d34-0410-b5e6-96231b3b80d8
Add license headers to a bunch of libc++ files that were missing them. No functionality change. Fixes 18291. Thanks to Nico for the bug report and the patch.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199400 91177308-0d34-0410-b5e6-96231b3b80d8
Build fix for gcc builtin

The __sync_add_and_fetch() builtin parameter is volatile but clang has
'different' type checking and ends up accepting this code.

Undo the C++ cast from r198505 to get libc++/LLVM building with g++ while this
is investigated.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199494 91177308-0d34-0410-b5e6-96231b3b80d8
Adjust build fix from r199494 to use C++ casts

Change suggested by Joerg Sonnenberger!

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@199500 91177308-0d34-0410-b5e6-96231b3b80d8