Skip to content

require("ffi") returning unknown #1559

Open
@Frityet

Description

@Frityet

How are you using the lua-language-server?

Visual Studio Code Extension (sumneko.lua)

Which OS are you using?

MacOS

What is the issue affecting?

Type Checking, Completion, Libraries

Expected Behaviour

Screen Shot 2022-09-16 at 17 03 10

Actual Behaviour

Screen Shot 2022-09-16 at 17 02 58

Reproduction steps

local ffi = require("ffi")

Additional Notes

No response

Log File

[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:65]: Lua Lsp startup, root: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:66]: ROOT:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:67]: LOGPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:68]: METAPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta
[17:01:26.979][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:69]: VERSION:	3.5.6
[17:01:27.012][info] [#0:script/service/service.lua:141]: 
========= Medical Examination Report =========
    --------------- Memory ---------------
        Total: 1.489 MB
        # 00 : 1.489 MB
        # 01 : 0.000 MB
        # 02 : 0.000 MB
        # 03 : 0.000 MB
        # 04 : 0.000 MB
    --------------- Coroutine ---------------
        Total:     0
        Running:   0
        Suspended: 0
        Normal:    0
        Dead:      0
    --------------- Cache ---------------
        Total: 1
        Dead:  0
    ---------------  RPC  ---------------
        Holdon:   0
        Waiting:  0
==============================================
[17:01:27.023][info] [#0:script/language.lua:137]: VSC language: en-us
[17:01:27.023][info] [#0:script/language.lua:138]: LS  language: en-us
[17:01:27.023][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.023][info] [#0:script/workspace/workspace.lua:42]: Log path: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/file_Users_frityet_Documents_LuaUITest.log
[17:01:27.025][info] [#0:script/workspace/workspace.lua:51]: Workspace create: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.335][info] [#0:script/provider/provider.lua:41]: Load config from client	file:///Users/frityet/Documents/LuaUITest
[17:01:27.336][info] [#0:script/provider/provider.lua:42]: {
  Lua = {
    IntelliSense = {
      traceBeSetted = true,
      traceFieldInject = true,
      traceLocalSet = true,
      traceReturn = true
    },
    color = {
      mode = "SemanticEnhanced"
    },
    completion = {
      autoRequire = true,
      callSnippet = "Replace",
      displayContext = 0,
      enable = true,
      keywordSnippet = "Replace",
      postfix = "@",
      requireSeparator = ".",
      showParams = true,
      showWord = "Fallback",
      workspaceWord = true
    },
    diagnostics = {
      disable = {},
      disableScheme = { "git" },
      enable = true,
      globals = {},
      groupFileStatus = {},
      groupSeverity = {},
      ignoredFiles = "Enable",
      libraryFiles = "Opened",
      neededFileStatus = {},
      severity = {},
      unusedLocalExclude = {},
      workspaceDelay = 3000,
      workspaceRate = 100
    },
    format = {
      defaultConfig = {},
      enable = true
    },
    hint = {
      arrayIndex = "Enable",
      await = true,
      enable = false,
      paramName = "All",
      paramType = true,
      semicolon = "SameLine",
      setType = true
    },
    hover = {
      enable = true,
      enumsLimit = 5,
      expandAlias = true,
      previewFields = 50,
      viewNumber = true,
      viewString = true,
      viewStringMax = 1000
    },
    misc = {
      parameters = {}
    },
    runtime = {
      builtin = {},
      fileEncoding = "utf8",
      meta = "${version} ${language} ${encoding}",
      nonstandardSymbol = {},
      path = { "?.lua", "?/init.lua", "?/?.lua", "/usr/local/share/lua/?/?.lua" },
      pathStrict = false,
      plugin = "",
      pluginArgs = {},
      special = {
        ['"ffi.load"'] = "require"
      },
      unicodeName = false,
      version = "Lua 5.4"
    },
    semantic = {
      annotation = true,
      enable = true,
      keyword = false,
      variable = true
    },
    signatureHelp = {
      enable = true
    },
    spell = {
      dict = {}
    },
    telemetry = {
      enable = true
    },
    type = {
      castNumberToInteger = true,
      weakNilCheck = false,
      weakUnionCheck = false
    },
    typeFormat = {
      config = {}
    },
    window = {
      progressBar = true,
      statusBar = true
    },
    workspace = {
      checkThirdParty = true,
      ignoreDir = { ".vscode" },
      ignoreSubmodules = true,
      library = { "/usr/local/share/lua/", "/usr/local/lib/lua/", "?/?.so", "?.so", "/Users/frityet/Documents/libCraftOS/" },
      maxPreload = 5000,
      preloadFileSize = 500,
      supportScheme = { "file", "untitled", "git" },
      useGitIgnore = true,
      userThirdParty = {}
    }
  },
  ["editor.acceptSuggestionOnEnter"] = "on",
  ["editor.semanticHighlighting.enabled"] = true,
  ["files.associations"] = {
    ["*.asm"] = "nasm",
    ["*.h"] = "c",
    ["*.inc"] = "nasm",
    ["*.lua"] = "lua",
    ["*.mpp"] = "cpp",
    ["*.rockspec"] = "lua"
  },
  ["files.exclude"] = {
    ["**/.DS_Store"] = true,
    ["**/.git"] = true,
    ["**/.hg"] = true,
    ["**/.svn"] = true,
    ["**/CVS"] = true,
    ["**/Thumbs.db"] = true
  }
}
[17:01:27.336][info] [#0:script/provider/provider.lua:48]: Load config from .luarc.json/.luarc.jsonc	file:///Users/frityet/Documents/LuaUITest
[17:01:27.336][info] [#0:script/provider/provider.lua:49]: {
  ["diagnostics.groupSeverity"] = {
    ambiguity = "Error",
    await = "Error",
    codestyle = "Error",
    duplicate = "Error",
    global = "Error",
    luadoc = "Error",
    redefined = "Error",
    strict = "Error",
    strong = "Error",
    ["type-check"] = "Error",
    unbalanced = "Error"
  },
  ["runtime.path"] = { "?.lua", "?/init.lua" },
  ["runtime.pathStrict"] = true,
  ["runtime.special"] = {
    <metatable> = {}
  },
  ["runtime.version"] = "LuaJIT",
  ["workspace.ignoreDir"] = {},
  ["workspace.useGitIgnore"] = false
}
[17:01:27.439][info] [#0:script/provider/provider.lua:56]: Load config from client	fallback
[17:01:27.441][info] [#0:script/provider/provider.lua:57]: {
  Lua = {
    IntelliSense = {
      traceBeSetted = true,
      traceFieldInject = true,
      traceLocalSet = true,
      traceReturn = true
    },
    color = {
      mode = "SemanticEnhanced"
    },
    completion = {
      autoRequire = true,
      callSnippet = "Replace",
      displayContext = 0,
      enable = true,
      keywordSnippet = "Replace",
      postfix = "@",
      requireSeparator = ".",
      showParams = true,
      showWord = "Fallback",
      workspaceWord = true
    },
    diagnostics = {
      disable = {},
      disableScheme = { "git" },
      enable = true,
      globals = {},
      groupFileStatus = {},
      groupSeverity = {},
      ignoredFiles = "Enable",
      libraryFiles = "Opened",
      neededFileStatus = {},
      severity = {},
      unusedLocalExclude = {},
      workspaceDelay = 3000,
      workspaceRate = 100
    },
    format = {
      defaultConfig = {},
      enable = true
    },
    hint = {
      arrayIndex = "Enable",
      await = true,
      enable = false,
      paramName = "All",
      paramType = true,
      semicolon = "SameLine",
      setType = true
    },
    hover = {
      enable = true,
      enumsLimit = 5,
      expandAlias = true,
      previewFields = 50,
      viewNumber = true,
      viewString = true,
      viewStringMax = 1000
    },
    misc = {
      parameters = {}
    },
    runtime = {
      builtin = {},
      fileEncoding = "utf8",
      meta = "${version} ${language} ${encoding}",
      nonstandardSymbol = {},
      path = { "?.lua", "?/init.lua", "?/?.lua", "/usr/local/share/lua/?/?.lua" },
      pathStrict = false,
      plugin = "",
      pluginArgs = {},
      special = {
        ['"ffi.load"'] = "require"
      },
      unicodeName = false,
      version = "Lua 5.4"
    },
    semantic = {
      annotation = true,
      enable = true,
      keyword = false,
      variable = true
    },
    signatureHelp = {
      enable = true
    },
    spell = {
      dict = {}
    },
    telemetry = {
      enable = true
    },
    type = {
      castNumberToInteger = true,
      weakNilCheck = false,
      weakUnionCheck = false
    },
    typeFormat = {
      config = {}
    },
    window = {
      progressBar = true,
      statusBar = true
    },
    workspace = {
      checkThirdParty = true,
      ignoreDir = { ".vscode" },
      ignoreSubmodules = true,
      library = { "/usr/local/share/lua/", "/usr/local/lib/lua/", "?/?.so", "?.so", "/Users/frityet/Documents/libCraftOS/" },
      maxPreload = 5000,
      preloadFileSize = 500,
      supportScheme = { "file", "untitled", "git" },
      useGitIgnore = true,
      userThirdParty = {}
    }
  },
  ["editor.acceptSuggestionOnEnter"] = "on",
  ["editor.semanticHighlighting.enabled"] = true,
  ["files.associations"] = {
    ["*.asm"] = "nasm",
    ["*.h"] = "c",
    ["*.inc"] = "nasm",
    ["*.lua"] = "lua",
    ["*.mpp"] = "cpp",
    ["*.rockspec"] = "lua"
  },
  ["files.exclude"] = {
    ["**/.DS_Store"] = true,
    ["**/.git"] = true,
    ["**/.hg"] = true,
    ["**/.svn"] = true,
    ["**/CVS"] = true,
    ["**/Thumbs.db"] = true
  }
}
[17:01:27.442][info] [#0:script/provider/completion.lua:43]: Enable completion.
[17:01:27.544][info] [#0:script/library.lua:207]: Init builtin library at:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.566][info] [#0:script/plugin.lua:86]: plugin path:	/Users/frityet/Documents/LuaUITest
[17:01:27.567][warn] [#0:script/plugin.lua:101]: plugin not found:	/Users/frityet/Documents/LuaUITest
[17:01:27.567][info] [#0:script/library.lua:207]: Init builtin library at:	nil
[17:01:27.586][info] [#0:script/workspace/workspace.lua:305]: Preload start:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.589][info] [#0:script/workspace/workspace.lua:311]: Scan files at:	file:///Users/frityet/Documents/LuaUITest
[17:01:27.589][info] [#0:script/workspace/workspace.lua:305]: Preload start:	<fallback>
[17:01:27.593][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/lib/lua
[17:01:27.599][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/share/lua
[17:01:27.599][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta/Lua%205.4%20en-us%20utf8
[17:01:27.600][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/lib/lua
[17:01:27.603][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///usr/local/share/lua
[17:01:27.603][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta/LuaJIT%20en-us%20utf8
[17:01:27.606][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/Documents/libCraftOS
[17:01:27.610][info] [#0:script/workspace/workspace.lua:328]: Scan library at:	file:///Users/frityet/Documents/libCraftOS
[17:01:28.438][info] [#0:script/workspace/workspace.lua:348]: Found 20 files at:	<fallback>
[17:01:28.439][info] [#0:script/workspace/loading.lua:153]: Load files from disk:	<fallback>
[17:01:28.439][info] [#0:script/workspace/workspace.lua:348]: Found 29 files at:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.439][info] [#0:script/workspace/loading.lua:153]: Load files from disk:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.888][info] [#0:script/workspace/loading.lua:165]: Loaded files takes [0.145] sec: <fallback>
[17:01:28.888][info] [#0:script/workspace/loading.lua:174]: Compile files takes [0.000] sec: <fallback>
[17:01:28.888][info] [#0:script/workspace/loading.lua:175]: Loaded finish:	<fallback>
[17:01:28.888][info] [#0:script/workspace/workspace.lua:350]: Preload finish at:	<fallback>
[17:01:28.902][info] [#0:script/workspace/loading.lua:165]: Loaded files takes [0.157] sec: file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/loading.lua:174]: Compile files takes [0.000] sec: file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/loading.lua:175]: Loaded finish:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.902][info] [#0:script/workspace/workspace.lua:350]: Preload finish at:	file:///Users/frityet/Documents/LuaUITest
[17:01:28.921][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[35]
[17:01:28.921][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:01:28.953][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.029] sec.
[17:01:28.953][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.030] sec.
[17:01:39.060][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:01:39.066][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:02:14.451][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:14.456][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.005] sec.
[17:02:14.875][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:14.881][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:02:16.637][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:16.643][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.005] sec.
[17:02:18.242][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest], files count:[24]
[17:02:18.248][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [file:///Users/frityet/Documents/LuaUITest] finished, takes [0.006] sec.
[17:05:49.714][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[15]
[17:05:49.715][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.001] sec.
[17:05:51.377][info] [#0:script/provider/diagnostic.lua:160]: clearDiagnostics	file:///Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/middleScript.lua
[17:05:56.820][info] [#0:script/provider/diagnostic.lua:486]: Diagnostics scope [<fallback>], files count:[15]
[17:05:56.820][info] [#0:script/provider/diagnostic.lua:503]: Diagnostics scope [<fallback>] finished, takes [0.001] sec.
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:65]: Lua Lsp startup, root: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:66]: ROOT:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:67]: LOGPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log
[17:01:26.978][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:68]: METAPATH:	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/meta
[17:01:26.979][info] [#0:/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/main.lua:69]: VERSION:	3.5.6
[17:01:27.012][info] [#0:script/service/service.lua:141]: 
========= Medical Examination Report =========
    --------------- Memory ---------------
        Total: 1.489 MB
        # 00 : 1.489 MB
        # 01 : 0.000 MB
        # 02 : 0.000 MB
        # 03 : 0.000 MB
        # 04 : 0.000 MB
    --------------- Coroutine ---------------
        Total:     0
        Running:   0
        Suspended: 0
        Normal:    0
        Dead:      0
    --------------- Cache ---------------
        Total: 1
        Dead:  0
    ---------------  RPC  ---------------
        Holdon:   0
        Waiting:  0
==============================================
[17:01:27.023][info] [#0:script/language.lua:137]: VSC language: en-us
[17:01:27.023][info] [#0:script/language.lua:138]: LS  language: en-us
[17:01:27.023][info] [#0:script/workspace/workspace.lua:38]: Workspace init root: 	file:///Users/frityet/Documents/LuaUITest
[17:01:27.023][info] [#0:script/workspace/workspace.lua:42]: Log path: 	/Users/frityet/.vscode/extensions/sumneko.lua-3.5.6-darwin-x64/server/log/file_Users_frityet_Documents_LuaUITest.log

Metadata

Metadata

Assignees

No one assigned

    Labels

    Info NeededMore information is requiredbugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions