summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2017-02-21 07:22:31 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2017-02-21 07:22:31 +0000
commit7fa88bb8449ae2f5708b04c063b2874230f05135 (patch)
tree83a011c7f1d2017916cac8dd9ec234eff010ed6d /clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
parentd88389aa7ec50d944c2002392db6b135a54a95c1 (diff)
downloadbcm5719-llvm-7fa88bb8449ae2f5708b04c063b2874230f05135.tar.gz
bcm5719-llvm-7fa88bb8449ae2f5708b04c063b2874230f05135.zip
When deducing an array bound from the length of an initializer list, don't
assume the bound has a non-dependent integral type. llvm-svn: 295698
Diffstat (limited to 'clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp')
-rw-r--r--clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp b/clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
index 4afbd2d7c16..8c96fb4fd0f 100644
--- a/clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
+++ b/clang/test/SemaCXX/cxx1z-class-template-argument-deduction.cpp
@@ -194,11 +194,9 @@ namespace transform_params {
A a(qn, qn); // expected-error {{no matching constructor for initialization of 'transform_params::A<int, 12, Q, &transform_params::n>'}}
static_assert(a.v == 12);
- // FIXME: This causes a crash right now (not class template deduction related).
-#if 0
- template<typename ...T> struct B {
- template<T ...V> B(T (&...p)[V]);
+ // FIXME: This should be accepted.
+ template<typename ...T> struct B { // expected-note {{candidate}}
+ template<T ...V> B(const T (&...p)[V]); // expected-note {{substitution failure}}
};
- B b({1, 2, 3}, {"foo", "bar"}, {'x', 'y', 'z', 'w'});
-#endif
+ B b({1, 2, 3}, {"foo", "bar"}, {'x', 'y', 'z', 'w'}); // expected-error {{no viable constructor or deduction guide}}
}
OpenPOWER on IntegriCloud