public static void Assembly_reference_with_flag(AssemblyFlags flag) { var builder = BuildAssembly(); var baseType = typeof(AttributeTargets); var baseTypeAssemblyName = baseType.Assembly.GetName(); var assemblyReferenceHandle = builder.AddAssemblyReference( builder.GetOrAddString(baseTypeAssemblyName.Name), baseTypeAssemblyName.Version, builder.GetOrAddString(baseTypeAssemblyName.CultureName), builder.GetOrAddBlob((baseTypeAssemblyName.Flags & AssemblyNameFlags.PublicKey) != 0 ? baseTypeAssemblyName.GetPublicKey() : baseTypeAssemblyName.GetPublicKeyToken()), (AssemblyFlags)baseTypeAssemblyName.Flags | flag, hashValue: default); var typeReferenceHandle = builder.AddTypeReference( assemblyReferenceHandle, builder.GetOrAddString(baseType.Namespace), builder.GetOrAddString(baseType.Name)); var fieldTypeBlob = new BlobBuilder(); var fieldTypeEncoder = new BlobEncoder(fieldTypeBlob).FieldSignature(); fieldTypeEncoder.Type(typeReferenceHandle, isValueType: false); var fieldHandle = builder.AddFieldDefinition( FieldAttributes.Public | FieldAttributes.Static | FieldAttributes.Literal, builder.GetOrAddString("TestField"), builder.GetOrAddBlob(fieldTypeBlob)); builder.AddConstant(fieldHandle, null); builder.AddTypeDefinition( TypeAttributes.Public, @namespace: default,