La compilación con un indicador independiente proporciona errores de compilación en el código del cliente

Estoy intentando compilarZero29 con el--standalone bandera del compilador El proyecto en sí se compila bien, pero tengo un proyecto de prueba unitaria que ejercita algo de código en el proyecto Zero29, aunque es un programa ejecutable (.exe).

Todo funciona biensin el--standalone bandera de compilación

Sin embargo, cuando agrego el--standalone indicador de compilación para el proyecto Zero29, el proyecto Zero29 se compila bien, pero en el proyecto de prueba de la unidad, el compilador se queja de esta Unión Discriminadadefinido en el proyecto Zero29:

namespace Ploeh.ZeroToNine

open System
open Ploeh.ZeroToNine.Versioning

type Arg =
    | Assign of Version
    | AssignRank of Rank * int
    | Increment of Rank
    | ListVersions
    | ShowHelp
    | Unknown of string list

El proyecto de prueba de la unidad hace referencia directa al proyecto Zero29:

Zero29.UnitTests --references -> Zero29 (donde se agrega --standalone)

Cuando intento compilar la solución completa, el proyecto Zero29 se compila con el--standalone flag, pero luego la compilación de Zero29.UnitTests falla. Hay varios errores, pero todos son iguales, así que aquí hay un solo ejemplo:

error FS0039: el valor o el constructor 'Asignar' no está definido

Que apunta a la tercera línea deeste codigo:

let ParseAssignVersionReturnsCorrectResult(version : string) =
    let actual = [| "-a"; version |] |> Args.Parse
    verify <@ [Assign(Version version)] = (actual |> Seq.toList) @>

Lo extraño es que mientras el compilador se queja deAssign en la tercera línea de este fragmento de código, seno lo hace quejarse sobre el uso deArgs.Parse, aunque seadefinido en el mismo archivo de código que elArg Unión discriminada.

¿Por qué hace eso y cómo puedo resolver este problema?

(He intentado resolver el problema aquí, pero los enlaces que he proporcionado apuntan a los archivos de código reales en GitHub, si se requiere más información).

Respuestas a la pregunta(1)

Su respuesta a la pregunta