for (GoTypeStructAnonymousField field : struct.getAnonymousFields()) {
GoPsiType type = field.getType();
if (type instanceof GoPsiTypeName) {
GoPsiTypeName typeName = (GoPsiTypeName) type;
if (typeContainsStruct(type, struct)) {
result.addProblem(field, GoBundle.message(
"error.invalid.recursive.type", struct.getName()));
}
GoLiteralIdentifier identifier = typeName.getIdentifier();
String name = identifier.getName();
if (fields.contains(name)) {
result.addProblem(identifier, GoBundle.message(
"error.duplicate.field", name));
} else {