- Nov 18, 2013
-
-
Yaron Keren authored
llvm-svn: 195045
-
Yaron Keren authored
functions in src/support/win32/locale_win32.cpp and locale_win32.h, calling upon vsnprintf for which there is a MingW correct alternative. Note! __USE_MINGW_ANSI_STDIO is not modified in this patch. In order to use the __mingw version it must be defined before including the MingW headers. llvm-svn: 195044
-
Bill Wendling authored
llvm-svn: 194993
-
- Nov 16, 2013
-
-
Yaron Keren authored
llvm-svn: 194891
-
- Nov 15, 2013
-
-
Yaron Keren authored
llvm-svn: 194870
-
Marshall Clow authored
Move <optional> into include/experimental, and into the std::experimental namespace, since it's not part of C++14, but of an upcoming TS llvm-svn: 194867
-
Justin Bogner authored
llvm-svn: 194838
-
Howard Hinnant authored
easier to use freshly-built clang with freshly-built libc++. Basically, this makes it possible to run clang with libc++ without having to install it, even if you don't have any version of libc++ installed in /usr/ llvm-svn: 194825
-
- Nov 14, 2013
-
-
Howard Hinnant authored
trivial in C++03, thus making it trivial in both C++03 and C++11. This patch allows one to opt-in/out of this decision with a macro. You can choose to have the pair copy constructor always be trivial, or always be non-trivial. The flag controlling this is now _LIBCPP_TRIVIAL_PAIR_COPY_CTOR. The client can define this flag to 1, and the pair copy constructor will be trivial (when possible of course), or to 0, and the pair copy constructor will be nontrivial. Default settings for this flag are set in <__config> (as usual). With this commit the default is _LIBCPP_TRIVIAL_PAIR_COPY_CTOR=1 for all platforms except __APPLE__, which defaults to _LIBCPP_TRIVIAL_PAIR_COPY_CTOR=0. llvm-svn: 194742
-
Marshall Clow authored
Fixed bug in quoted strings implementation. Added test to be sure. Thanks to Peter Sommerlad for the report (and suggested fix) llvm-svn: 194725
-
- Nov 13, 2013
-
-
Marshall Clow authored
Move <dynarray> into include/experimental, and into the std::experimental namespace, since it's not part of C++14, but of an upcoming TS llvm-svn: 194614
-
Howard Hinnant authored
pair, and a couple of pair-like implementation detail types. The C++98/03 and 11 standards all specify that the copy constructor of pair<int, int> is trivial. However as libc++ tracked the draft C++11 standard over the years, this copy constructor became non-trivial, and then just recently was corrected back to trivial for C++11. Unfortunately (for libc++1) the Itanium ABI specifies different calling conventions for trivial and non-trivial copy constructors. Therefore currently the C++03 libc++ copy constructor for pair<int, int> is ABI incompatible with the C++11 libc++ copy constructor for pair<int, int>. This is Bad(tm). This patch corrects the situation by making this copy constructor trivial in C++03 mode as well. Just in case it is needed for an incomplete C++11 compiler, libc++ retains the ability to support pair with rvalue references, but without defaulted special members. However the pair needs non-trivial special members to implement this special case, (as it did when clang was in this place a couple of years ago). During this work a bug was also found and fixed in is_trivially_constructible. And there is a minor drive-by fix in <__config> regarding __type_visibility__. A test is updated to ensure that the copy constructor of pair<int, int> is trivial in both C++03 and C++11. This test will necessarily fail for a compiler that implements rvalue references but not defaulted special members. llvm-svn: 194536
-
- Nov 12, 2013
-
-
Marshall Clow authored
llvm-svn: 194432
-
- Nov 07, 2013
-
-
Howard Hinnant authored
llvm-svn: 194207
-
Marshall Clow authored
More duplicate code removal in <locale>. Hoist common parsing code into two templates: num_get::__do_get_signed and num_get::__do_get_unsigned, and make the do_get routines call them. No functionality change. llvm-svn: 194185
-
- Nov 06, 2013
-
-
Howard Hinnant authored
Fix several tuple bugs that were exposed by clang's implementation of CWG 1402. This fixes http://llvm.org/bugs/show_bug.cgi?id=17798. llvm-svn: 194154
-
Marshall Clow authored
Fix an off-by-one error in basic_string::__grow_by, where it would incorrectly throw length_error (instead of bad_alloc) when attempting to resize the string to 'max_size()'. Add tests for resizing to max_size +/-1 llvm-svn: 194151
-
- Nov 05, 2013
-
-
Marshall Clow authored
llvm-svn: 194080
-
- Nov 03, 2013
-
-
Marshall Clow authored
llvm-svn: 193963
-
Marshall Clow authored
llvm-svn: 193962
-
Marshall Clow authored
llvm-svn: 193960
-
- Oct 31, 2013
-
-
Marshall Clow authored
LWG issue 2341; Make the two variants of basic_ostream::seekp and basic_istream::seekg behave consistently; update tests to make sure llvm-svn: 193814
-
Marshall Clow authored
llvm-svn: 193772
-
- Oct 23, 2013
-
-
Marshall Clow authored
llvm-svn: 193228
-
Marshall Clow authored
Mark seed_seq default constructor and size() as noexcept. This is implied, but not required by LWG issue 2180 llvm-svn: 193227
-
- Oct 21, 2013
-
-
Marshall Clow authored
Patch by GM: Turn off 'deprecated' warnings when building with MSVC, and add '-Werror=return-type' to catch funtions that aren't returning what they should. llvm-svn: 193088
-
Marshall Clow authored
Patch by GM: apparently '__value' (two underscores) is a special name in Visual Studio, so rename the private method in <regex> with that name. GM's patch used '___value' (three underscores), but I changed that to '__regex_traits_value' because I've been burned in the past by identifiers that appear identical but are not. llvm-svn: 193087
-
Marshall Clow authored
Patch from GM: locale.cpp; make implicit conversions to bool explicit, fix some 'unknown pragma' warnings when compiling under MSVC, and don't use the __sso_allocator under windows, b/c MSVC doesn't support aligned-by value parameters llvm-svn: 193086
-
Marshall Clow authored
llvm-svn: 193085
-
Marshall Clow authored
llvm-svn: 193084
-
Richard Smith authored
Avoid using the name 'bzero' for an enumerator in global scope. <strings.h> might declare this as a function. llvm-svn: 193066
-
- Oct 14, 2013
-
-
Howard Hinnant authored
http://lab.llvm.org:8013/builders/libcxx_clang-x86_64-darwin11-RA lit.py: <string>:230: note: inferred use_system_lib as: False lit.py: <string>:247: fatal: C++ ABI setting None unsupported for tests cxx_abi is geting set to None, and the lit script errors out shortly after that. This patch changes the default of cxx_abi from None to 'libcxxabi'. This is likely not the right way to fix this problem. However it gets the buildbot running again. Improvements to this fix are welcome. llvm-svn: 192609
-
- Oct 13, 2013
-
-
Marshall Clow authored
Patch from GM to make more implicit bools explicit since we can't stop MSVC warning about this in headers and to warn is the MSVC default. No functionality change. llvm-svn: 192548
-
Marshall Clow authored
llvm-svn: 192546
-
Marshall Clow authored
llvm-svn: 192545
-
Marshall Clow authored
llvm-svn: 192544
-
- Oct 12, 2013
-
-
Marshall Clow authored
llvm-svn: 192539
-
Marshall Clow authored
llvm-svn: 192538
-
- Oct 09, 2013
-
-
Marshall Clow authored
llvm-svn: 192325
-
- Oct 08, 2013
-
-
Marshall Clow authored
llvm-svn: 192142
-