Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F# 错误FS0193:内部错误:无法加载类型_F# - Fatal编程技术网

F# 错误FS0193:内部错误:无法加载类型

F# 错误FS0193:内部错误:无法加载类型,f#,F#,我发现了几个关于这个错误的问题,通常是2年或更久的堆栈溢出问题。但在检查了其他问题给出的样本后,这个问题不是重复的。其他问题主要是关于具有布局属性的结构。在我的例子中,代码没有什么特别之处——除了它也会产生以下错误: [<Struct>] type Vertex = val x : float val y : float val z : float new(_x:float,_y:float,_z:float) = { x = _x; y = _y;

我发现了几个关于这个错误的问题,通常是2年或更久的堆栈溢出问题。但在检查了其他问题给出的样本后,这个问题不是重复的。其他问题主要是关于具有布局属性的结构。在我的例子中,代码没有什么特别之处——除了它也会产生以下错误:

[<Struct>]
type Vertex =
    val x : float
    val y : float
    val z : float
    new(_x:float,_y:float,_z:float) = { x = _x; y = _y; z = _z}

[<Struct>]
type Triangle =
    val v0 : Vertex
    val v1 : Vertex
    val v2 : Vertex
    new(_v0:Vertex,_v1:Vertex,_v2:Vertex) = { v0 = _v0; v1 = _v1; v2 = _v2 }

let v0 = Vertex(0.0,0.0,0.0)
let v1 = Vertex(0.0,1.0,0.0)
let v2 = Vertex(1.0,1.0,0.0)

let t0 = Triangle(v0,v1,v2)
[]
类型顶点=
val x:浮动
瓦利:浮子
val z:浮动
新的(x:float,y:float,z:float)={x=x;y=y;z=z}
[]
类型三角形=
val v0:顶点
VALV1:顶点
val v2:顶点
新的(_v0:Vertex,_v1:Vertex,_v2:Vertex)={v0=_v0;v1=_v1;v2=_v2}
设v0=顶点(0.0,0.0,0.0)
设v1=顶点(0.0,1.0,0.0)
设v2=顶点(1.0,1.0,0.0)
设t0=三角形(v0,v1,v2)
最后一行(实例化三角形)在fsi中产生错误:

错误FS0193:内部错误:无法从程序集“FSI-assembly,版本=0.0.0.0,区域性=中性,PublicKeyToken=null”加载类型“Triangle”

请注意,
顶点
(具有浮点成员)按预期工作。 具有
顶点
成员的三角形不存在

在跟踪各自的github f#bug之后,我得到的印象是很久以前就有了修复。但我明白了:

Microsoft(R)F#交互式版本14.0.23413.0

我没有尝试在编译的程序集(F#project)中使用它,但我猜,它会工作的


现在的问题是:我只是犯了一些愚蠢的疏忽错误,或者这是一个bug,或者结构中的结构成员是被禁止的吗?

有趣的是,就在一小时前,我犯了同样的错误message@Gustavo也许这是旧github条目中的一个回归bug o.o,DSyme自己说有一个修复程序……你知道他在哪里说的吗?Link?@Gustavo我可以复制这一点,但只能在互动中复制。我使用带有显式布局的嵌套结构进行OpenGL互操作,不记得曾经遇到过这个错误。但当我刚刚将代码粘贴到FSI时,我遇到了同样的问题。看起来嵌套结构在interactive中被破坏了。