[PR15513/<rdar://problem/13409707>] Template arguments in diagnostics aren't always known at compile time.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177110 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/Misc/diag-template-diffing-cxx98.cpp b/test/Misc/diag-template-diffing-cxx98.cpp
index cd40ccc..f374fbc 100644
--- a/test/Misc/diag-template-diffing-cxx98.cpp
+++ b/test/Misc/diag-template-diffing-cxx98.cpp
@@ -4,4 +4,14 @@
template<typename T, char a> struct X {};
X<int, 1> x = X<long, 257>();
// CHECK: error: no viable conversion from 'X<long, [...]>' to 'X<int, [...]>'
-}
\ No newline at end of file
+}
+
+namespace PR15513 {
+ template <int x, int y = x+1>
+ class A {};
+
+ void foo(A<0> &M) {
+ // CHECK: no viable conversion from 'A<[...], (default) x + 1>' to 'A<[...], 0>'
+ A<0, 0> N = M;
+ }
+}