Delyan Angelov
|
071549baae
|
v.util: fix an out of bounds panic in mod_path_to_full_name/2
|
2021-01-20 18:22:58 +02:00 |
Alexander Medvednikov
|
57af8570fe
|
tests: another pointer struct test
|
2021-01-20 09:24:12 +01:00 |
joe-conigliaro
|
97ebecc5f4
|
usecache: get all tests running with -usecache enabled by default (p.1) (#7699)
|
2021-01-20 06:04:59 +01:00 |
yuyi
|
985ef52872
|
cgen: fix child struct's default values not assigned (#8202)
|
2021-01-19 17:10:22 +01:00 |
Delyan Angelov
|
d9532eda30
|
checker: error on a.slice(x,y) outside `builtin`
|
2021-01-19 15:55:52 +02:00 |
Tim Basel
|
129eee346b
|
fmt: keep single empty lines (#8189)
|
2021-01-19 14:49:40 +01:00 |
Ruofan XU
|
103901a5cb
|
example/test: add a binary search tree example and test (#8145)
|
2021-01-19 15:18:38 +02:00 |
Uwe Krüger
|
5067046538
|
parser: support `x = a[k] ?` propagation for arrays and maps (#8199)
|
2021-01-19 14:46:47 +02:00 |
yuyi
|
15cc1cd884
|
cgen: fix high order map assignment (#8198)
|
2021-01-19 14:31:24 +02:00 |
Lukas Neubert
|
ca70d815b6
|
fmt: move StructDecl comments handling into functions (#8191)
|
2021-01-19 10:43:48 +01:00 |
Delyan Angelov
|
85bcfdd636
|
checker: handle `a[i] or { statements expr }` the same as the other or blocks
|
2021-01-19 09:28:34 +02:00 |
Delyan Angelov
|
24d1ec2714
|
vfmt: support `a[i] or { panic(err) }` too
|
2021-01-19 08:42:56 +02:00 |
Delyan Angelov
|
7037965973
|
parser: cleanup unused `p.os_from_string`
|
2021-01-19 08:33:03 +02:00 |
Lukas Neubert
|
b44c08aff0
|
fmt: wrap match branch expressions (#8190)
|
2021-01-19 06:16:42 +01:00 |
Uwe Krüger
|
b74690cbec
|
builtin, checker, cgen: implement `x = a[k] or { ... }` for maps and arrays (#8193)
|
2021-01-19 06:06:57 +01:00 |
yuyi
|
a65b73d3e4
|
cgen: fix for_in_fixed_array (fix #8186) (#8195)
|
2021-01-19 05:50:23 +01:00 |
Uwe Krüger
|
5cc591b2b6
|
all: support generic `chan` (#8188)
|
2021-01-18 18:37:45 +01:00 |
Swastik Baranwal
|
6f1ae65811
|
parser: add a warning for only else branch in match (#8185)
|
2021-01-18 18:31:36 +02:00 |
Delyan Angelov
|
f375418847
|
parser: remove forgotten eprintln statement
|
2021-01-18 14:57:10 +02:00 |
Lukas Neubert
|
ac2c3847af
|
all: update copyright to 2019-2021 (#8029)
|
2021-01-18 13:20:06 +01:00 |
yuyi
|
5ddb70940e
|
cgen: fix map_fixed_arrays str error (fix #8170) (#8178)
|
2021-01-18 10:34:29 +01:00 |
Delyan Angelov
|
17266ecb07
|
tools: support cmd/tools/.disable_autorecompilation in `v up` and `v self` too
|
2021-01-18 09:33:33 +02:00 |
Delyan Angelov
|
72790cda83
|
v.util: support cmd/tools/.disable_autorecompilation
|
2021-01-18 08:43:20 +02:00 |
yuyi
|
6c87c25ef1
|
cgen: fix `for _,mut j in arr` for fixed arrays (fix #8163) (#8167)
|
2021-01-18 06:05:38 +01:00 |
yuyi
|
73fd4396c3
|
parser: fix fixed array using const size (fix #8144) (#8161)
|
2021-01-18 06:03:03 +01:00 |
Lukas Neubert
|
16c9cbce7c
|
fmt: correctly increase f.line_len for write_indent (#8174)
|
2021-01-18 06:02:29 +01:00 |
Delyan Angelov
|
75af639721
|
checker: allow ptr++/ptr-- in unsafe{}, for any kind of pointer, except voidptr
|
2021-01-17 18:09:25 +02:00 |
BigBlack
|
28ed4da1ce
|
cgen: fix `array_slice(*a, 0, a.len)` C error, generated for `a[..a.len]`, for a `mut a []int` (#8168)
|
2021-01-17 17:22:23 +02:00 |
Swastik Baranwal
|
334b66b311
|
checker/cgen: add checks and fix cgen for [typedef] for C structs (#8169)
|
2021-01-17 17:18:07 +02:00 |
Uwe Krüger
|
e4850cd6dd
|
cgen: fix `for` iteration over fixed array literal (#8159)
|
2021-01-17 10:44:15 +01:00 |
Alexander Medvednikov
|
a008c8254c
|
parser: comptime: update tmpl_path
|
2021-01-17 06:42:21 +01:00 |
Alexander Medvednikov
|
ac8a7ac901
|
parser: bootstrap the new struct init check
|
2021-01-17 06:30:30 +01:00 |
Alexander Medvednikov
|
2b058edc98
|
checker: do not require ref field init with update expr
|
2021-01-17 06:24:03 +01:00 |
Nick Treleaven
|
df39e7001c
|
parser: support `module:` for immutable private struct fields (#8140)
|
2021-01-17 05:39:44 +01:00 |
yuyi
|
9376c57a51
|
cgen: fix for_in_mut_val (fix #8087) (#8129)
|
2021-01-17 05:32:34 +01:00 |
Lukas Neubert
|
3e44816e44
|
fmt: minor code cleanup (#8147)
|
2021-01-17 05:32:10 +01:00 |
Nick Treleaven
|
5185a59ac7
|
parser: use Parser.builtin_mod instead of checking p.mod (#8137)
|
2021-01-17 05:31:41 +01:00 |
Nick Treleaven
|
8ee67d1c1c
|
parser: disallow indexing on next line at top-level (#8128)
|
2021-01-17 05:30:41 +01:00 |
Lukas Neubert
|
371730f8a8
|
fmt: correct indent for StructDecl multi line default exprs (#8148)
|
2021-01-17 05:01:55 +01:00 |
Swastik Baranwal
|
ef627c9d21
|
checker: improve message and positioning for operator overloading (#8133)
|
2021-01-17 03:37:44 +01:00 |
Delyan Angelov
|
5ae55731b9
|
embed: move to `v.embed_file`, fix CI failing test
|
2021-01-16 20:03:07 +02:00 |
Delyan Angelov
|
d258733752
|
pkgconfig: add more .pc sample files. `abc,xyz` => `abc xyz` in `Requires:`
|
2021-01-16 18:03:01 +02:00 |
Delyan Angelov
|
5c3ef588c3
|
live: move to vlib/v/live
|
2021-01-16 15:05:01 +02:00 |
Delyan Angelov
|
8571d9395b
|
preludes: move to vlib/v/preludes
|
2021-01-16 14:43:24 +02:00 |
Delyan Angelov
|
80d1aadc50
|
ci: fix check-markdown for vlib/v/pkgconfig/README.md
|
2021-01-16 14:34:14 +02:00 |
Delyan Angelov
|
1a8a1ceb0a
|
pkgconfig,flag: add tests to pkgconfig, fix bugs and links, improve flag.usage()
|
2021-01-16 12:04:31 +02:00 |
Daniel Däschle
|
53941c4a0a
|
fmt: fix if cond break readability (#8132)
|
2021-01-16 02:12:17 +01:00 |
Uwe Krüger
|
2f7a66386e
|
docs: document `go` with handle and `wait()` (#8142)
|
2021-01-15 23:40:26 +02:00 |
Delyan Angelov
|
c4c4b9c7b1
|
gen,checker: implement g.trace/2 and c.trace/2, similar to p.trace/2
|
2021-01-15 20:28:53 +02:00 |
Delyan Angelov
|
263fb7d7a8
|
checker: fix `instance.cb_field(mut arg)`
|
2021-01-15 20:28:42 +02:00 |
Uwe Krüger
|
1c6fe83408
|
parser: fix parsing of `go` call expression (#8138)
|
2021-01-15 19:47:49 +02:00 |
Ruofan XU
|
5de287a6e7
|
tests: add test of sumtype-based binary tree (#8121)
|
2021-01-15 15:10:30 +02:00 |
Uwe Krüger
|
8d014d4646
|
sync: allow `go` routine join with return value (#8125)
|
2021-01-15 13:45:26 +01:00 |
BigBlack
|
80008a40e2
|
fix fixed_array slice ommit high_value (#8025)
|
2021-01-15 10:28:20 +01:00 |
Lukas Neubert
|
57dd511c9d
|
fmt: move all exprs and stmts to their own methods (#8107)
|
2021-01-15 10:26:33 +01:00 |
yuyi
|
0945efebf1
|
cgen: fix anon_fn_call (#8120)
|
2021-01-15 10:25:30 +01:00 |
yuyi
|
c6099df418
|
cgen: fix c struct str method (#8117)
|
2021-01-15 07:51:28 +01:00 |
Lukas Neubert
|
20c80db426
|
fmt: move comments related methods to extra file (#8028)
|
2021-01-15 07:51:07 +01:00 |
Swastik Baranwal
|
0ca36aafe2
|
cgen: allow assignment operators for type aliases (#8086)
|
2021-01-15 02:27:19 +01:00 |
Nick Treleaven
|
c80cc917c7
|
checker: check casting struct -> interface; disallow casting struct -> interface pointer (#8110)
|
2021-01-15 01:20:58 +01:00 |
zakuro
|
c39f0a7cb7
|
ast: add str for AssertStmt (#8021)
|
2021-01-15 00:17:26 +01:00 |
Nick Treleaven
|
127503c77d
|
checker: disallow indexing a voidptr (#8109)
|
2021-01-14 20:51:43 +02:00 |
Nick Treleaven
|
890fb2d09d
|
checker: show signature for interface method on error (#8111)
|
2021-01-14 20:50:06 +02:00 |
Larpon
|
f73500f2fe
|
all: add support for the `x := $embed_file('v.png')` compile time call (#8048)
|
2021-01-14 16:20:11 +02:00 |
Delyan Angelov
|
adf084eeed
|
cgen: fix address violations for `return error(abc)`, reduce leaks in `os`
|
2021-01-14 04:58:26 +02:00 |
yuyi
|
a2efb5319d
|
all: change `[1,2,3]!!` to `[1,2,3]!` (#8101)
|
2021-01-14 03:51:13 +01:00 |
zakuro
|
c8bcee9639
|
ast: add str for comment (#8019)
|
2021-01-14 02:21:27 +01:00 |
zakuro
|
fdf5f5003b
|
ast: add str for ArrayInit (#8022)
|
2021-01-14 02:21:19 +01:00 |
Nick Treleaven
|
0f2a770b9c
|
checker: improve errors for interface method compatibility (#8097)
|
2021-01-13 23:44:29 +01:00 |
zakuro
|
47536df2d0
|
table: remove nr_dims from Array (#8053)
|
2021-01-13 23:43:19 +01:00 |
yuyi
|
1d28c4de2a
|
cgen: fix multi fixed arrays with default init (fix #8038) (#8064)
|
2021-01-13 22:57:33 +02:00 |
Delyan Angelov
|
0d25091afd
|
tests: fix random color mismatches in the CI
|
2021-01-13 21:27:30 +02:00 |
Lukas Neubert
|
8a8978fb01
|
fmt: keep same line comments after arr.sort() in vsh files (#8026)
|
2021-01-13 20:10:17 +02:00 |
Daniel Däschle
|
2030875c0a
|
gen: fix go call with generic function (#8093)
|
2021-01-13 17:35:50 +02:00 |
Nick Treleaven
|
a1245de25b
|
gen: fix interface method call name that is a C reserved word (#8091)
|
2021-01-13 16:37:47 +02:00 |
zakuro
|
204cc5fb01
|
ast: add case for Import in `fn (node Stmt) str()`
|
2021-01-13 15:56:48 +02:00 |
zakuro
|
4923048d95
|
ast: add case for ConstDecl in `fn (node Stmt) str()` (#8073)
|
2021-01-13 15:54:41 +02:00 |
Ruofan XU
|
245ed9160a
|
gen: fix `mut arr [3]int` as a fn argument (#8085)
|
2021-01-13 15:52:46 +02:00 |
Lukas Neubert
|
219486f0a5
|
fmt: cleanup `'` and `"` quotes handling (#8082)
|
2021-01-13 11:09:03 +02:00 |
zakuro
|
4cd50ed566
|
scanner: remove debug_tokens (#8078)
|
2021-01-13 08:33:37 +01:00 |
yuyi
|
ae592299dc
|
cgen: fix fixed arrays literal eq (#8079)
|
2021-01-13 08:32:41 +01:00 |
yuyi
|
7458b699d0
|
fmt: change `[1,2,3]!!` to `[1,2,3]!` (#8081)
|
2021-01-13 08:32:17 +01:00 |
Nick Treleaven
|
ac85257ea0
|
parser: fix sizeof(mod.Type), fix checking sizeof expression (#8065)
|
2021-01-13 06:13:39 +01:00 |
yuyi
|
dd6febf6fa
|
cgen: fix gen_array_sort() (#8077)
|
2021-01-13 06:12:22 +01:00 |
zakuro
|
254df0ca62
|
fmt: improve string quotes (#8075)
|
2021-01-13 06:05:27 +01:00 |
zakuro
|
3e3d45b2b1
|
parser: improve array init warning (#8024)
|
2021-01-13 06:03:23 +01:00 |
zakuro
|
e8ab79205f
|
ast: add str for Module (#8072)
|
2021-01-13 06:00:53 +01:00 |
Swastik Baranwal
|
1e853b0efc
|
cgen: implement argument operator overloading (#8067)
|
2021-01-13 03:31:14 +01:00 |
Lukas Neubert
|
0e490766df
|
fmt: do not move single line block comments to previous line (#8046)
|
2021-01-13 03:30:24 +01:00 |
yuyi
|
03a0534483
|
all: change fixed array init from `[1,2,3]!!` to `[1,2,3]!` (#8068)
|
2021-01-13 03:28:53 +01:00 |
Daniel Däschle
|
3289dff7ff
|
checker: require explicit return none (#8060)
|
2021-01-12 11:43:55 +01:00 |
yuyi
|
33976246c8
|
cgen: format the generated c code of arrays map and filter (#8016)
|
2021-01-12 04:39:09 +01:00 |
zakuro
|
33694665f0
|
fmt: align each contiguous field of struct. not the whole. (#7981)
|
2021-01-12 04:38:43 +01:00 |
Swastik Baranwal
|
82a5300044
|
cgen: allow sort with`<` and `>` op overloading (#8042)
|
2021-01-12 04:38:12 +01:00 |
Swastik Baranwal
|
5a1699dec2
|
checker: add more checks for operator overloading (#8030)
|
2021-01-12 04:37:20 +01:00 |
yuyi
|
1559e72d0d
|
cgen: add gen_fixed_array_equality_fn (#8006)
|
2021-01-12 01:35:18 +01:00 |
Uwe Krüger
|
5f95dd54bd
|
builtin: rename `any_*` -> `*_literal` - 2. part (#8032)
|
2021-01-11 22:58:15 +01:00 |
Uwe Krüger
|
91f87c03cf
|
all: rename `any_*` -> `*_literal` - 1. part (#8031)
|
2021-01-11 22:20:16 +01:00 |
Lukas Neubert
|
5d6e9f7bf9
|
fmt: fix rare extra tab after a SumType (#8035)
|
2021-01-11 22:19:42 +01:00 |
yuyi
|
72317975fc
|
cgen: minor cleanup of gen_assert_stmt() (#8018)
|
2021-01-11 09:05:15 +01:00 |
yuyi
|
a1c67232d0
|
checker: fix duplicate variable name (fix #265) (#7982)
|
2021-01-10 21:41:29 +01:00 |
yuyi
|
39bb6f0491
|
array: fix array of multi filter/map in one assignment (fix #7858) (#7976)
|
2021-01-10 21:08:45 +01:00 |
zakuro
|
c1b1ec9005
|
fmt: keep same line comment in array init (#7980)
|
2021-01-10 21:06:48 +01:00 |
zakuro
|
2103d9a6c4
|
fmt: keep new line at both ends of block comment (#8003)
|
2021-01-10 21:06:29 +01:00 |
Lukas Neubert
|
a8378273a5
|
fmt: fix too many \n if file has only imports (#8012)
|
2021-01-10 21:19:31 +02:00 |
yuyi
|
a97ed55a09
|
checker: check for an unknown struct name (fix #8007) (#8010)
|
2021-01-10 21:16:53 +02:00 |
Larpon
|
93ad595ffb
|
vet: add suggestions for function documentation (#7890)
|
2021-01-10 18:48:39 +02:00 |
Lukas Neubert
|
d96a1b8a5f
|
fmt: intelligent newlines for trailing arg syntax (#7748)
|
2021-01-10 17:39:37 +01:00 |
Delyan Angelov
|
722a603222
|
cgen: fix os.args initialization, so that `const x = os.args[0]` works
|
2021-01-10 15:17:24 +02:00 |
Swastik Baranwal
|
0081e5740d
|
checker: only allow `!=` and `==` for enum (#7985)
|
2021-01-10 12:26:31 +02:00 |
Swastik Baranwal
|
1f5255c2bb
|
cgen: implement `>=` and `<=` (#7991)
|
2021-01-10 12:24:46 +02:00 |
Lukas Neubert
|
73bd63d69d
|
token: remove // from comment kind string (#7992)
|
2021-01-10 12:19:59 +02:00 |
Lukas Neubert
|
31753f581f
|
ast: remove redundant InfixExpr.str() (#7993)
|
2021-01-10 12:19:14 +02:00 |
pancake
|
0e016baa34
|
v.pkgconfig: support Requires.private; handle double spaces in pkgconfig files (#7994)
|
2021-01-10 12:14:41 +02:00 |
yuyi
|
704f38d87f
|
parser: fix multi fixed arrays init (#7996)
|
2021-01-10 06:58:31 +01:00 |
Daniel Däschle
|
a8dd13f086
|
parser: change array decompose syntax (#7965)
|
2021-01-09 22:48:23 +01:00 |
Lukas Neubert
|
e79695e8fc
|
fmt: keep comments after call_expr in vscript (#7990)
|
2021-01-09 22:47:33 +01:00 |
Delyan Angelov
|
561d4f84b3
|
tests: remove tmp files on OK live_test.v run
|
2021-01-09 20:56:02 +02:00 |
zakuro
|
407da09acf
|
ast: add str for EnumDecl (#7977)
|
2021-01-09 19:49:27 +01:00 |
Delyan Angelov
|
aa37382e8d
|
tools: let `v fmt` use VTMP too, stabilise `v test-cleancode`
|
2021-01-09 20:41:15 +02:00 |
Larpon
|
8f315d226b
|
vvet: move to own subdir, prepare richer suggestions (#7989)
|
2021-01-09 16:11:49 +02:00 |
Ned Palacios
|
256ddcee1f
|
v.ast: add walker submodule for ast walking (#7775)
|
2021-01-09 05:36:38 +01:00 |
Uwe Krüger
|
eff757d0a1
|
cgen: fix address violations for error propagation (#7972)
|
2021-01-09 02:43:48 +01:00 |
Daniel Däschle
|
bbac95a438
|
parser: error on recursive struct (#7964)
|
2021-01-09 01:33:36 +01:00 |
Nick Treleaven
|
141b0cb882
|
checker: fix warning & allow assigning to a union field without unsafe (#7970)
|
2021-01-09 01:32:33 +01:00 |
zakuro
|
8d3069f643
|
parser: avoid value receiver (#7975)
|
2021-01-09 01:32:08 +01:00 |
Delyan Angelov
|
dff36a9947
|
cgen: fix small g.is_autofree && [manualfree] problem
|
2021-01-08 23:24:26 +02:00 |
Uwe Krüger
|
29c2240aef
|
fmt: enable `or` block for `ch <- x` (#7969)
|
2021-01-08 21:39:21 +01:00 |
Daniel Däschle
|
687b152318
|
gen: fix generation of comptime if T is (#7971)
|
2021-01-08 19:39:58 +02:00 |
Uwe Krüger
|
cbe7740d97
|
fmt: do not generate `import` statements for auto imports (#7966)
|
2021-01-08 17:42:40 +01:00 |
Swastik Baranwal
|
9291fb5e0c
|
checker: disallow comparison between enum and int (#7886)
|
2021-01-08 17:41:52 +01:00 |
Delyan Angelov
|
46a5c487c1
|
parser,fmt: implement `[manualfree] module abc` for opting out *all* fns in a given .v from autofree
|
2021-01-08 17:24:42 +02:00 |
Delyan Angelov
|
083dc23db8
|
gen: implement a `[manualfree]` tag, for functions, that want to do their own memory management
|
2021-01-08 16:22:27 +02:00 |
yuyi
|
828120a918
|
checker: check unknown generic type (#7954)
|
2021-01-08 07:04:06 +01:00 |
Alexander Medvednikov
|
0998cbaaba
|
vweb: fix routing test
|
2021-01-08 05:59:23 +01:00 |
Alexander Medvednikov
|
352cf91ba2
|
vweb: remove `return vweb.Result{}` everywhere
|
2021-01-08 04:57:02 +01:00 |
Alexander Medvednikov
|
e3f8d448c1
|
all: [noinit] struct attribute
|
2021-01-08 04:49:16 +01:00 |
Daniel Däschle
|
1ce93536d0
|
checker: fix panic in generic methods (#7944)
|
2021-01-08 00:50:59 +01:00 |
Lukas Neubert
|
653121bad9
|
fmt: test bin2v output formatting (#7926)
|
2021-01-07 21:36:59 +01:00 |
Daniel Däschle
|
88d18f3303
|
checker: smartcast in for loops (#7942)
|
2021-01-07 21:35:32 +01:00 |
Nick Treleaven
|
cbefe6c32f
|
parser: warn about old use of `typeof` (#7923)
|
2021-01-07 20:32:02 +01:00 |
zakuro
|
a2add15558
|
ast: add params info to str of FnDecl (#7933)
|
2021-01-07 20:25:55 +01:00 |
Larpon
|
41e9a769e9
|
doc: fix README embedding (#7929)
|
2021-01-07 20:25:29 +01:00 |
zakuro
|
af1d28dee7
|
ast: add str for StructDecl (#7934)
|
2021-01-07 20:25:04 +01:00 |
yuyi
|
2ad2d68d7c
|
json: fix decoding of null map/array (#7936)
|
2021-01-07 20:21:22 +01:00 |
Daniel Däschle
|
085085a2b9
|
parser: fix sumtype match with array type (#7939)
|
2021-01-07 20:12:35 +01:00 |
Alexander Medvednikov
|
15ba53be21
|
checker: handle different pointer levels
|
2021-01-07 07:36:11 +01:00 |
Delyan Angelov
|
9593ad20f9
|
v.util: extend launch_tool with auto recompilation of a folder with several .v files too
|
2021-01-06 23:48:38 +02:00 |
Uwe Krüger
|
ffd753abdc
|
all: implement `ch <- x or {...}` and `ch <- x ?` (#7928)
|
2021-01-06 21:19:40 +01:00 |
Larpon
|
30a2f125ef
|
doc: add comment example support (#7924)
|
2021-01-06 19:43:43 +01:00 |