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. |
6 | namespace 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 ()' |
14 | void f() { |
15 | // CHECK: VarDecl{{.*}}tmp 'bar<int>' |
16 | // CHECK: CXXDefaultArgExpr{{.*}}'int' |
17 | bar<int> tmp; |
18 | } |
19 | } |
20 | |