1 // RUN: %clang_cc1 -verify -Wno-return-type -Wno-main -std=c++2a -emit-llvm -triple %itanium_abi_triple -o - %s | FileCheck %s
2 // expected-no-diagnostics
5 template <bool> struct S
{};
6 template <typename
> concept C
= true;
7 template <typename T
= int> S
<C
<T
>> f0() { return S
<C
<T
>>{}; }
8 template S
<C
<int>> f0
<>();
9 // CHECK: @_ZN5test12f0IiEENS_1SIL_ZNS_1CIT_EEEEEv(
12 template <bool> struct S
{};
13 template <typename
> concept C
= true;
14 template <typename T
= int> S
<C
<T
>> f0() { return S
<C
<T
>>{}; }
15 template S
<C
<int>> f0
<>();
16 // CHECK: @_Z2f0IiE1SIL_Z1CIT_EEEv(