xref: /llvm-project/clang/test/CXX/temp/temp.param/p11.cpp (revision 8fbe78f6fc7b41d1a4228c126fcb522131150518)
1*8fbe78f6SDaniel Dunbar // RUN: %clang_cc1 -fsyntax-only -verify %s
2a5d5c749SDouglas Gregor template<typename> struct Y1;
3a5d5c749SDouglas Gregor template<typename, int> struct Y2;
4a5d5c749SDouglas Gregor 
5a5d5c749SDouglas Gregor template<class T1 = int, // expected-note{{previous default template argument defined here}}
6a5d5c749SDouglas Gregor          class T2>  // expected-error{{template parameter missing a default argument}}
7a5d5c749SDouglas Gregor   class B1;
8a5d5c749SDouglas Gregor 
9a5d5c749SDouglas Gregor template<template<class> class = Y1, // expected-note{{previous default template argument defined here}}
10a5d5c749SDouglas Gregor          template<class> class> // expected-error{{template parameter missing a default argument}}
11a5d5c749SDouglas Gregor   class B1t;
12a5d5c749SDouglas Gregor 
13a5d5c749SDouglas Gregor template<int N = 5,  // expected-note{{previous default template argument defined here}}
14a5d5c749SDouglas Gregor          int M>  // expected-error{{template parameter missing a default argument}}
15a5d5c749SDouglas Gregor   class B1n;
16