[modules] Fix crash with multiple levels of default template argument merging.

llvm-svn: 239575
diff --git a/clang/test/Modules/Inputs/submodules-merge-defs/defs.h b/clang/test/Modules/Inputs/submodules-merge-defs/defs.h
index 1ab1d1a..4425946 100644
--- a/clang/test/Modules/Inputs/submodules-merge-defs/defs.h
+++ b/clang/test/Modules/Inputs/submodules-merge-defs/defs.h
@@ -46,6 +46,7 @@
 
 template<typename T = int, int N = 3, template<typename> class K = F> int H(int a = 1);
 template<typename T = int, int N = 3, template<typename> class K = F> using I = decltype(H<T, N, K>());
+template<typename T = int, int N = 3, template<typename> class K = F> struct J {};
 
 namespace NS {
   struct A {};