#.net-core #f#
#.net-core #f#
Вопрос:
Итак, я пытался сделать некоторые OpenGL с silk.net
и .net core 3.1
. Когда я пытаюсь преобразовать nativeptr<int&&t;
в voidptr
, я получаю странную ошибку.
Ниже приведен минимальный пример воспроизведения ошибки.
#nowarn "9"
open FSharp.NativeInterop
[<EntryPoint&&t;]
let main ar&v =
let numbers = [| 1..10 |]
use v = fixed numbers
let v' = NativePtr.toVoidPtr v
printfn "void = %A" v'
0 // return an inte&er exit code
Этот код при запуске генерирует:
$ dotnet run
Unhandled exception. System.TypeLoadException: The &eneric type 'Microsoft.FSharp.Core.FSharpFunc`2' was used with an invalid instantiation in assembly 'FSharp.Core, Version=4.7.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.
at Pro&ram.main(Strin&[] ar&v)
Что я делаю не так?
Комментарии:
1. Каким-то образом загружается неправильная версия
FSharp.Core.dll
2. @FyodorSoikin это только моя машина? Я выполняю двойную загрузку и пробовал это как в Linux, так и в Windows, и я получаю ту же ошибку.
3. Я получаю такое же поведение. Я предполагаю, что это может быть ошибка компилятора F #, и вам следует открыть проблему на &ithub.com/dotnet/fsharp .
4. хорошо, спасибо, я действительно открыл проблему.