Commit Graph

58 Commits

Author SHA1 Message Date
Eric Fiselier
b7fd0be370 Update all bug URL's to point to https://bugs.llvm.org/...
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@295434 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-17 08:37:03 +00:00
Eric Fiselier
0eaf2e8474 [libc++] Fix PR 31938 - std::basic_string constructors use non-deductible parameter types.
Summary:
This patch fixes http://llvm.org/PR31938. The description below is copy/pasted from the bug:

The standard says:

template<class charT, class traits = char_traits<charT>,
         class Allocator = allocator<charT>>
class basic_string {
  using value_type = typename traits::char_type;
  // ...
  basic_string(const charT* s, const Allocator& a = Allocator());
};

libc++ actually chooses to declare the constructor as

  basic_string(const value_type* s, const Allocator& a = Allocator());

The implicit deduction guides from class template argument deduction make what was previously an implementation detail visible:

std::basic_string s = "foo"; // error, can't deduce charT.

The constructor in question is in the libc++ DSO, but fortunately it looks like fixing this will not result in an ABI break.


@rsmith How does this look? I did more than just the constructors mentioned in the PR, but IDK how far to take it.


Reviewers: mclow.lists, rsmith

Reviewed By: rsmith

Subscribers: cfe-commits, rsmith

Differential Revision: https://reviews.llvm.org/D29863

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@295393 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-17 01:17:10 +00:00
Eric Fiselier
e1b6382ee3 Properly escape ShellTest subsitutions on Windows. Try 2
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294721 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-10 06:59:07 +00:00
Eric Fiselier
f3078f63a9 properly escape compiler path in .sh.cpp tests
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294718 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-10 06:38:02 +00:00
Saleem Abdulrasool
b9eccbec08 test: allow -target usage on Windows
When running the tests on Windows with a debug build, _DEBUG must be
added to the flags prior to the -target as the forced inclusion of a
header will prevent the compile test for the flag to fail.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294716 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-10 06:24:34 +00:00
Eric Fiselier
4fd0d50a96 Attempt to fix finding clang++ on Windows
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294699 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-10 03:20:02 +00:00
Eric Fiselier
7be9c9ae5c Add missing libc++ import
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294673 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-10 00:01:01 +00:00
Eric Fiselier
ed803866ea Move libcxx/test/libcxx python package into libcxx/utils/libcxx.
This patch merges the test python package with the newly
created package in utils.

git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294651 91177308-0d34-0410-b5e6-96231b3b80d8
2017-02-09 23:18:11 +00:00