diff options
author | Eric Fiselier <eric@efcs.ca> | 2016-12-08 23:57:08 +0000 |
---|---|---|
committer | Eric Fiselier <eric@efcs.ca> | 2016-12-08 23:57:08 +0000 |
commit | f2f3637d4065238e5b93ba203635808563dfbc44 (patch) | |
tree | 7a49a295ca8d956850d2531560e92d46bb432ef6 /.clang-format | |
parent | 3e541a6172e39ead4fad233ec02c1898c006a0ac (diff) |
Fix PR27374 - Remove the implicit reduced-arity-extension in tuple.
This patch removes libc++'s tuple extension which allowed it to be
constructed from fewer initializers than elements; with the remaining
elements being default constructed. However the implicit version of
this extension breaks conforming code. For example:
int fun(std::string);
int fun(std::tuple<std::string, int>);
int x = fun("hello"); // ambigious
Because existing code may already depend on this extension it can be re-enabled
by defining _LIBCPP_ENABLE_TUPLE_IMPLICIT_REDUCED_ARITY_EXTENSION.
Note that the explicit version of this extension is still supported,
although it's somewhat less useful than the implicit one.
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@289158 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to '.clang-format')
0 files changed, 0 insertions, 0 deletions