
func f() {
	v1 = S1(v2); v2 = S2(v1)
	v1 = S1(v3); v3 = S3(v1)
	v1 = S1(v4); v4 = S4(v1)
	v2 = v3; v3 = v2 // the conversions can be implicit
	v2 = v4; v4 = v2 // the conversions can be implicit
	v3 = S3(v4); v4 = S4(v3)
}
</code></pre>
<p></p>
<div class="tmd-usual">
In fact, two struct values can be assigned (or compared) to each other only if one of them can be implicitly converted to the type of the other.
</div>
<p></p>
<h3 class="tmd-header-3">
Anonymous Struct Types Can Be Used in Field Declarations