of references to function template parameters in noexcept clauses when
the instantiation is forced from a point during parsing when a block
is in scope.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@153152
91177308-0d34-0410-b5e6-
96231b3b80d8
-// RUN: %clang_cc1 -fsyntax-only -verify %s -fblocks
+// RUN: %clang_cc1 -fsyntax-only -verify %s -fblocks -std=c++11
extern "C" int exit(int);
P = (int(^)(int))((void*)1);
}
}
+
+namespace rdar11055105 {
+ struct A {
+ void foo();
+ };
+
+ template <class T> void foo(T &x) noexcept(noexcept(x.foo()));
+
+ void (^block)() = ^{
+ A a;
+ foo(a);
+ };
+}