1// compile
2
3// Copyright 2022 The Go Authors. All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7package main
8
9type T1 struct {
10	A T5
11	B T2
12	C T7
13	D T4
14}
15
16type T2 struct {
17	T3
18	A float64
19	E float64
20	C float64
21}
22
23type T3 struct {
24	F float64
25	G float64
26	H float64
27	I float64
28	J float64
29	K float64
30	L float64
31}
32
33type T4 struct {
34	M float64
35	N float64
36	O float64
37	P float64
38}
39
40type T5 struct {
41	Q float64
42	R float64
43	S float64
44	T float64
45	U float64
46	V float64
47}
48
49type T6 struct {
50	T9
51	C T10
52}
53
54type T7 struct {
55	T10
56	T11
57}
58
59type T8 struct {
60	T9
61	C T7
62}
63
64type T9 struct {
65	A T5
66	B T3
67	D T4
68}
69
70type T10 struct {
71	W float64
72}
73
74type T11 struct {
75	X float64
76	Y float64
77}
78
79func MainTest(x T1, y T8, z T6) float64 {
80	return Test(x.B, x.A, x.D, x.C, y.B, y.A, y.D, y.C, z.B, z.A, z.D,
81		T7{
82			T10: T10{
83				W: z.C.W,
84			},
85			T11: T11{},
86		},
87	)
88}
89func Test(a T2, b T5, c T4, d T7, e T3, f T5, g T4, h T7, i T3, j T5, k T4, l T7) float64
90