Git Product home page Git Product logo

vls's Issues

documentSymbol crash

Here is the vls.log. Notice that the JSON is malformed at the end -- it crashed before it finished writing. You'll ned to remove the last two lines for LSP inspector to show something useful.

[Trace - 22:34:32] Sending request 'initialize - (0)'.
Params: {"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":43027,"clientInfo":{"name":"Visual Studio Code","version":"1.55.2"},"locale":"en-us","rootPath":"/Users/jarredsumner/Code/esdev","rootUri":"file:///Users/jarredsumner/Code/esdev","capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional","normalizesLineEndings":true,"changeAnnotationSupport":{"groupsOnLabel":true}},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"tagSupport":{"valueSet":[1]}},"codeLens":{"refreshSupport":true},"executeCommand":{"dynamicRegistration":true},"configuration":true,"workspaceFolders":true,"semanticTokens":{"refreshSupport":true},"fileOperations":{"dynamicRegistration":true,"didCreate":true,"didRename":true,"didDelete":true,"willCreate":true,"willRename":true,"willDelete":true}},"textDocument":{"publishDiagnostics":{"relatedInformation":true,"versionSupport":false,"tagSupport":{"valueSet":[1,2]},"codeDescriptionSupport":true,"dataSupport":true},"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"contextSupport":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]},"insertReplaceSupport":true,"resolveSupport":{"properties":["documentation","detail","additionalTextEdits"]},"insertTextModeSupport":{"valueSet":[1,2]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true},"activeParameterSupport":true},"contextSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true,"tagSupport":{"valueSet":[1]},"labelSupport":true},"codeAction":{"dynamicRegistration":true,"isPreferredSupport":true,"disabledSupport":true,"dataSupport":true,"resolveSupport":{"properties":["edit"]},"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"honorsChangeAnnotations":false},"codeLens":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true,"prepareSupportDefaultBehavior":1,"honorsChangeAnnotations":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"colorProvider":{"dynamicRegistration":true},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"selectionRange":{"dynamicRegistration":true},"callHierarchy":{"dynamicRegistration":true},"semanticTokens":{"dynamicRegistration":true,"tokenTypes":["namespace","type","class","enum","interface","struct","typeParameter","parameter","variable","property","enumMember","event","function","method","macro","keyword","modifier","comment","string","number","regexp","operator"],"tokenModifiers":["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"],"formats":["relative"],"requests":{"range":true,"full":{"delta":true}},"multilineTokenSupport":false,"overlappingTokenSupport":false},"linkedEditingRange":{"dynamicRegistration":true}},"window":{"showMessage":{"messageActionItem":{"additionalPropertiesSupport":true}},"showDocument":{"support":true},"workDoneProgress":true},"general":{"regularExpressions":{"engine":"ECMAScript","version":"ES2020"},"markdown":{"parser":"marked","version":"1.1.0"}}},"trace":"off","workspaceFolders":[{"uri":"file:///Users/jarredsumner/Code/esdev","name":"esdev"}]}}


[Trace - 22:34:32] Received request 'initialize - (0)'.
Params: {"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":43027,"clientInfo":{"name":"Visual Studio Code","version":"1.55.2"},"locale":"en-us","rootPath":"/Users/jarredsumner/Code/esdev","rootUri":"file:///Users/jarredsumner/Code/esdev","capabilities":{"workspace":{"applyEdit":true,"workspaceEdit":{"documentChanges":true,"resourceOperations":["create","rename","delete"],"failureHandling":"textOnlyTransactional","normalizesLineEndings":true,"changeAnnotationSupport":{"groupsOnLabel":true}},"didChangeConfiguration":{"dynamicRegistration":true},"didChangeWatchedFiles":{"dynamicRegistration":true},"symbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"tagSupport":{"valueSet":[1]}},"codeLens":{"refreshSupport":true},"executeCommand":{"dynamicRegistration":true},"configuration":true,"workspaceFolders":true,"semanticTokens":{"refreshSupport":true},"fileOperations":{"dynamicRegistration":true,"didCreate":true,"didRename":true,"didDelete":true,"willCreate":true,"willRename":true,"willDelete":true}},"textDocument":{"publishDiagnostics":{"relatedInformation":true,"versionSupport":false,"tagSupport":{"valueSet":[1,2]},"codeDescriptionSupport":true,"dataSupport":true},"synchronization":{"dynamicRegistration":true,"willSave":true,"willSaveWaitUntil":true,"didSave":true},"completion":{"dynamicRegistration":true,"contextSupport":true,"completionItem":{"snippetSupport":true,"commitCharactersSupport":true,"documentationFormat":["markdown","plaintext"],"deprecatedSupport":true,"preselectSupport":true,"tagSupport":{"valueSet":[1]},"insertReplaceSupport":true,"resolveSupport":{"properties":["documentation","detail","additionalTextEdits"]},"insertTextModeSupport":{"valueSet":[1,2]}},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}},"hover":{"dynamicRegistration":true,"contentFormat":["markdown","plaintext"]},"signatureHelp":{"dynamicRegistration":true,"signatureInformation":{"documentationFormat":["markdown","plaintext"],"parameterInformation":{"labelOffsetSupport":true},"activeParameterSupport":true},"contextSupport":true},"definition":{"dynamicRegistration":true,"linkSupport":true},"references":{"dynamicRegistration":true},"documentHighlight":{"dynamicRegistration":true},"documentSymbol":{"dynamicRegistration":true,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]},"hierarchicalDocumentSymbolSupport":true,"tagSupport":{"valueSet":[1]},"labelSupport":true},"codeAction":{"dynamicRegistration":true,"isPreferredSupport":true,"disabledSupport":true,"dataSupport":true,"resolveSupport":{"properties":["edit"]},"codeActionLiteralSupport":{"codeActionKind":{"valueSet":["","quickfix","refactor","refactor.extract","refactor.inline","refactor.rewrite","source","source.organizeImports"]}},"honorsChangeAnnotations":false},"codeLens":{"dynamicRegistration":true},"formatting":{"dynamicRegistration":true},"rangeFormatting":{"dynamicRegistration":true},"onTypeFormatting":{"dynamicRegistration":true},"rename":{"dynamicRegistration":true,"prepareSupport":true,"prepareSupportDefaultBehavior":1,"honorsChangeAnnotations":true},"documentLink":{"dynamicRegistration":true,"tooltipSupport":true},"typeDefinition":{"dynamicRegistration":true,"linkSupport":true},"implementation":{"dynamicRegistration":true,"linkSupport":true},"colorProvider":{"dynamicRegistration":true},"foldingRange":{"dynamicRegistration":true,"rangeLimit":5000,"lineFoldingOnly":true},"declaration":{"dynamicRegistration":true,"linkSupport":true},"selectionRange":{"dynamicRegistration":true},"callHierarchy":{"dynamicRegistration":true},"semanticTokens":{"dynamicRegistration":true,"tokenTypes":["namespace","type","class","enum","interface","struct","typeParameter","parameter","variable","property","enumMember","event","function","method","macro","keyword","modifier","comment","string","number","regexp","operator"],"tokenModifiers":["declaration","definition","readonly","static","deprecated","abstract","async","modification","documentation","defaultLibrary"],"formats":["relative"],"requests":{"range":true,"full":{"delta":true}},"multilineTokenSupport":false,"overlappingTokenSupport":false},"linkedEditingRange":{"dynamicRegistration":true}},"window":{"showMessage":{"messageActionItem":{"additionalPropertiesSupport":true}},"showDocument":{"support":true},"workDoneProgress":true},"general":{"regularExpressions":{"engine":"ECMAScript","version":"ES2020"},"markdown":{"parser":"marked","version":"1.1.0"}}},"trace":"off","workspaceFolders":[{"uri":"file:///Users/jarredsumner/Code/esdev","name":"esdev"}]}}


[Trace - 22:34:32] Sending notification 'window/logMessage'.
Params: {"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"VLS Version: 0.0.1, OS: macos 64"}}


[Trace - 22:34:32] Received notification 'window/logMessage'.
Params: {"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"VLS Version: 0.0.1, OS: macos 64"}}


[Trace - 22:34:32] Sending notification 'window/logMessage'.
Params: {"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"Client / Editor: Visual Studio Code 1.55.2"}}


[Trace - 22:34:32] Received notification 'window/logMessage'.
Params: {"jsonrpc":"2.0","method":"window/logMessage","params":{"type":3,"message":"Client / Editor: Visual Studio Code 1.55.2"}}


[Trace - 22:34:32] Sending response 'initialize - (0)' took 23ms
Result: {"jsonrpc":"2.0","id":0,"result":{"capabilities":{"textDocumentSync":1,"hoverProvider":true,"completionProvider":{"resolveProvider":false,"triggerCharacters":["=",".",":","{",",","("," "]},"signatureHelpProvider":{"triggerCharacters":["("],"retriggerCharacters":[","," "]},"definitionProvider":true,"typeDefinitionProvider":false,"implementationProvider":false,"referencesProvider":false,"documentHightlightProvider":false,"documentSymbolProvider":true,"workspaceSymbolProvider":true,"codeActionProvider":false,"codeLensProvider":{"resolveProvider":false},"documentFormattingProvider":true,"documentOnTypeFormattingProvider":{"moreTriggerCharacter":[]},"renameProvider":false,"documentLinkProvider":false,"colorProvider":false,"declarationProvider":false,"executeCommandProvider":"","foldingRangeProvider":true,"experimental":{}}}}


[Trace - 22:34:32] Received response ' - (0)' in 0ms
Result: {"jsonrpc":"2.0","id":0,"result":{"capabilities":{"textDocumentSync":1,"hoverProvider":true,"completionProvider":{"resolveProvider":false,"triggerCharacters":["=",".",":","{",",","("," "]},"signatureHelpProvider":{"triggerCharacters":["("],"retriggerCharacters":[","," "]},"definitionProvider":true,"typeDefinitionProvider":false,"implementationProvider":false,"referencesProvider":false,"documentHightlightProvider":false,"documentSymbolProvider":true,"workspaceSymbolProvider":true,"codeActionProvider":false,"codeLensProvider":{"resolveProvider":false},"documentFormattingProvider":true,"documentOnTypeFormattingProvider":{"moreTriggerCharacter":[]},"renameProvider":false,"documentLinkProvider":false,"colorProvider":false,"declarationProvider":false,"executeCommandProvider":"","foldingRangeProvider":true,"experimental":{}}}}


[Trace - 22:34:32] Sending request 'initialized - (0)'.
Params: {"jsonrpc":"2.0","method":"initialized","params":{}}


[Trace - 22:34:32] Received request 'initialized - (0)'.
Params: {"jsonrpc":"2.0","method":"initialized","params":{}}


[Trace - 22:34:32] Sending request 'textDocument/didOpen - (0)'.
Params: {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///Users/jarredsumner/Code/esdev/esdev.v","languageId":"v","version":1,"text":"module main\n\nimport debugger\nimport lexer\n\nfn main() {\n\tprintln('Hello World!')\n}\n"}}}


[Trace - 22:34:32] Received request 'textDocument/didOpen - (0)'.
Params: {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///Users/jarredsumner/Code/esdev/esdev.v","languageId":"v","version":1,"text":"module main\n\nimport debugger\nimport lexer\n\nfn main() {\n\tprintln('Hello World!')\n}\n"}}}


[Trace - 22:34:32] Sending notification 'textDocument/publishDiagnostics'.
Params: {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/jarredsumner/Code/esdev/esdev.v","diagnostics":[{"range":{"start":{"line":2,"character":7},"end":{"line":2,"character":15}},"severity":2,"code":"","source":"","message":"module 'debugger' is imported but never used","relatedInformation":[]},{"range":{"start":{"line":3,"character":7},"end":{"line":3,"character":12}},"severity":2,"code":"","source":"","message":"module 'lexer' is imported but never used","relatedInformation":[]}]}}


[Trace - 22:34:32] Received notification 'textDocument/publishDiagnostics'.
Params: {"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"uri":"file:///Users/jarredsumner/Code/esdev/esdev.v","diagnostics":[{"range":{"start":{"line":2,"character":7},"end":{"line":2,"character":15}},"severity":2,"code":"","source":"","message":"module 'debugger' is imported but never used","relatedInformation":[]},{"range":{"start":{"line":3,"character":7},"end":{"line":3,"character":12}},"severity":2,"code":"","source":"","message":"module 'lexer' is imported but never used","relatedInformation":[]}]}}


[Trace - 22:34:32] Sending request 'textDocument/didOpen - (0)'.
Params: {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///Users/jarredsumner/Code/esdev/lexer/lexer.v","languageId":"v","version":1,"text":"module lexer\n\npub struct Lexer {\npub:\n\t// log                             logger.Log\n\t// source                          logger.Source\n\tcurrent                   int\n\tstart                     int\n\tend                       int\n\tapproximate_newline_count int\n\t// LegacyOctalLoc                  logger.Loc\n\t// PreviousBackslashQuoteInJSX     logger.Range\n\ttoken                        T\n\thas_newline_before           bool\n\thas_pure_comment_before      bool\n\tpreserve_all_comments_before bool\n\tis_legacy_octal_literal      bool\n\t// comments_to_preserve_before        []js_ast.Comment\n\t// all_original_comments             []js_ast.Comment\n\tcode_point     rune\n\tstring_literal []uint16\n\tidentifier     string\n\t// jsx_factory_pragma_comment         js_ast.Span\n\t// jsx_fragment_pragma_comment        js_ast.Span\n\t// source_mapping_url                js_ast.Span\n\tnumber                               f64\n\trescan_close_brace_as_template_token bool\n\tfor_global_name                      bool\n\t// json                            json\n\t// prev_error_loc                    logger.Loc\n}\n\npub enum TKind {\n\tt_end_of_file\n\tt_syntax_error\n\t// \"#!/usr/bin/env node\"\n\tt_hashbang\n\t// Literals\n\tt_no_substitution_template_literal // Contents are in lexer.StringLiteral ([]uint16)\n\tt_numeric_literal // Contents are in lexer.Number (float64)\n\tt_string_literal // Contents are in lexer.StringLiteral ([]uint16)\n\tt_big_integer_literal // Contents are in lexer.Identifier (string)\n\t// Pseudo-literals\n\tt_template_head // Contents are in lexer.StringLiteral ([]uint16)\n\tt_template_middle // Contents are in lexer.StringLiteral ([]uint16)\n\tt_template_tail // Contents are in lexer.StringLiteral ([]uint16)\n\t// Punctuation\n\tt_ampersand\n\tt_ampersand_ampersand\n\tt_asterisk\n\tt_asterisk_asterisk\n\tt_at\n\tt_bar\n\tt_bar_bar\n\tt_caret\n\tt_close_brace\n\tt_close_bracket\n\tt_close_paren\n\tt_colon\n\tt_comma\n\tt_dot\n\tt_dot_dot_dot\n\tt_equals_equals\n\tt_equals_equals_equals\n\tt_equals_greater_than\n\tt_exclamation\n\tt_exclamation_equals\n\tt_exclamation_equals_equals\n\tt_greater_than\n\tt_greater_than_equals\n\tt_greater_than_greater_than\n\tt_greater_than_greater_than_greater_than\n\tt_less_than\n\tt_less_than_equals\n\tt_less_than_less_than\n\tt_minus\n\tt_minus_minus\n\tt_open_brace\n\tt_open_bracket\n\tt_open_paren\n\tt_percent\n\tt_plus\n\tt_plus_plus\n\tt_question\n\tt_question_dot\n\tt_question_question\n\tt_semicolon\n\tt_slash\n\tt_tilde\n\t// Assignments (keep in sync with IsAssign() below)\n\tt_ampersand_ampersand_equals\n\tt_ampersand_equals\n\tt_asterisk_asterisk_equals\n\tt_asterisk_equals\n\tt_bar_bar_equals\n\tt_bar_equals\n\tt_caret_equals\n\tt_equals\n\tt_greater_than_greater_than_equals\n\tt_greater_than_greater_than_greater_than_equals\n\tt_less_than_less_than_equals\n\tt_minus_equals\n\tt_percent_equals\n\tt_plus_equals\n\tt_question_question_equals\n\tt_slash_equals\n\t// Class-private fields and methods\n\tt_private_identifier\n\t// Identifiers\n\tt_identifier // Contents are in lexer.Identifier (string)\n\tt_escaped_keyword // A keyword that has been escaped as an identifer\n\t// Reserved words\n\tt_break\n\tt_case\n\tt_catch\n\tt_class\n\tt_const\n\tt_continue\n\tt_debugger\n\tt_default\n\tt_delete\n\tt_do\n\tt_else\n\tt_enum\n\tt_export\n\tt_extends\n\tt_false\n\tt_finally\n\tt_for\n\tt_function\n\tt_if\n\tt_import\n\tt_in\n\tt_instanceof\n\tt_new\n\tt_null\n\tt_return\n\tt_super\n\tt_switch\n\tt_this\n\tt_throw\n\tt_true\n\tt_try\n\tt_typeof\n\tt_var\n\tt_void\n\tt_while\n\tt_with\n}\n\npub fn (t TKind) is_assign() bool {\n\treturn int(t) >= int(TKind.t_ampersand_ampersand_equals) && int(t) <= int(TKind.t_slash_equals)\n}\n"}}}


[Trace - 22:34:32] Received request 'textDocument/didOpen - (0)'.
Params: {"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///Users/jarredsumner/Code/esdev/lexer/lexer.v","languageId":"v","version":1,"text":"module lexer\n\npub struct Lexer {\npub:\n\t// log                             logger.Log\n\t// source                          logger.Source\n\tcurrent                   int\n\tstart                     int\n\tend                       int\n\tapproximate_newline_count int\n\t// LegacyOctalLoc                  logger.Loc\n\t// PreviousBackslashQuoteInJSX     logger.Range\n\ttoken                        T\n\thas_newline_before           bool\n\thas_pure_comment_before      bool\n\tpreserve_all_comments_before bool\n\tis_legacy_octal_literal      bool\n\t// comments_to_preserve_before        []js_ast.Comment\n\t// all_original_comments             []js_ast.Comment\n\tcode_point     rune\n\tstring_literal []uint16\n\tidentifier     string\n\t// jsx_factory_pragma_comment         js_ast.Span\n\t// jsx_fragment_pragma_comment        js_ast.Span\n\t// source_mapping_url                js_ast.Span\n\tnumber                               f64\n\trescan_close_brace_as_template_token bool\n\tfor_global_name                      bool\n\t// json                            json\n\t// prev_error_loc                    logger.Loc\n}\n\npub enum TKind {\n\tt_end_of_file\n\tt_syntax_error\n\t// \"#!/usr/bin/env node\"\n\tt_hashbang\n\t// Literals\n\tt_no_substitution_template_literal // Contents are in lexer.StringLiteral ([]uint16)\n\tt_numeric_literal // Contents are in lexer.Number (float64)\n\tt_string_literal // Contents are in lexer.StringLiteral ([]uint16)\n\tt_big_integer_literal // Contents are in lexer.Identifier (string)\n\t// Pseudo-literals\n\tt_template_head // Contents are in lexer.StringLiteral ([]uint16)\n\tt_template_middle // Contents are in lexer.StringLiteral ([]uint16)\n\tt_template_tail // Contents are in lexer.StringLiteral ([]uint16)\n\t// Punctuation\n\tt_ampersand\n\tt_ampersand_ampersand\n\tt_asterisk\n\tt_asterisk_asterisk\n\tt_at\n\tt_bar\n\tt_bar_bar\n\tt_caret\n\tt_close_brace\n\tt_close_bracket\n\tt_close_paren\n\tt_colon\n\tt_comma\n\tt_dot\n\tt_dot_dot_dot\n\tt_equals_e

Suggestion: Make the --debug flag optionally accept a path and set the path to a logs directory for vls itself. That way, clients can enable it to log by default so that its easier to spot when it crashes.

File that crashes:

module lexer

pub struct Lexer {
pub:
	// log                             logger.Log
	// source                          logger.Source
	current                   int
	start                     int
	end                       int
	approximate_newline_count int
	// LegacyOctalLoc                  logger.Loc
	// PreviousBackslashQuoteInJSX     logger.Range
	token                        T
	has_newline_before           bool
	has_pure_comment_before      bool
	preserve_all_comments_before bool
	is_legacy_octal_literal      bool
	// comments_to_preserve_before        []js_ast.Comment
	// all_original_comments             []js_ast.Comment
	code_point     rune
	string_literal []uint16
	identifier     string
	// jsx_factory_pragma_comment         js_ast.Span
	// jsx_fragment_pragma_comment        js_ast.Span
	// source_mapping_url                js_ast.Span
	number                               f64
	rescan_close_brace_as_template_token bool
	for_global_name                      bool
	// json                            json
	// prev_error_loc                    logger.Loc
}

pub enum TKind {
	t_end_of_file
	t_syntax_error
	// "#!/usr/bin/env node"
	t_hashbang
	// Literals
	t_no_substitution_template_literal // Contents are in lexer.StringLiteral ([]uint16)
	t_numeric_literal // Contents are in lexer.Number (float64)
	t_string_literal // Contents are in lexer.StringLiteral ([]uint16)
	t_big_integer_literal // Contents are in lexer.Identifier (string)
	// Pseudo-literals
	t_template_head // Contents are in lexer.StringLiteral ([]uint16)
	t_template_middle // Contents are in lexer.StringLiteral ([]uint16)
	t_template_tail // Contents are in lexer.StringLiteral ([]uint16)
	// Punctuation
	t_ampersand
	t_ampersand_ampersand
	t_asterisk
	t_asterisk_asterisk
	t_at
	t_bar
	t_bar_bar
	t_caret
	t_close_brace
	t_close_bracket
	t_close_paren
	t_colon
	t_comma
	t_dot
	t_dot_dot_dot
	t_equals_equals
	t_equals_equals_equals
	t_equals_greater_than
	t_exclamation
	t_exclamation_equals
	t_exclamation_equals_equals
	t_greater_than
	t_greater_than_equals
	t_greater_than_greater_than
	t_greater_than_greater_than_greater_than
	t_less_than
	t_less_than_equals
	t_less_than_less_than
	t_minus
	t_minus_minus
	t_open_brace
	t_open_bracket
	t_open_paren
	t_percent
	t_plus
	t_plus_plus
	t_question
	t_question_dot
	t_question_question
	t_semicolon
	t_slash
	t_tilde
	// Assignments (keep in sync with IsAssign() below)
	t_ampersand_ampersand_equals
	t_ampersand_equals
	t_asterisk_asterisk_equals
	t_asterisk_equals
	t_bar_bar_equals
	t_bar_equals
	t_caret_equals
	t_equals
	t_greater_than_greater_than_equals
	t_greater_than_greater_than_greater_than_equals
	t_less_than_less_than_equals
	t_minus_equals
	t_percent_equals
	t_plus_equals
	t_question_question_equals
	t_slash_equals
	// Class-private fields and methods
	t_private_identifier
	// Identifiers
	t_identifier // Contents are in lexer.Identifier (string)
	t_escaped_keyword // A keyword that has been escaped as an identifer
	// Reserved words
	t_break
	t_case
	t_catch
	t_class
	t_const
	t_continue
	t_debugger
	t_default
	t_delete
	t_do
	t_else
	t_enum
	t_export
	t_extends
	t_false
	t_finally
	t_for
	t_function
	t_if
	t_import
	t_in
	t_instanceof
	t_new
	t_null
	t_return
	t_super
	t_switch
	t_this
	t_throw
	t_true
	t_try
	t_typeof
	t_var
	t_void
	t_while
	t_with
}

pub fn (t TKind) is_assign() bool {
	return int(t) >= int(TKind.t_ampersand_ampersand_equals) && int(t) <= int(TKind.t_slash_equals)
}

build fail when use -usecache

os:macos
v: V 0.2.2 5aaeac7, timestamp: 2021-02-02 12:06:54 +0200

build sucess with: v -prop cmd/vls
build fail with: v -prod -usecache cmd/vls

here is the error message:

==================
ld: 83 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

==================
(Use v -cg to print the entire error message)

builder error:

==================
C error. This should never happen.

If you were not working with C interop, please raise an issue on GitHub:

https://github.com/vlang/v/issues/new/choose

You can also use #help on Discord: https://discord.gg/vlang

Building vls fails in docker image

Dockerfile

FROM thevlang/vlang

RUN apt-get update && \
    apt-get install curl -y && \
    apt-get install unzip -y

RUN curl -L -o vls.zip https://github.com/vlang/vls/archive/master.zip && \
    unzip vls && \
    cd vls-master && \
    v -prod cmd/vls

Output:

 v -v cmd/vls
...
builder.cc() pref.out_name="/workspaces/v-vscode-remote-development-template/vls-master/cmd/vls/vls"
build_thirdparty_obj_files: v.table.cflags: [CFlag{ name: "-I" value: "/opt/vlang/thirdparty/cJSON" mod: "json" os: "" cached: "" }, CFlag{ name: "" value: "/opt/vlang/thirdparty/cJSON/cJSON.o" mod: "json" os: "" cached: "/root/.vmodules/cache/9d/9d98e153e152effa36bc10350274dcac.o" }]
cc() isprod=false outname=/workspaces/v-vscode-remote-development-template/vls-master/cmd/vls/vls

=====================
> C compiler cmd: /opt/vlang/thirdparty/tcc/tcc.exe "@/tmp/v/vls.3261355545972556428.tmp.c.rsp"
=====================
519.632  ms C tcc.exe
>> remove tmp file: /tmp/v/vls.3261355545972556428.tmp.c
>> remove tmp file: /tmp/v/vls.3261355545972556428.tmp.c.rsp
/opt/vlang/thirdparty/tcc/tcc.exe
=========

Trying to build VLS in dev-container https://github.com/stereobooster/v-vscode-remote-development-template

Initialize message does not get parsed correctly

On Windows, the following initialize message

Content-Length: 2284

{"jsonrpc": "2.0", "id": 0, "method": "initialize", "params": {"processId": 2020, "rootUri": "file:///D:/scripts/v", "initializationOptions": {}, "capabilities": {"workspace": {"applyEdit": true, "workspaceEdit": {"documentChanges": false}, "didChangeConfiguration": {"dynamicRegistration": false}, "didChangeWatchedFiles": {"dynamicRegistration": false}, "symbol": {"dynamicRegistration": true, "symbolKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]}}, "executeCommand": {"dynamicRegistration": true}, "configuration": true, "workspaceFolders": true}, "textDocument": {"publishDiagnostics": {"relatedInformation": true}, "synchronization": {"dynamicRegistration": true, "willSave": true, "willSaveWaitUntil": false, "didSave": true}, "completion": {"dynamicRegistration": true, "contextSupport": true, "completionItem": {"snippetSupport": true, "commitCharactersSupport": true, "documentationFormat": ["markdown", "plaintext"], "deprecatedSupport": true}, "completionItemKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]}}, "hover": {"dynamicRegistration": true, "contentFormat": ["markdown", "plaintext"]}, "signatureHelp": {"dynamicRegistration": true, "signatureInformation": {"documentationFormat": ["markdown", "plaintext"]}}, "definition": {"dynamicRegistration": true}, "references": {"dynamicRegistration": true}, "documentHighlight": {"dynamicRegistration": true}, "documentSymbol": {"dynamicRegistration": true, "symbolKind": {"valueSet": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]}}, "codeAction": {"dynamicRegistration": true}, "codeLens": {"dynamicRegistration": true}, "formatting": {"dynamicRegistration": true}, "rangeFormatting": {"dynamicRegistration": true}, "onTypeFormatting": {"dynamicRegistration": true}, "rename": {"dynamicRegistration": true}, "documentLink": {"dynamicRegistration": true}, "typeDefinition": {"dynamicRegistration": true}, "implementation": {"dynamicRegistration": true}, "colorProvider": {"dynamicRegistration": true}, "foldingRange": {"dynamicRegistration": false, "rangeLimit": 5000, "lineFoldingOnly": true}}}, "trace": "off", "workspaceFolders": null}}

does result in a -32700 Invalid Json message.

Content-Length: 96\r\r\n  <-- seems to be wrong, there is a \n missing
{"jsonrpc":"2.0","id":0,"error":{"code":-32700,"message":"Invalid JSON.","data":""},"result":""}

Similar messages sent to rls (rust language server) or pyls (python language server) are working.

latest vls can't compile

Hi there. It seems that I couldn't compile the latest version of vls using the compiler from vlang website (v0.2). I'm using Linux. Here's the error, ask me for more detail if needed. Thanks in advance!

image

Document outline is ordered alphabetically and not as in the code

Take for example the first part of the outline for fmt.v. All entries are sorted in alphabetical order and not as they show up in the actual file.
This is a lot harder to use for developers that are somewhat familiar with the source and doesn't help newcomers to get there.
image

vls: displays other methods coming from 'builtin' modules

Issue description

VLS import suggestion is displaying bunch of other methods from the builtin module?

Steps to reproduce the issue

  1. Set up VLS with VScode
  2. type import and press space bar and look for suggestions.

What's the expected result?

When user types: import and space bar to see for suggestions. It should display every modules first like in the example A:

IMAGE A
As you can see, on the image A, the Go's language server displays in a clean format of the modules.


What's the actual result?

The VLS is recommending modules with builtin methods? (this was discussed on Discord at #vls text-chat). Look at the image B

IMAGE B
Image B, the VLS displays modules from builtin.

There was a discussion on discord regarding the methods were coming from the builtin module. Could it be better if it didn't clutter? Or maybe we can make a flag where user can explicitly ask the VLS to display these methods?

LSP does not work

I am use:

I want to use the LSP in VS Code and get this error:

Error code (click to show)
[Info  - 22:05:08] VLS Version: 0.0.1, OS: windows 64
[Info  - 22:05:08] Client / Editor: Visual Studio Code 1.54.3
print_backtrace_skipping_top_frames is not implemented
[Info  - 22:05:08] Connection to server got closed. Server will restart.
[Error - 22:05:08] Request textDocument/codeLens failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:53238)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:54023)
	at Socket.emit (events.js:315:20)
	at Pipe.<anonymous> (net.js:674:12)
[Error - 22:05:08] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:53238)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:54023)
	at Socket.emit (events.js:315:20)
	at Pipe.<anonymous> (net.js:674:12)
[Info  - 22:05:09] VLS Version: 0.0.1, OS: windows 64
[Info  - 22:05:09] Client / Editor: Visual Studio Code 1.54.3
print_backtrace_skipping_top_frames is not implemented
[Info  - 22:05:09] Connection to server got closed. Server will restart.
[Error - 22:05:09] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at m.fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:49666)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:51251)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:674:12)
[Info  - 22:05:09] VLS Version: 0.0.1, OS: windows 64
[Info  - 22:05:09] Client / Editor: Visual Studio Code 1.54.3
print_backtrace_skipping_top_frames is not implemented
[Info  - 22:05:09] Connection to server got closed. Server will restart.
[Error - 22:05:09] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at m.fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:49666)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:51251)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:674:12)
[Info  - 22:05:09] VLS Version: 0.0.1, OS: windows 64
[Info  - 22:05:09] Client / Editor: Visual Studio Code 1.54.3
print_backtrace_skipping_top_frames is not implemented
[Info  - 22:05:09] Connection to server got closed. Server will restart.
[Error - 22:05:09] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at m.fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:49666)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:51251)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:674:12)
[Info  - 22:05:09] VLS Version: 0.0.1, OS: windows 64
[Info  - 22:05:09] Client / Editor: Visual Studio Code 1.54.3
print_backtrace_skipping_top_frames is not implemented
[Error - 22:05:09] Connection to server got closed. Server will not be restarted.
[Error - 22:05:09] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:39411)
	at Object.dispose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119583)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:119796)
	at w.handleConnectionClosed (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:180184)
	at t (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:117885)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at Y (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:28669)
	at r.invoke (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41024)
	at o.fire (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:41785)
	at m.fireClose (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:49666)
	at Socket.<anonymous> (c:\Users\koplenov\.vscode\extensions\vlanguage.vscode-vlang-0.1.8\out\extension.js:1:51251)
	at Socket.emit (events.js:327:22)
	at Pipe.<anonymous> (net.js:674:12)

