1// RUN: %clang_cc1 -ast-dump %s 2>&1 | FileCheck %s
2
3// This is a wacky test to ensure that we're actually instantiating
4// the default arguments of the constructor when the function type is
5// otherwise non-dependent.
6namespace PR6733 {
7  template <class T>
8  class bar {
9  public: enum { kSomeConst = 128 };
10    bar(int x = kSomeConst) {}
11  };
12
13  // CHECK: FunctionDecl{{.*}}f 'void (void)'
14  void f() {
15    // CHECK: VarDecl{{.*}}tmp 'bar<int>'
16    // CHECK: CXXDefaultArgExpr{{.*}}'int'
17    bar<int> tmp;
18  }
19}
20