void AddAttributes(FieldInfo fieldDefinition, IUnresolvedEntity targetEntity) { // FieldOffsetAttribute int fOffset; if (fieldDefinition.__TryGetFieldOffset(out fOffset)) { var fieldOffset = new DefaultUnresolvedAttribute(fieldOffsetAttributeTypeRef, new[] { KnownTypeReference.Int32 }); fieldOffset.PositionalArguments.Add(CreateSimpleConstantValue(KnownTypeReference.Int32, fOffset)); targetEntity.Attributes.Add(interningProvider.Intern(fieldOffset)); } // NonSerializedAttribute if (fieldDefinition.IsNotSerialized) { targetEntity.Attributes.Add(nonSerializedAttribute); } FieldMarshal marshal; if (fieldDefinition.__TryGetFieldMarshal (out marshal)) targetEntity.Attributes.Add(ConvertMarshalInfo(marshal)); AddCustomAttributes(fieldDefinition.CustomAttributes, targetEntity.Attributes); }