On this block of code:

import vweb

struct App {
    vweb.Context
}

fn main() {
	vweb.run<App>(8080)
}

['/hello/:user']
fn (mut app App) hello_user(user string) vweb.Result {
    return app.text('Hello $user')
}

Unify text document URI conversion methods

Currently there are three methods for converting the text document URI from an LSP request to a real filesystem path and vice versa: fspath_to_uri_str, fspath_to_uri, uri_str_to_fspath each with different return types (all except for fspath_to_uri_str returns an option). Would be cool if we can simplify things and boil down to two functions

Compile with -autofree

Just a reminder to compile vls with -autofree whenever there are new changes to the autofree engine aspect of the compiler. Compiling it with -autofree right now causes C errors.

VLS can't compile

V 0.2 a2cd1b1 on Big Sur

git clone https://github.com/nedpals/vls2.git vls && cd vls/
v -prod cmd/vls

lsp/signature_help.v:36:12: error: cannot register struct lsp.SignatureInformation, another type with this name exists
34 | }
35 |
36 | pub struct SignatureInformation {
| ~~~~~~~~~~~~~~~~~~~~
37 | pub mut:
38 | label string

Server crashes with invalid code.

I've accidentally typed a ? inside an interface definition and noticed that it crashed the server. I did something like this:

interface MyInterface {
  ?duh() string
}

That was the error:

V panic: get_type_symbol: invalid type (typ=0 idx=0). Compiler bug. This should never happen. Please create a GitHub issue.

0   vls                                 0x000000010b205498 v__checker__Checker_check + 408
1   vls                                 0x000000010b226890 vls__Vls_process_file + 3344
2   vls                                 0x000000010b23256e vls__Vls_start_loop + 62
3   vls                                 0x000000010b2335d2 main__run_cli + 3378
4   vls                                 0x000000010b16c687 cli__Command_parse + 5047
5   vls                                 0x000000010b238193 main + 1731
6   vls                                 0x000000010b156f94 start + 52

VLS get_type_symbol invalid type

Opened up vscodium.

[Info  - 15:36:01] VLS Version: 0.0.1, OS: windows 64
[Info  - 15:36:01] Client / Editor: VSCodium 1.54.3
V panic: get_type_symbol: invalid type (typ=0 idx=0). Compiler bug. This should never happen. Please create a GitHub issue.

print_backtrace_skipping_top_frames is not implemented
[Error - 15:36:02] Connection to server is erroring. Shutting down server.
[Error - 15:36:02] Connection to server is erroring. Shutting down server.
[Error - 15:36:02] Connection to server is erroring. Shutting down server.
[Error - 15:36:02] Connection to server is erroring. Shutting down server.
[Error - 15:36:02] Connection to server is erroring. Shutting down server.

Output of v version

V 0.2.2 92f19f5

vls uses >80% ram (of 8GB)

using this test file:

import gg
fn main()
{
  gg.
}

If I trigger autocomplete on the gg. the vls ram usage quickly balloons and freezes the system until I sysrq+f.
I'm using nvim-lspconfig instead of vscode but I don't think that should change too much.

formatter incorrectly removes lines

I have a file named decbin.v:

fn decbin(n u64) string {
    mut s := ''
    mut u := n

    for u > 0 {
        s += if u & 1 == 1 { '1' } else { '0'}
        u = u >> 1
    }

    return s.reverse()
}

println(decbin(7))
println(decbin(64))
println(decbin(-4))

When this file is saved, the 3 println lines at the end (plus the blank line above them) are stripped from the file. Not good.

Perfectly valid V file, runs fine as-is.

V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`

If you type ''. into Visual Studio Code with VLS running (vls from HEAD and V from HEAD), it crashes with the exception below.

Here is a video:

Screen.Recording.2021-04-08.at.10.43.00.PM.mov
[Info  - 10:42:47 PM] VLS Version: 0.0.1, OS: macos 64
[Info  - 10:42:47 PM] Client / Editor: Visual Studio Code 1.55.1
V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`
0   vls                                 0x0000000106bb4304 vls__Vls_completion + 5476
1   vls                                 0x0000000106bcd7ae vls__Vls_start_loop + 62
2   vls                                 0x0000000106bce9da main__run_cli + 3834
3   vls                                 0x0000000106adeef7 cli__Command_parse + 5031
4   vls                                 0x0000000106bd36c9 main + 1737
5   vls                                 0x0000000106ac8f14 start + 52
6   ???                                 0x0000000000000001 0x0 + 1
[Info  - 10:43:05 PM] Connection to server got closed. Server will restart.
[Error - 10:43:05 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/codeLens failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/completion failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Info  - 10:43:05 PM] VLS Version: 0.0.1, OS: macos 64
[Info  - 10:43:05 PM] Client / Editor: Visual Studio Code 1.55.1
V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`
0   vls                                 0x0000000106c1c304 vls__Vls_completion + 5476
1   vls                                 0x0000000106c357ae vls__Vls_start_loop + 62
2   vls                                 0x0000000106c369da main__run_cli + 3834
3   vls                                 0x0000000106b46ef7 cli__Command_parse + 5031
4   vls                                 0x0000000106c3b6c9 main + 1737
5   vls                                 0x0000000106b30f14 start + 52
6   ???                                 0x0000000000000001 0x0 + 1
[Info  - 10:43:05 PM] Connection to server got closed. Server will restart.
[Error - 10:43:05 PM] Request textDocument/completion failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:05 PM] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Info  - 10:43:05 PM] VLS Version: 0.0.1, OS: macos 64
[Info  - 10:43:05 PM] Client / Editor: Visual Studio Code 1.55.1
V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`
0   vls                                 0x0000000105028304 vls__Vls_completion + 5476
1   vls                                 0x00000001050417ae vls__Vls_start_loop + 62
2   vls                                 0x00000001050429da main__run_cli + 3834
3   vls                                 0x0000000104f52ef7 cli__Command_parse + 5031
4   vls                                 0x00000001050476c9 main + 1737
5   vls                                 0x0000000104f3cf14 start + 52
6   ???                                 0x0000000000000001 0x0 + 1
[Info  - 10:43:06 PM] Connection to server got closed. Server will restart.
[Error - 10:43:06 PM] Request textDocument/completion failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:06 PM] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Info  - 10:43:06 PM] VLS Version: 0.0.1, OS: macos 64
[Info  - 10:43:06 PM] Client / Editor: Visual Studio Code 1.55.1
V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`
0   vls                                 0x00000001017d5304 vls__Vls_completion + 5476
1   vls                                 0x00000001017ee7ae vls__Vls_start_loop + 62
2   vls                                 0x00000001017ef9da main__run_cli + 3834
3   vls                                 0x00000001016ffef7 cli__Command_parse + 5031
4   vls                                 0x00000001017f46c9 main + 1737
5   vls                                 0x00000001016e9f14 start + 52
6   ???                                 0x0000000000000001 0x0 + 1
[Info  - 10:43:06 PM] Connection to server got closed. Server will restart.
[Error - 10:43:06 PM] Request textDocument/completion failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:06 PM] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Info  - 10:43:06 PM] VLS Version: 0.0.1, OS: macos 64
[Info  - 10:43:06 PM] Client / Editor: Visual Studio Code 1.55.1
V panic: as cast: cannot cast `v.ast.StringLiteral` to `v.ast.Ident`
0   vls                                 0x0000000109a80304 vls__Vls_completion + 5476
1   vls                                 0x0000000109a997ae vls__Vls_start_loop + 62
2   vls                                 0x0000000109a9a9da main__run_cli + 3834
3   vls                                 0x00000001099aaef7 cli__Command_parse + 5031
4   vls                                 0x0000000109a9f6c9 main + 1737
5   vls                                 0x0000000109994f14 start + 52
6   ???                                 0x0000000000000001 0x0 + 1
[Error - 10:43:06 PM] Connection to server got closed. Server will not be restarted.
[Error - 10:43:06 PM] Request textDocument/completion failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)
[Error - 10:43:06 PM] Request textDocument/documentSymbol failed.
Error: Connection got disposed.
    at Object.connectionOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:1045:52)
    at Object._clientOptions [as dispose] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2414:123)
    at w.fillInitializeParams (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2432:27)
    at w.this [as handleConnectionClosed] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/node/main.js:158:15)
    at t (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-languageclient/lib/common/client.js:2413:45)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.timer [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at Y (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/connection.js:274:33)
    at r._callbacks [as invoke] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:64:5)
    at o.partialMessageEmitter [as fire] (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/events.js:122:18)
    at m.fireClose (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:43:21)
    at Socket.<anonymous> (/Users/jarred/.vscode/extensions/vlanguage.vscode-vlang-0.1.8/node_modules/vscode-jsonrpc/lib/common/messageReader.js:131:45)
    at Socket.emit (events.js:327:22)
    at Pipe.<anonymous> (net.js:674:12)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.