Commit Graph

1125 Commits

Author SHA1 Message Date
nullptrdevs
55b1aeb6f7
Avoid accessing inactive union fields in completeDot (#1115)
As reported on Discord by CodotakuYT:
```zig
fn populate(T: type, index: i32) T {
    _ = index;
    @typeInfo(T).struct.
}
```
```
thread 17384 panic: access of union field 'ast_node' while field 'param_payload' is active
C:\Users\taoua\zls\src\features\completions.zig:875:61: 0x7ff68070caac in completeDot (zls.exe.obj)
                const node_data = nodes_data[local_decl.decl.ast_node];
```
2023-04-05 10:28:21 -04:00
Auguste Rame
7814a05921
Remove format lt 512 diff restriction (#1109) 2023-04-04 16:23:44 -04:00
Auguste Rame
ace6d7f32b
Remove outdated diagnostics check (#1106) 2023-04-03 13:42:22 -04:00
Auguste Rame
471d971d1d
Merge pull request #1000 from Techatrix/stage2-zir
Embed AstGen into ZLS
2023-04-01 23:08:40 -04:00
Auguste Rame
99af009232
Disable build file config runs for WASI (#1102) 2023-04-01 23:07:38 -04:00
Techarix
018569888f explain how AstGen will diverge from zig codebase 2023-04-01 23:03:51 +02:00
Techarix
4215edbc33 add support for running ast-check without zig 2023-04-01 23:03:51 +02:00
Techarix
c06cf6e95c add zig code for generating Zir 2023-04-01 22:44:56 +02:00
Auguste Rame
8b5c649805
Add anytype resolution based on call references (#1067) 2023-03-31 11:54:46 -04:00
Auguste Rame
c217502670
Make Analyser use its own arena (#1101) 2023-03-29 14:36:32 -04:00
Techatrix
9a7d262e6c only include snippet completions when enable_snippet is set 2023-03-26 16:20:15 +01:00
Techatrix
90b468ac9f update snippet data 2023-03-26 16:20:15 +01:00
Techatrix
29037f2f05 disable .fixall autofix mode 2023-03-26 16:19:38 +01:00
Techatrix
283ca0006d Apply suggestions from code review
Co-authored-by: Lee Cannon <leecannon@leecannon.xyz>
2023-03-26 16:19:00 +01:00
Techatrix
4b042a562a exclude default cimport declarations from completions 2023-03-26 16:19:00 +01:00
Lee Cannon
f24fcc2b1e
disable cimport resolution (#1091) 2023-03-23 13:28:42 -04:00
Techatrix
1e733a8782 fix block label completion test 2023-03-23 15:13:33 +00:00
Techatrix
84228a612e improve source location of block scope with invalid ast 2023-03-23 15:13:33 +00:00
Techatrix
7e652a5527 refactor document scope creation to be more aware of block expressions 2023-03-23 15:13:33 +00:00
Techatrix
53c7e5bed7 remove TODO's about redefinition errors i favor of ast-check 2023-03-23 15:13:33 +00:00
Techatrix
419527a40d update handling of some node tags in makeScopeInternal 2023-03-23 15:13:33 +00:00
Techatrix
775c38f5f5 implement document scope creation for array_type_sentinel 2023-03-23 15:13:33 +00:00
Techatrix
72228e2b41 fix printDocumentScope 2023-03-23 15:13:33 +00:00
Veikka Tuominen
61b42ca63a make semantic token configuration an enum 2023-03-23 15:02:12 +00:00
nullptrdevs
e1d90a1a1b More . completion 2023-03-23 15:01:23 +00:00
nullptrdevs
9723a92508 Struct init fields completion. 2023-03-21 17:46:33 +00:00
Lee Cannon
a9295769e7
hack latest build changes (#1077) 2023-03-18 20:50:26 -04:00
Techatrix
4b034f1afb
Rework file structure (#1069)
* move language feature files into separate folder

* move code completions into features/completions.zig

* move goto definition/declaration into features folder

* move hover into features folder

* restructure imports

* move selection range into features folder

* restructure request handling tracy call

* add missing features to `zls.zig`
2023-03-17 23:01:41 +01:00
Auguste Rame
3586a7858e
Fix scope creation for label blocks (#1074) 2023-03-17 15:02:51 -04:00
Techatrix
0aacb76743
support enums in config_gen (#1072)
* support enum types in config_gen

* fix typo
2023-03-17 02:27:35 -04:00
Techatrix
12014cd93d fix typos 2023-03-15 17:34:23 +01:00
Lee Cannon
985e7069a2
tracy: workaround zig bug (#1066) 2023-03-15 11:59:56 -04:00
Techatrix
c2d15bfc9a only return block scopes from innermostBlockScope 2023-03-14 15:16:30 +00:00
Techatrix
487281f8e2 improve variable lookup performance 2023-03-14 15:16:30 +00:00
Techatrix
f5897569c4 do not store Handle pointer in Analyser 2023-03-14 15:16:30 +00:00
Techatrix
9d7012596a replace unnecessary std.ArrayListUnmanaged in document scope 2023-03-14 15:16:30 +00:00
Techatrix
ea02e4364f remove had_root global 2023-03-14 15:16:30 +00:00
Techatrix
0ff0a193cc simplify analysis by introducing a Analysis Struct 2023-03-14 15:16:30 +00:00
Techatrix
865e5efe8b refactor semantic tokens 2023-03-14 14:56:11 +00:00
Techatrix
bbc082d102 update config gen to work with vscode-zig 2023-03-14 14:27:18 +00:00
Techatrix
dc7efa591c resolve relative include directories 2023-03-14 14:25:13 +00:00
Auguste Rame
ef4a0607fb
Add some more basic overflow checks (#1055) 2023-03-12 01:53:05 -05:00
Techatrix
a959f161e9
find references on test decl with identifier name (#1051) 2023-03-12 01:24:54 -05:00
Techatrix
ab23ff3616
Optimize document symbols (#1050)
* optimize document symbol generation

* match folding range index to position conversion and documentation to document symbol's

* skip function decls with no name

* skip document symbol field in opaque type
2023-03-12 01:24:42 -05:00
Techatrix
c203110555
more tracy calls (#1052) 2023-03-11 13:43:14 -05:00
Techatrix
ff467f9878
InternPool: add more helper functions and debug formatting (#1043) 2023-03-11 12:37:06 -05:00
Techatrix
333fcb5633
minor semantic token fixes (#1044)
* improve analysis and highlighting of error sets

* emit semantic token for unresolved identifiers

* minor semantic token fixes
2023-03-11 12:36:48 -05:00
Techatrix
3c26892c7e
limit maximum detail length at 1024 bytes (#1048) 2023-03-10 20:06:17 -05:00
Techatrix
ed91fd3823 fix leak in openDocument 2023-03-08 21:52:26 +01:00
Techatrix
d5ac6b9734 rework nodesAtLoc 2023-03-07 09:38:18 -08:00