1*7c1d9b15SFangrui Song // RUN: %clang_cc1 -ast-print %s | FileCheck %s 299d63ccfSPratyush Das 399d63ccfSPratyush Das template <typename T, typename U = double> class Foo; 499d63ccfSPratyush Das 599d63ccfSPratyush Das template <> class Foo<int, double> { int method1(); }; 699d63ccfSPratyush Das 799d63ccfSPratyush Das using int_type = int; 899d63ccfSPratyush Das method1()999d63ccfSPratyush Dasint Foo<int_type, double>::method1() { 1099d63ccfSPratyush Das // CHECK: int Foo<int_type, double>::method1() 1199d63ccfSPratyush Das return 10; 1299d63ccfSPratyush Das } 13c33ebad7SPratyush Das test_typedef()14c33ebad7SPratyush Dasint test_typedef() { 15c33ebad7SPratyush Das typedef Foo<int, double> TypedefArg; 16c33ebad7SPratyush Das // CHECK: typedef Foo<int, double> TypedefArg; 17c33ebad7SPratyush Das return 10; 18c33ebad7SPratyush Das } 19c33ebad7SPratyush Das test_typedef2()20c33ebad7SPratyush Dasint test_typedef2() { 21c33ebad7SPratyush Das typedef Foo<int> TypedefArg; 22c33ebad7SPratyush Das // CHECK: typedef Foo<int> TypedefArg; 23c33ebad7SPratyush Das return 10; 24c33ebad7SPratyush Das } 25