Commit Graph

1499 Commits

Author SHA1 Message Date
Aleksey Kladov
ea05916e69 Goto definition works when the cursor is at the start of the identifier.
Before, the code lexed only a prefix of the line up to cursor position.
Now, we lex the entire line, and do look at the token just after the
cursor.

This subtly changes sematncih of `getPostionContext`: now it is becomes
oblivious of the _exact_ position of the cursor and returns the whole
token at cursor's position.

I believe this is semantically right approach -- _most_ of the callsite
should not worry at all about such details. Something like completion
_might_ want to know more, but it's better to make that call site's
problem.

It might be the case that some existing code relies on the past
behavior. It's hard to tell though -- we don't have a lot of tests for
_features_, and changes to unit-tests don't explain if the changes are
meaningful for user-observable behavior or not.

In general, for LSP-shaped thing, I feel that the bulk of testing should
be focused on end-to-end behaviors....
2023-01-21 18:31:26 +00:00
Techatrix
1ed8d49b30
fix builtin completions if label_details_support is false (#924) 2023-01-20 19:33:27 -05:00
Techatrix
3085c3e153 implement big int 2023-01-20 22:39:19 +01:00
Techatrix
89ac9d00f5 add more interpreter tests 2023-01-20 22:25:19 +01:00
Techatrix
6d12c640ee add initial completions on InternPool 2023-01-20 22:24:39 +01:00
Techatrix
ba42fd2bb9 Merge branch 'master' into intern-pool 2023-01-20 22:23:44 +01:00
Techatrix
bcd2b7f1ae report interpreter errors in tests 2023-01-20 19:55:53 +01:00
Techatrix
861e2ffb05 add formatting to recordError 2023-01-20 19:55:26 +01:00
Techatrix
ea7fc74483 add more comptime interpreter tests 2023-01-20 19:29:03 +01:00
Techatrix
1e73ac91e5 small comptime interpreter refactor 2023-01-20 19:28:25 +01:00
Techatrix
b4ac6142cf correctly resolve primitive types 2023-01-20 19:20:42 +01:00
Techatrix
34b2643b33 add basic comptime interpreter tests 2023-01-20 17:06:16 +01:00
Techatrix
06fcfcb3db add internpool to test steps 2023-01-20 17:04:59 +01:00
Techatrix
4a8fe90d23 add coerceInMemoryAllowed integer & float tests 2023-01-20 15:34:49 +01:00
Techatrix
a145dbb616 remove panics from release builds 2023-01-20 15:26:00 +01:00
Techatrix
3d95b203f2 coerce in memory improvements 2023-01-20 15:08:52 +01:00
Techatrix
bdf143eaa6 implement onePossibleValue 2023-01-20 15:08:08 +01:00
Techatrix
666e3b0e7c add function pointer peer type tests 2023-01-19 21:08:04 +01:00
Techatrix
5c20650143 refactor pointer peer type tests 2023-01-19 19:50:19 +01:00
Techatrix
eca9fc2f20 add expectEqualTypes 2023-01-19 19:49:46 +01:00
Techatrix
ea608a47ea peer type resolution improvements 2023-01-19 19:16:19 +01:00
Techatrix
1e3d9579ca improve peer type resolution test failure message 2023-01-19 19:15:52 +01:00
Techatrix
fa5828496e
Generate data files in config_gen.zig (#903)
* generate data files in config_gen.zig

* remove trailing comma from config.json

* update README.md

* run zig build gen

* handle some unclosed tags

* update data file header

* generate new data files

* remove old data file generators
2023-01-19 01:46:42 -05:00
Techatrix
0c24f8e2a9 update pointer type tests 2023-01-17 20:49:11 +01:00
Techatrix
985cfb6d06 implement union values 2023-01-17 20:37:34 +01:00
Techatrix
30f919d854 optimize hashing and equality checks on structs 2023-01-17 20:36:33 +01:00
Techatrix
2ea97a050b improve Function memory layout 2023-01-17 20:35:42 +01:00
Techatrix
fb3a4238d7 update tests 2023-01-17 20:32:49 +01:00
Techatrix
407f921ef8 refactor type printing 2023-01-17 20:23:27 +01:00
Alex Kladov
6949989ece
Allow setting test filter in zig build test (#909)
Example usage:

  $ zig build test -Dtest-filter=definition
2023-01-17 12:40:26 -05:00
Auguste Rame
93abb8cdd5
Fix bypass not having value on PR&commit (#920) 2023-01-16 20:49:28 -05:00
Auguste Rame
52df02c0f1
Add fuzzing on deploy (#918) 2023-01-16 20:15:12 -05:00
Techatrix
9e74afada6
show better zig/zls version mismatch messages (#917)
* show better zig/zls version mismatch messages

* always show message if versions don't match

* ignore patch
2023-01-16 13:49:00 -05:00
Techatrix
af85a9550d
simplify formatting handler (#916) 2023-01-16 13:47:55 -05:00
Techatrix
4e4761b34c
fix use after free for builtin completions (#914) 2023-01-16 13:47:06 -05:00
Techatrix
8d53a5382d
resolve type of @typeInfo (#915) 2023-01-16 13:46:33 -05:00
Techarix
739bd08b7b fix storage of negative signed integer values 2023-01-16 12:38:35 +01:00
Techatrix
82e3ab9f2e more tests 2023-01-15 18:25:00 +01:00
Techatrix
45f03ca239 add bit_offset & host_size to Pointer 2023-01-15 15:41:54 +01:00
Techatrix
f5188c4407 update test 2023-01-14 21:54:45 +01:00
Techatrix
bdf207a821 small refactor on ComptimeInterpreter 2023-01-14 21:49:27 +01:00
Techatrix
d49979d002 remove arena from ComptimeInterpreter 2023-01-14 21:30:52 +01:00
Techatrix
969efdfba0 more tests 2023-01-14 21:27:55 +01:00
Techatrix
5dca172c31 small cleanup 2023-01-14 19:51:44 +01:00
Techatrix
1456bfa1c6 refactor InternPool KeyAdapter 2023-01-14 19:17:06 +01:00
Techatrix
04d281340c restructure ComptieInterpreter tests 2023-01-14 14:08:15 +01:00
Techatrix
98899ed0cf some ComptieInterpreter work 2023-01-14 14:07:52 +01:00
Alex Kladov
61fa98065f
fix use after free (#911) 2023-01-11 20:18:37 +00:00
Lee Cannon
20d29fd491
move log overrides into std_options (#902) 2023-01-10 16:52:03 -05:00
Techatrix
bbbd54498d
check submodules in build.zig (#904) 2023-01-10 13:36:28 +01:00