struct Foo {
	test int
	name string
}

fn test<T>() {
	mut t := T{}
	$for f in T.fields {
		$if f.typ is string {
			t.$(f) = '3'
			fv := Foo{}
			_ = t.$(fv.name)
		}
	}
	_ = t.$(f.name)
}

fn main() {
	test<Foo>()
}
