zakuro
|
522d875489
|
checker: make it an error, to use ident outside of anon fn (#8232)
|
2021-01-22 09:24:49 +02:00 |
Daniel Däschle
|
3ee7bc960f
|
checker/gen: fix smartcast pointer sumtype (#8260)
|
2021-01-21 22:31:25 +02: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 |
Tim Basel
|
129eee346b
|
fmt: keep single empty lines (#8189)
|
2021-01-19 14:49:40 +01:00 |
Lukas Neubert
|
b44c08aff0
|
fmt: wrap match branch expressions (#8190)
|
2021-01-19 06:16:42 +01:00 |
Lukas Neubert
|
ac2c3847af
|
all: update copyright to 2019-2021 (#8029)
|
2021-01-18 13:20:06 +01:00 |
Lukas Neubert
|
16c9cbce7c
|
fmt: correctly increase f.line_len for write_indent (#8174)
|
2021-01-18 06:02:29 +01:00 |
Nick Treleaven
|
df39e7001c
|
parser: support `module:` for immutable private struct fields (#8140)
|
2021-01-17 05:39:44 +01: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 |
Uwe Krüger
|
8d014d4646
|
sync: allow `go` routine join with return value (#8125)
|
2021-01-15 13:45:26 +01:00 |
zakuro
|
c39f0a7cb7
|
ast: add str for AssertStmt (#8021)
|
2021-01-15 00:17:26 +01: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 |
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 |
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 |
Nick Treleaven
|
ac85257ea0
|
parser: fix sizeof(mod.Type), fix checking sizeof expression (#8065)
|
2021-01-13 06:13:39 +01:00 |
zakuro
|
e8ab79205f
|
ast: add str for Module (#8072)
|
2021-01-13 06:00:53 +01:00 |
zakuro
|
33694665f0
|
fmt: align each contiguous field of struct. not the whole. (#7981)
|
2021-01-12 04:38:43 +01:00 |
Lukas Neubert
|
5d6e9f7bf9
|
fmt: fix rare extra tab after a SumType (#8035)
|
2021-01-11 22:19:42 +01:00 |
Swastik Baranwal
|
1f5255c2bb
|
cgen: implement `>=` and `<=` (#7991)
|
2021-01-10 12:24:46 +02:00 |
Lukas Neubert
|
31753f581f
|
ast: remove redundant InfixExpr.str() (#7993)
|
2021-01-10 12:19:14 +02:00 |
Lukas Neubert
|
e79695e8fc
|
fmt: keep comments after call_expr in vscript (#7990)
|
2021-01-09 22:47:33 +01:00 |
zakuro
|
407da09acf
|
ast: add str for EnumDecl (#7977)
|
2021-01-09 19:49:27 +01:00 |
Ned Palacios
|
256ddcee1f
|
v.ast: add walker submodule for ast walking (#7775)
|
2021-01-09 05:36:38 +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 |
Uwe Krüger
|
cbe7740d97
|
fmt: do not generate `import` statements for auto imports (#7966)
|
2021-01-08 17:42:40 +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 |
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 |
zakuro
|
af1d28dee7
|
ast: add str for StructDecl (#7934)
|
2021-01-07 20:25:04 +01:00 |
Uwe Krüger
|
ffd753abdc
|
all: implement `ch <- x or {...}` and `ch <- x ?` (#7928)
|
2021-01-06 21:19:40 +01:00 |
Nick Treleaven
|
3203a124b2
|
checker: warn when casting between reference types outside of `unsafe` (#7892)
|
2021-01-05 17:02:04 +02:00 |
Daniel Däschle
|
5841d5d8e1
|
all: implement basic comptime field selector (#7888)
|
2021-01-05 16:11:43 +02:00 |
Daniel Däschle
|
7c9fb73b3f
|
vfmt: fix comments before ...f in Abc{...f} (#7870)
|
2021-01-04 21:01:35 +02:00 |
Daniel Däschle
|
164d7bf5fb
|
parser: struct updating syntax with `Abc{...oldabc newfield: val}` (#7865)
|
2021-01-04 20:19:03 +02:00 |
Uwe Krüger
|
4a25c2bb6f
|
types: rename `any_*`, `untyped *` -> `* literal` (#7845)
|
2021-01-04 00:11:09 +02:00 |
zakuro
|
dd516858d4
|
fmt: align struct field comments (#7632)
|
2021-01-03 21:10:25 +01:00 |
Swastik Baranwal
|
9033099676
|
cgen: implement overriding of `!=` and `==` (#7837)
|
2021-01-03 16:19:02 +01:00 |
Swastik Baranwal
|
24b18f05c4
|
cgen: implement > and < for structs (#7774)
|
2021-01-01 14:54:32 +01:00 |
Swastik Baranwal
|
a9ab79d301
|
checker: ban any_int/any_float outside buitlin (#7675)
|
2020-12-31 12:41:30 +01:00 |
lydiandy
|
20f507651e
|
v.ast: remove unused path and expr fields in Module (#7625)
|
2020-12-31 12:17:59 +02:00 |
Alexander Medvednikov
|
ad78875a8c
|
parser: allow `const x = 0` consts outside of const blocks
|
2020-12-30 02:15:44 +01:00 |
joe-conigliaro
|
02965e753e
|
all: re-implement variadics using arrays & implement array decomposition to varg (#7689)
|
2020-12-29 16:14:08 +01:00 |
Lukas Neubert
|
2360762a42
|
fmt: fix unexpected `comment`, expecting struct key for trailing arg syntax (#7658)
|
2020-12-28 20:26:24 +02:00 |
Lukas Neubert
|
4783503185
|
fmt: keep interface comments between methods (#7650)
|
2020-12-28 18:14:55 +02:00 |
lydiandy
|
ecc7c27c9c
|
v.ast: document vlib/v/ast/ast.v (#7624)
|
2020-12-28 13:52:04 +02:00 |
Lukas Neubert
|
e7ca5dd17a
|
fmt: update expr_is_single_line for MatchExpr, StructInit and CallExpr with or block (#7564)
|
2020-12-25 21:43:50 +02:00 |
Lukas Neubert
|
2c0fba5480
|
fmt: keep comment between enum fields (#7566)
|
2020-12-25 21:41:59 +02:00 |
Lukas Neubert
|
e9affe33ce
|
ast: fix C error for scope's .str() method (#7561)
|
2020-12-25 19:03:03 +02:00 |
spaceface
|
214290d55b
|
fmt: add a space around single-line `unsafe` expressions (#7505)
|
2020-12-23 19:13:42 +01:00 |
Daniel Däschle
|
b27f5c378c
|
all: reimplement struct embedding with methods (#7506)
|
2020-12-23 19:12:49 +01:00 |
Lukas Neubert
|
c4aae2b55f
|
vfmt: do not replace module aliases in fn param and return types (#7472)
|
2020-12-22 22:38:13 +02:00 |
zakuro
|
fb0c4556fd
|
vfmt: keep JS object name (#7462)
|
2020-12-22 15:32:49 +02:00 |
Lukas Neubert
|
304aafdc50
|
fmt: add a space after + operator/method overload (#7453)
|
2020-12-21 21:20:00 +02:00 |
Alexander Medvednikov
|
1f74f83bc6
|
parser: map or block; checker: require ref field init
|
2020-12-19 10:28:17 +01:00 |
joe-conigliaro
|
0aa9f5a007
|
all: optimize scope usage in checker & parser. store scope in ast nodes (#7281)
|
2020-12-12 19:01:12 +11:00 |
Lukas Neubert
|
25153490e1
|
fmt: keep comments after assign on same line (#7269)
|
2020-12-11 19:20:24 +02:00 |
spaceface777
|
ca2c082a5e
|
checker: initial support for evaluating expressions at compile time (#7248)
|
2020-12-11 04:46:06 +01:00 |
Daniel Däschle
|
0bf679a7aa
|
checker: correct underline for unknown type in method type (#7223)
|
2020-12-10 11:51:22 +02:00 |
Daniel Däschle
|
a38fe4fca9
|
checker: fix smartcast inside smartcast (#7215)
|
2020-12-10 00:59:39 +01:00 |
Lukas Neubert
|
3b6b5b8090
|
vfmt: properly parse comments on lines after init fields (#7202)
|
2020-12-09 11:11:22 +02:00 |
joe-conigliaro
|
78a6795319
|
all: change the way import symbols work & support consts (#7182)
|
2020-12-07 19:13:03 +02:00 |
Alexander Medvednikov
|
8eff8b0eff
|
autofree: fix `for` args
|
2020-12-06 08:38:21 +01:00 |
Alexander Medvednikov
|
b6ae81032f
|
ast: Var.is_tmp field
|
2020-12-06 08:19:17 +01:00 |
joe-conigliaro
|
7733834751
|
parser/cgen: autofree - move branch_parent_pos to cgen.
|
2020-12-06 18:02:36 +11:00 |
Delyan Angelov
|
946a1418fe
|
Revert "autofree: handle tmp vars in for loops"
This reverts commit 1d6c604664.
|
2020-12-05 21:52:50 +02:00 |
Alexander Medvednikov
|
1d6c604664
|
autofree: handle tmp vars in for loops
|
2020-12-05 20:11:31 +01:00 |
joe-conigliaro
|
83f651c29a
|
cgen: autofree - know where to stop freeing parent scops on continue/break
|
2020-12-06 02:36:27 +11:00 |
Alexander Medvednikov
|
0ea2fa228f
|
autofree: fix `or {}`; ci: bring back gitly -autofree
|
2020-12-04 18:06:53 +01:00 |
Lukas Neubert
|
2691163a7e
|
scope: remove redundant name arg from register() (#7077)
|
2020-12-02 14:40:25 +01:00 |
joe-conigliaro
|
f1965c0510
|
ast: fmt ast.v
|
2020-12-01 21:20:27 +11:00 |
joe-conigliaro
|
9b583f51f1
|
ast: remove field which should have been removed in #34e124d
|
2020-12-01 20:15:35 +11:00 |
joe-conigliaro
|
34e124d5f7
|
cgen: auto cast sum type in array init. fixes #6907
|
2020-12-01 20:03:45 +11:00 |
joe-conigliaro
|
a7d917474d
|
checker: simplify generic fn post processing
|
2020-12-01 16:43:10 +11:00 |
Daniel Däschle
|
32c027a0bf
|
parser: disallow ptr type as sum type variant (#6996)
|
2020-11-28 23:40:40 +02:00 |
Daniel Däschle
|
6e4dad9acf
|
parser: fix position of array init (#6998)
|
2020-11-28 17:05:14 +02:00 |
Daniel Däschle
|
966b95ca4e
|
parser: move mut in if/match to expr (#6973)
|
2020-11-27 03:08:42 +01:00 |
Daniel Däschle
|
7d6f97259f
|
all: refactor UnionSumType to SumType (#6944)
|
2020-11-25 13:09:40 +02:00 |
Daniel Däschle
|
a042966082
|
all: remove old sumtype code (#6937)
|
2020-11-24 17:55:24 +01:00 |
Daniel Däschle
|
aa6303f0b2
|
all: use the new types with old syntax (#6922)
|
2020-11-24 13:58:29 +01:00 |
Daniel Däschle
|
96539e43b5
|
all: nested sum types (#6913)
|
2020-11-23 16:16:13 +01:00 |
Swastik Baranwal
|
650cdef8b4
|
checker: disallow array sum types without default field (#6892)
|
2020-11-21 00:07:25 +01:00 |
Daniel Däschle
|
838ad16296
|
all: refactor ast.Expr to use the new sum type implementation (#6792)
|
2020-11-21 00:05:57 +01:00 |
Nick Treleaven
|
9871d24929
|
fmt: fix labelled break & continue (#6889)
|
2020-11-20 14:12:40 +01:00 |
Nick Treleaven
|
d5242e0bf5
|
gen: implement labelled break and continue (retry) (#6887)
|
2020-11-20 12:23:48 +01:00 |
Lukas Neubert
|
ef3e8d2c84
|
vfmt: handle comments after type declarations (#6874)
|
2020-11-20 11:51:50 +02:00 |
Alexander Medvednikov
|
4328233504
|
Revert "gen: implement labelled break and continue (#6880)"
This reverts commit e798326a1a.
|
2020-11-20 02:51:35 +01:00 |
Nick Treleaven
|
e798326a1a
|
gen: implement labelled break and continue (#6880)
|
2020-11-19 21:13:15 +01:00 |
Daniel Däschle
|
9feb010355
|
all: mutable smartcasts (#6878)
|
2020-11-19 17:28:46 +01:00 |
Daniel Däschle
|
20bec81678
|
checker: smartcast only if type is not mut (#6841)
|
2020-11-15 16:53:51 +02:00 |
Delyan Angelov
|
f995aa35ea
|
checker: add a check for `x := math.sin<f64>(0)`
|
2020-11-15 11:51:12 +02:00 |
Nick Treleaven
|
50163508f8
|
gen: implement type_name method for sum type instances (#6802)
|
2020-11-14 13:59:03 +02:00 |
Delyan Angelov
|
f42a44abec
|
vfmt: fix `match x { 10 /* ... */ {} }` and `a := [1/* x */, /* y */2, 3]`
|
2020-11-11 22:59:43 +02:00 |
Delyan Angelov
|
ebfd259333
|
vfmt: support `struct Repo <T, U> { }`
|
2020-11-11 17:50:03 +02:00 |
Daniel Däschle
|
6271798ce3
|
cgen: union sum types implementation (#6745)
|
2020-11-11 09:18:15 +01:00 |
Nick Treleaven
|
c76e486765
|
parser: implement `T.name` for generic types (#6783)
|
2020-11-09 14:35:26 +01:00 |