Skip to content

Commit ec19f91

Browse files
authored
Update gcc and clang tests (#941)
1 parent 18284b3 commit ec19f91

File tree

6 files changed

+67
-60
lines changed

6 files changed

+67
-60
lines changed

regression-tests/test-results/clang-12/mixed-bugfix-for-ufcs-non-local.cpp.output

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
mixed-bugfix-for-ufcs-non-local.cpp2:13:12: error: a lambda expression cannot appear in this context
2-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> bool inline constexpr v0 = false;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
2+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_1> bool inline constexpr v0 = false;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
33
^
44
../../../include/cpp2util.h:885:59: note: expanded from macro 'CPP2_UFCS_NONLOCAL'
55
#define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,(),,__VA_ARGS__)
@@ -17,7 +17,7 @@ t<CPP2_UFCS_NONLOCAL(f)(o)> inline constexpr v1 = t<true>();// Fails on Clang 12
1717
#define CPP2_UFCS_(LAMBDADEFCAPT,QUALID,TEMPKW,...) \
1818
^
1919
mixed-bugfix-for-ufcs-non-local.cpp2:21:12: error: a lambda expression cannot appear in this context
20-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> auto g() -> void;
20+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_2> auto g() -> void;
2121
^
2222
../../../include/cpp2util.h:885:59: note: expanded from macro 'CPP2_UFCS_NONLOCAL'
2323
#define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,(),,__VA_ARGS__)
@@ -44,7 +44,7 @@ mixed-bugfix-for-ufcs-non-local.cpp2:27:29: error: a lambda expression cannot ap
4444
#define CPP2_UFCS_(LAMBDADEFCAPT,QUALID,TEMPKW,...) \
4545
^
4646
mixed-bugfix-for-ufcs-non-local.cpp2:31:12: error: a lambda expression cannot appear in this context
47-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> using a = bool;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
47+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_3> using a = bool;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
4848
^
4949
../../../include/cpp2util.h:885:59: note: expanded from macro 'CPP2_UFCS_NONLOCAL'
5050
#define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,(),,__VA_ARGS__)
@@ -53,7 +53,7 @@ template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> using a = bool;// Fails on GCC ([GCC1097
5353
#define CPP2_UFCS_(LAMBDADEFCAPT,QUALID,TEMPKW,...) \
5454
^
5555
mixed-bugfix-for-ufcs-non-local.cpp2:33:12: error: a lambda expression cannot appear in this context
56-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> auto inline constexpr b = false;// Fails on GCC ([GCC109781][]).
56+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_4> auto inline constexpr b = false;// Fails on GCC ([GCC109781][]).
5757
^
5858
../../../include/cpp2util.h:885:59: note: expanded from macro 'CPP2_UFCS_NONLOCAL'
5959
#define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,(),,__VA_ARGS__)
@@ -80,7 +80,7 @@ auto inline constexpr d = t<CPP2_UFCS_NONLOCAL(f)(o)>();// Fails on Clang 12 (la
8080
#define CPP2_UFCS_(LAMBDADEFCAPT,QUALID,TEMPKW,...) \
8181
^
8282
mixed-bugfix-for-ufcs-non-local.cpp2:21:12: error: a lambda expression cannot appear in this context
83-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> _> auto g() -> void{}// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
83+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_2> auto g() -> void{}// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
8484
^
8585
../../../include/cpp2util.h:885:59: note: expanded from macro 'CPP2_UFCS_NONLOCAL'
8686
#define CPP2_UFCS_NONLOCAL(...) CPP2_UFCS_(,(),,__VA_ARGS__)

regression-tests/test-results/clang-12/pure2-variadics.cpp.execution

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ plu
33
abr
44
3.14word-1500
55
first all() returned false
6-
second all() returned true
6+
second all() returned true
7+
sum of (1, 2, 3, 100) is: 106

regression-tests/test-results/gcc-10/pure2-variadics.cpp.execution

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ abr
44
3.14word-1500
55
first all() returned false
66
second all() returned true
7-
sum of (1, 2, 3, 100) is: 106
7+
sum of (1, 2, 3, 100) is: 106

regression-tests/test-results/mixed-bugfix-for-ufcs-non-local.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,15 +34,15 @@ namespace ns {
3434

3535
// Variables.
3636

37-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_13_6> bool inline constexpr v0 = false;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
37+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_1> bool inline constexpr v0 = false;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
3838

3939
t<CPP2_UFCS_NONLOCAL(f)(o)> inline constexpr v1 = t<true>();// Fails on Clang 12 (lambda in unevaluated context).
4040

4141
bool inline constexpr v2 = CPP2_UFCS_NONLOCAL(f)(o);
4242

4343
// Functions.
4444

45-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_21_5> auto g() -> void;
45+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_2> auto g() -> void;
4646

4747
auto g([[maybe_unused]] cpp2::in<t<CPP2_UFCS_NONLOCAL(f)(o)>> unnamed_param_1) -> void;
4848

@@ -52,9 +52,9 @@ auto g() -> void;
5252

5353
// Aliases.
5454

55-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_31_5> using a = bool;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
55+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_3> using a = bool;// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
5656

57-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_33_5> auto inline constexpr b = false;// Fails on GCC ([GCC109781][]).
57+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_4> auto inline constexpr b = false;// Fails on GCC ([GCC109781][]).
5858

5959
using c = t<CPP2_UFCS_NONLOCAL(f)(o)>;// Fails on Clang 12 (lambda in unevaluated context) and Clang 12 (a lambda expression cannot appear in this context)
6060

@@ -81,7 +81,7 @@ auto main() -> int;
8181
namespace ns {
8282

8383
#line 21 "mixed-bugfix-for-ufcs-non-local.cpp2"
84-
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_21_5> auto g() -> void{}// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
84+
template<t<CPP2_UFCS_NONLOCAL(f)(o)> UnnamedTypeParam1_2> auto g() -> void{}// Fails on GCC ([GCC109781][]) and Clang 12 (a lambda expression cannot appear in this context)
8585

8686
#line 23 "mixed-bugfix-for-ufcs-non-local.cpp2"
8787
auto g([[maybe_unused]] cpp2::in<t<CPP2_UFCS_NONLOCAL(f)(o)>> unnamed_param_1) -> void{}// Fails on Clang 12 (lambda in unevaluated context).

regression-tests/test-results/pure2-bugfix-for-ufcs-arguments.cpp

Lines changed: 40 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -35,38 +35,38 @@ class B;
3535
class t {
3636
public: [[nodiscard]] auto f() & -> cpp2::i32;
3737
public: [[nodiscard]] auto f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32;
38-
public: template<typename UnnamedTypeParam1_10_7> [[nodiscard]] auto f() & -> cpp2::i32;
39-
public: template<typename UnnamedTypeParam1_11_7> [[nodiscard]] auto f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32;
40-
public: template<typename UnnamedTypeParam1_12_7, typename U> [[nodiscard]] auto f([[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) & -> cpp2::i32;
38+
public: template<typename UnnamedTypeParam1_1> [[nodiscard]] auto f() & -> cpp2::i32;
39+
public: template<typename UnnamedTypeParam1_2> [[nodiscard]] auto f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32;
40+
public: template<typename UnnamedTypeParam1_3, typename U> [[nodiscard]] auto f([[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) & -> cpp2::i32;
4141
};
4242

4343
[[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32;
4444
[[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32;
45-
template<typename UnnamedTypeParam1_17_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32;
46-
template<typename UnnamedTypeParam1_18_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32;
47-
template<typename UnnamedTypeParam1_19_5, typename U> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) -> cpp2::i32;
45+
template<typename UnnamedTypeParam1_4> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32;
46+
template<typename UnnamedTypeParam1_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32;
47+
template<typename UnnamedTypeParam1_6, typename U> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) -> cpp2::i32;
4848

4949
extern t m;
5050
extern t const n;
51-
template<typename UnnamedTypeParam1_23_5, typename U> auto inline constexpr a = n;
52-
53-
extern cpp2::i32 auto_1;
54-
extern cpp2::i32 auto_2;
55-
extern cpp2::i32 auto_3;
56-
extern cpp2::i32 auto_4;
57-
extern cpp2::i32 auto_5;
58-
extern cpp2::i32 auto_6;
59-
extern cpp2::i32 auto_7;
51+
template<typename UnnamedTypeParam1_7, typename U> auto inline constexpr a = n;
52+
6053
extern cpp2::i32 auto_8;
6154
extern cpp2::i32 auto_9;
6255
extern cpp2::i32 auto_10;
6356
extern cpp2::i32 auto_11;
57+
extern cpp2::i32 auto_12;
58+
extern cpp2::i32 auto_13;
59+
extern cpp2::i32 auto_14;
60+
extern cpp2::i32 auto_15;
61+
extern cpp2::i32 auto_16;
62+
extern cpp2::i32 auto_17;
63+
extern cpp2::i32 auto_18;
6464

6565
auto main() -> int;
6666

6767
#line 55 "pure2-bugfix-for-ufcs-arguments.cpp2"
6868
// _: i32 = 0.std::min<int>(0);
69-
extern cpp2::i32 auto_12;
69+
extern cpp2::i32 auto_19;
7070

7171
namespace ns {
7272
template<int T, int U> class t {
@@ -98,33 +98,39 @@ class B {
9898
[[nodiscard]] auto t::f() & -> cpp2::i32 { return print_res(0); }
9999
#line 9 "pure2-bugfix-for-ufcs-arguments.cpp2"
100100
[[nodiscard]] auto t::f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32 { return print_res(1); }
101-
template<typename UnnamedTypeParam1_10_7> [[nodiscard]] auto t::f() & -> cpp2::i32 { return print_res(2); }
102-
template<typename UnnamedTypeParam1_11_7> [[nodiscard]] auto t::f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32 { return print_res(3); }
103-
template<typename UnnamedTypeParam1_12_7, typename U> [[nodiscard]] auto t::f([[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) & -> cpp2::i32 { return print_res(4); }
101+
#line 10 "pure2-bugfix-for-ufcs-arguments.cpp2"
102+
template<typename UnnamedTypeParam1_1> [[nodiscard]] auto t::f() & -> cpp2::i32 { return print_res(2); }
103+
#line 11 "pure2-bugfix-for-ufcs-arguments.cpp2"
104+
template<typename UnnamedTypeParam1_2> [[nodiscard]] auto t::f([[maybe_unused]] auto const& unnamed_param_2) & -> cpp2::i32 { return print_res(3); }
105+
#line 12 "pure2-bugfix-for-ufcs-arguments.cpp2"
106+
template<typename UnnamedTypeParam1_3, typename U> [[nodiscard]] auto t::f([[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) & -> cpp2::i32 { return print_res(4); }
104107

105108
#line 15 "pure2-bugfix-for-ufcs-arguments.cpp2"
106109
[[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32 { return print_res(5); }
107110
#line 16 "pure2-bugfix-for-ufcs-arguments.cpp2"
108111
[[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32 { return print_res(6); }
109-
template<typename UnnamedTypeParam1_17_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32 { return print_res(7); }
110-
template<typename UnnamedTypeParam1_18_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32 { return print_res(8); }
111-
template<typename UnnamedTypeParam1_19_5, typename U> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) -> cpp2::i32 { return print_res(9); }
112+
#line 17 "pure2-bugfix-for-ufcs-arguments.cpp2"
113+
template<typename UnnamedTypeParam1_4> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1) -> cpp2::i32 { return print_res(7); }
114+
#line 18 "pure2-bugfix-for-ufcs-arguments.cpp2"
115+
template<typename UnnamedTypeParam1_5> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2) -> cpp2::i32 { return print_res(8); }
116+
#line 19 "pure2-bugfix-for-ufcs-arguments.cpp2"
117+
template<typename UnnamedTypeParam1_6, typename U> [[nodiscard]] auto f([[maybe_unused]] cpp2::in<t> unnamed_param_1, [[maybe_unused]] auto const& unnamed_param_2, [[maybe_unused]] auto const& unnamed_param_3) -> cpp2::i32 { return print_res(9); }
112118

113119
t m {};
114120
t const n {};
115121

116122
#line 25 "pure2-bugfix-for-ufcs-arguments.cpp2"
117-
cpp2::i32 auto_1 {CPP2_UFCS_NONLOCAL(f)(m)};
118-
cpp2::i32 auto_2 {CPP2_UFCS_NONLOCAL(f)(m, 0)};
119-
cpp2::i32 auto_3 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(m)};
120-
cpp2::i32 auto_4 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(m, 0)};
121-
cpp2::i32 auto_5 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(m, 0, 0)};
122-
cpp2::i32 auto_6 {CPP2_UFCS_NONLOCAL(f)(n)};
123-
cpp2::i32 auto_7 {CPP2_UFCS_NONLOCAL(f)(n, 0)};
124-
cpp2::i32 auto_8 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(n)};
125-
cpp2::i32 auto_9 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(n, 0)};
126-
cpp2::i32 auto_10 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(n, 0, 0)};
127-
cpp2::i32 auto_11 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(a<t,t>, 0, 0)};
123+
cpp2::i32 auto_8 {CPP2_UFCS_NONLOCAL(f)(m)};
124+
cpp2::i32 auto_9 {CPP2_UFCS_NONLOCAL(f)(m, 0)};
125+
cpp2::i32 auto_10 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(m)};
126+
cpp2::i32 auto_11 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(m, 0)};
127+
cpp2::i32 auto_12 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(m, 0, 0)};
128+
cpp2::i32 auto_13 {CPP2_UFCS_NONLOCAL(f)(n)};
129+
cpp2::i32 auto_14 {CPP2_UFCS_NONLOCAL(f)(n, 0)};
130+
cpp2::i32 auto_15 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(n)};
131+
cpp2::i32 auto_16 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t>)(n, 0)};
132+
cpp2::i32 auto_17 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(n, 0, 0)};
133+
cpp2::i32 auto_18 {CPP2_UFCS_TEMPLATE_NONLOCAL(f<t,t>)(a<t,t>, 0, 0)};
128134

129135
#line 37 "pure2-bugfix-for-ufcs-arguments.cpp2"
130136
auto main() -> int{
@@ -146,7 +152,7 @@ auto main() -> int{
146152
}
147153

148154
#line 56 "pure2-bugfix-for-ufcs-arguments.cpp2"
149-
cpp2::i32 auto_12 {CPP2_UFCS_QUALIFIED_TEMPLATE_NONLOCAL((ns::t<0,0>::),f<0>)(0)};
155+
cpp2::i32 auto_19 {CPP2_UFCS_QUALIFIED_TEMPLATE_NONLOCAL((ns::t<0,0>::),f<0>)(0)};
150156

151157
namespace ns {
152158

regression-tests/test-results/pure2-variadics.cpp

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,15 @@ template<typename ...Ts> class x;
1616
template<int ...Ts> class y;
1717

1818
#line 16 "pure2-variadics.cpp2"
19-
template<typename ...UnnamedTypeParam1_16_14> class t0;
19+
template<typename ...UnnamedTypeParam1_1> class t0;
2020

2121

2222
#line 21 "pure2-variadics.cpp2"
2323
template<auto ...T> class t1;
2424

2525

2626
#line 26 "pure2-variadics.cpp2"
27-
template<auto ...UnnamedTypeParam1_26_14> class t2;
27+
template<auto ...UnnamedTypeParam1_2> class t2;
2828

2929

3030
//=== Cpp2 type definitions and function declarations ===========================
@@ -56,18 +56,18 @@ template<int ...Ts> class y {
5656
};
5757

5858
// Discard type name pack expansion
59-
template<typename ...UnnamedTypeParam1_16_14> class t0 {
60-
public: template<int UnnamedTypeParam1_17_7> [[nodiscard]] static auto f() -> cpp2::i32;
59+
template<typename ...UnnamedTypeParam1_1> class t0 {
60+
public: template<int UnnamedTypeParam1_3> [[nodiscard]] static auto f() -> cpp2::i32;
6161
};
6262

6363
// Discard template type pack expansion
6464
template<auto ...T> class t1 {
65-
public: template<int UnnamedTypeParam1_22_7> [[nodiscard]] static auto f() -> cpp2::i32;
65+
public: template<int UnnamedTypeParam1_4> [[nodiscard]] static auto f() -> cpp2::i32;
6666
};
6767

6868
// Discard typename and template type pack expansion
69-
template<auto ...UnnamedTypeParam1_26_14> class t2 {
70-
public: template<int UnnamedTypeParam1_27_7> [[nodiscard]] static auto f() -> cpp2::i32;
69+
template<auto ...UnnamedTypeParam1_2> class t2 {
70+
public: template<int UnnamedTypeParam1_5> [[nodiscard]] static auto f() -> cpp2::i32;
7171
};
7272

7373
template<typename ...Args> auto left_fold_print(std::ostream& out, Args const& ...args) -> void;
@@ -93,32 +93,32 @@ auto main() -> int;
9393
template <int ...Ts> [[nodiscard]] auto y<Ts...>::func() -> auto { return (0 + ... + Ts); }
9494

9595
#line 17 "pure2-variadics.cpp2"
96-
template <typename ...UnnamedTypeParam1_16_14> template<int UnnamedTypeParam1_17_7> [[nodiscard]] auto t0<UnnamedTypeParam1_16_14...>::f() -> cpp2::i32 { return 0; }
96+
template <typename ...UnnamedTypeParam1_1> template<int UnnamedTypeParam1_3> [[nodiscard]] auto t0<UnnamedTypeParam1_1...>::f() -> cpp2::i32 { return 0; }
9797

9898
#line 22 "pure2-variadics.cpp2"
99-
template <auto ...T> template<int UnnamedTypeParam1_22_7> [[nodiscard]] auto t1<T...>::f() -> cpp2::i32 { return 0; }
99+
template <auto ...T> template<int UnnamedTypeParam1_4> [[nodiscard]] auto t1<T...>::f() -> cpp2::i32 { return 0; }
100100

101101
#line 27 "pure2-variadics.cpp2"
102-
template <auto ...UnnamedTypeParam1_26_14> template<int UnnamedTypeParam1_27_7> [[nodiscard]] auto t2<UnnamedTypeParam1_26_14...>::f() -> cpp2::i32 { return 0; }
102+
template <auto ...UnnamedTypeParam1_2> template<int UnnamedTypeParam1_5> [[nodiscard]] auto t2<UnnamedTypeParam1_2...>::f() -> cpp2::i32 { return 0; }
103103

104104
#line 30 "pure2-variadics.cpp2"
105105
template<typename ...Args> auto left_fold_print(std::ostream& out, Args const& ...args) -> void{
106106
// Binary left fold expression
107107
(out << ... << args);
108108
}
109109

110-
#line 14 "pure2-variadics.cpp2"
110+
#line 35 "pure2-variadics.cpp2"
111111
template<typename ...Args> [[nodiscard]] auto all(Args const& ...args) -> bool {
112112
// Unary left fold expression
113113
return (... && args); }
114114

115-
#line 18 "pure2-variadics.cpp2"
115+
#line 39 "pure2-variadics.cpp2"
116116
template <typename ...Args> [[nodiscard]] auto make_string(Args&& ...args) -> auto { return std::string{CPP2_FORWARD(args)...}; }
117117

118-
#line 20 "pure2-variadics.cpp2"
118+
#line 41 "pure2-variadics.cpp2"
119119
template <typename T, typename ...Args> [[nodiscard]] auto make(Args&& ...args) -> auto { return T{CPP2_FORWARD(args)...}; }
120120

121-
#line 22 "pure2-variadics.cpp2"
121+
#line 43 "pure2-variadics.cpp2"
122122
auto main() -> int
123123
{
124124
x<int,long,std::string> auto_1 {};

0 commit comments

Comments
 (0)