F# %A格式具有非公共歧视联合的奇怪行为

F# %A格式具有非公共歧视联合的奇怪行为,f#,F#,输出: type Test = | First | Second | Third let test = First printf "test=%A" test 是 如预期,但如果我声明类型internal: type internal Test = | First | Second | Third let internal test = First printf "test=%A" test 输出变为: test=FSI_0019+Test 这是故意的吗?为

输出:

type Test =
  | First
  | Second
  | Third

let test = First

printf "test=%A" test

如预期,但如果我声明类型
internal

type internal Test =
  | First
  | Second
  | Third

let internal test = First

printf "test=%A" test
输出变为:

test=FSI_0019+Test
这是故意的吗?为什么?还是虫子


我正在使用Visual Studio 2010和F#2.0来打印非公开成员使用“+”标志。MSDN中缺少的事实看起来像是文档问题:

printf "test=%+A" test

谢谢很高兴不是我忽略了一些显而易见的东西,我们现在在MSDN上对其进行了更新:
printf "test=%+A" test