// RUN: %clang_cc1 -fsyntax-only -verify %s 
template<typename> struct Y1;
template<typename, int> struct Y2;

template<class T1 = int, // expected-note{{previous default template argument defined here}}
         class T2>  // expected-error{{template parameter missing a default argument}}
  class B1;

template<template<class> class = Y1, // expected-note{{previous default template argument defined here}}
         template<class> class> // expected-error{{template parameter missing a default argument}}
  class B1t;

template<int N = 5,  // expected-note{{previous default template argument defined here}}
         int M>  // expected-error{{template parameter missing a default argument}}
  class B1n;