Delyan Angelov
|
4271eb477c
|
cgen: disable C static fn attribute with -cg (improves backtraces)
|
2020-05-23 14:04:02 +03:00 |
Delyan Angelov
|
43eaec325d
|
fmt: add keep tests for struct init, fix warnings
|
2020-05-23 12:05:21 +03:00 |
Delyan Angelov
|
c690c2f984
|
vfmt: fix formatting of struct init without a module prefix
|
2020-05-23 11:56:06 +03:00 |
Delyan Angelov
|
70f0115e27
|
options: use panic_debug() for opt()? calls in main with -cg
|
2020-05-23 11:43:20 +03:00 |
Enzo Baldisserri
|
801bca1ef2
|
compiler: propagate optional
|
2020-05-23 08:51:15 +02:00 |
Delyan Angelov
|
5037d9de37
|
vlib: remove unused uiold
|
2020-05-23 09:19:41 +03:00 |
Delyan Angelov
|
4af4a8f2ff
|
fmt: fix 'import time as t', then using t.sleep_ms() .
|
2020-05-22 22:31:24 +03:00 |
Delyan Angelov
|
104359365f
|
examples: fix const name warnings due to gx.White, etc...
|
2020-05-22 20:00:46 +03:00 |
Delyan Angelov
|
acb58a1f98
|
parser: add p.peek_tok3, fix `for ...<a.len...`
|
2020-05-22 19:48:47 +03:00 |
yuyi
|
dda875a9c8
|
all: unify const names to snake_case
|
2020-05-22 17:36:09 +02:00 |
Delyan Angelov
|
aef751861d
|
cgen: fix `_ := []byte{init:1}`
|
2020-05-22 18:17:20 +03:00 |
Delyan Angelov
|
88fa935376
|
builtin: fix print mem leak on windows
|
2020-05-22 12:18:27 +03:00 |
Delyan Angelov
|
7a4f26ac4f
|
compiler: use -lpthread during building v itself.
|
2020-05-22 08:36:56 +03:00 |
penguindark
|
8bf290acf0
|
os: minor fixes
|
2020-05-22 06:21:11 +02:00 |
Alexander Medvednikov
|
edabd57e8a
|
parser: use parallel only on macos for now
|
2020-05-22 02:45:11 +02:00 |
Alexander Medvednikov
|
1e853072dc
|
parser: parallel parser, part 1
|
2020-05-22 02:23:14 +02:00 |
yuyi
|
2f171bf5d9
|
regex: uniform const field names to snake_case
|
2020-05-21 23:33:51 +02:00 |
Leah Lundqvist
|
f2ea8ca62c
|
jsgen: class -> factory
|
2020-05-21 22:36:06 +02:00 |
Enzo Baldisserri
|
1633675c11
|
gen: fix nested `or`
|
2020-05-21 22:35:43 +02:00 |
Alexander Medvednikov
|
d3ce6fd2e7
|
checker: check each generic function for each type
|
2020-05-21 21:51:52 +02:00 |
Ruofan XU
|
b2b0461218
|
scanner: fix err pos related to num literal
|
2020-05-21 18:43:57 +02:00 |
Alexander Medvednikov
|
227f039652
|
vfmt: handle generic fn calls
|
2020-05-21 18:36:25 +02:00 |
Alexander Medvednikov
|
87d8e70d6d
|
checker/table: generic fixes
|
2020-05-21 18:15:04 +02:00 |
Swastik Baranwal
|
bf7ab19d09
|
builder: do not allow importing 'builtin' module
|
2020-05-21 16:31:41 +02:00 |
Abdullah Atta
|
cb82ff618b
|
jsgen: proper jsdoc for namespace
|
2020-05-21 16:31:07 +02:00 |
Maddi Kopfermann
|
26cb9e4b9f
|
regex: fix spelling
|
2020-05-21 16:22:39 +03:00 |
Ruofan XU
|
aba09a7e4d
|
scanner: fix err pos related to num literals
|
2020-05-21 16:20:36 +03:00 |
Abdullah Atta
|
9888bacad5
|
v: make js hello world work
|
2020-05-21 16:17:16 +03:00 |
Louis Schmieder
|
a9999ee10d
|
glm: add uniform functions to gl, add matrix rotation to glm
|
2020-05-21 16:13:02 +03:00 |
yuyi
|
047e982318
|
gen: fix pointer_str_test.v
|
2020-05-21 15:09:35 +03:00 |
Alexander Medvednikov
|
abb15275f5
|
checker: update a `for in` error test
|
2020-05-21 06:06:11 +02:00 |
Alexander Medvednikov
|
45c9ccfc03
|
tests: simple<string> generics test
|
2020-05-21 04:56:36 +02:00 |
Alexander Medvednikov
|
ce1a181699
|
all: generic functions
|
2020-05-21 03:58:53 +02:00 |
yuyi
|
b8c028c727
|
parser: fix -5.str() precedence
|
2020-05-20 23:26:23 +02:00 |
Alexander Medvednikov
|
cd07429cc1
|
rand: fix compilation on linux
|
2020-05-20 21:14:17 +00:00 |
Alexander Medvednikov
|
ca81442fac
|
parser: fix a small bug with <
|
2020-05-20 21:47:03 +02:00 |
Alexander Medvednikov
|
82cedbaf62
|
fmt: fix `map[string][]string`; parser: allow `foo<int>(10)`
|
2020-05-20 21:40:24 +02:00 |
Delyan Angelov
|
e3a162db77
|
http: remove redundant consts in backend_nix.c.v
|
2020-05-20 21:40:29 +03:00 |
spaceface777
|
d4c1ea4bba
|
jsgen: fix jsdoc class namespacing bug
|
2020-05-20 20:34:37 +02:00 |
Don Alfons Nisnoni
|
10ad5332e8
|
parser: improve unused imports warning
|
2020-05-20 20:50:27 +03:00 |
Delyan Angelov
|
9d4fe88d09
|
compiler: support for -color/-nocolor option overrides
|
2020-05-20 20:34:04 +03:00 |
Alexander Medvednikov
|
80070516fd
|
http: set buffer size to 1536
|
2020-05-20 19:23:51 +02:00 |
Alexander Medvednikov
|
5d08c9d5a8
|
http: use bufsize const
|
2020-05-20 19:22:02 +02:00 |
Alexander Medvednikov
|
0d3f133436
|
parser: show location of a previously defined function
|
2020-05-20 17:27:37 +02:00 |
spaceface777
|
dd534fde57
|
jsgen: many fixes and updates
|
2020-05-20 16:57:42 +02:00 |
Louis Schmieder
|
a0ed1e2878
|
gl: add bind_attrib_location, also add gl cleanup functions
|
2020-05-20 16:24:37 +03:00 |
Tanel Liiv
|
c9f3a05ef6
|
checker: fix map/filter called with a plain fn argument
|
2020-05-20 15:28:33 +03:00 |
Delyan Angelov
|
6eee69f7bc
|
http: cleanup ssl_do, enhance the detection of chunked encoding
|
2020-05-20 14:32:59 +03:00 |
Delyan Angelov
|
ac396ea02f
|
http: cleanup backend_nix.c.v, fixes vpm too
|
2020-05-20 12:04:28 +03:00 |
Delyan Angelov
|
1c2376741b
|
http: fix redirects handling
|
2020-05-20 09:58:57 +03:00 |
Alexander Medvednikov
|
0a6d709ce2
|
http: fix recent changes; picoev: make compile
|
2020-05-20 05:37:03 +02:00 |
Sandro Martini
|
e137fbb1ea
|
array: more tests of initialization
|
2020-05-19 19:53:47 +02:00 |
yuyi
|
b3b86ea6d7
|
cgen: fix array_init has len but no init error
|
2020-05-19 18:33:24 +02:00 |
spaceface777
|
b10df252dc
|
all: replace `is_c`, `is_js` with `language`
|
2020-05-19 17:12:47 +02:00 |
yuyi
|
74686d0ec4
|
test: fix alias type errors and type_test.v
|
2020-05-19 15:04:51 +03:00 |
Ned Palacios
|
bd85d2fd2a
|
vfmt: make methods and structs public, to be used in vdoc
|
2020-05-19 14:19:37 +03:00 |
spaceface777
|
e07869af91
|
builder: fix false-positive import cycle warning
|
2020-05-19 14:17:03 +03:00 |
Delyan Angelov
|
931c846602
|
os: cleanup code duplication for os.create and os.open
|
2020-05-19 13:38:06 +03:00 |
Alexander Medvednikov
|
03525843a0
|
parser: do not allow calling private functions
|
2020-05-18 22:54:11 +02:00 |
Uwe Krüger
|
2635be511f
|
all: re-apply C++ support
|
2020-05-18 21:38:06 +02:00 |
Alexander Medvednikov
|
895cefe351
|
parser: do not allow defining methods on types from other modules
|
2020-05-18 20:55:22 +02:00 |
Alexander Medvednikov
|
57ea9bec30
|
tests: vfmt test for all vlib/v files
|
2020-05-18 18:43:07 +02:00 |
Tanel Liiv
|
2344c1a435
|
parser: fix to multi-expr
|
2020-05-18 18:33:27 +02:00 |
Alexander Medvednikov
|
b1bf5f0edc
|
vfmt: wrap long sum type definitions
|
2020-05-18 18:08:32 +02:00 |
Alexander Medvednikov
|
5c0c418818
|
ast: vfmt ast.v
|
2020-05-18 18:06:09 +02:00 |
Alexander Medvednikov
|
07a78b2843
|
Revert "all: C++ compiler support"
This reverts commit 9a237c3e82 .
|
2020-05-18 17:05:48 +02:00 |
Alexander Medvednikov
|
fc900baf9e
|
parser: a minor simplification
|
2020-05-18 17:02:29 +02:00 |
Alexander Medvednikov
|
90270d8791
|
vfmt: handle fixed size arrays
|
2020-05-18 16:52:12 +02:00 |
Uwe Krüger
|
9a237c3e82
|
all: C++ compiler support
|
2020-05-18 15:51:36 +02:00 |
Alexander Medvednikov
|
d325cdba0d
|
checker: fmt
|
2020-05-18 15:43:52 +02:00 |
Ned Palacios
|
d94d436273
|
table, vfmt: fix typ_to_string + some fixes to vfmt
|
2020-05-18 15:37:06 +02:00 |
Ned Palacios
|
ae3df002a2
|
vmod: add v.mod parser
|
2020-05-18 14:35:28 +02:00 |
Delyan Angelov
|
53ffee1e02
|
compiler: respect -showcc, -prod, -cg, when cross compiling for windows
|
2020-05-18 12:11:26 +03:00 |
Alexander Medvednikov
|
4f307c1a78
|
checker: requre & in struct init; http: chunked encoding
|
2020-05-18 05:11:00 +02:00 |
Leah Lundqvist
|
88e6d987d6
|
js: imports and anon_fn
|
2020-05-17 21:39:01 +02:00 |
Swastik Baranwal
|
d697b2848a
|
checker: more checks for in and !in
|
2020-05-17 17:03:32 +02:00 |
spaceface777
|
0def084932
|
checker: fix JS name regression
|
2020-05-17 16:23:09 +02:00 |
Delyan Angelov
|
627400723c
|
x64 gen: improve error handling for unknown nodes
|
2020-05-17 15:45:17 +03:00 |
iRedMail
|
4a70d2fe51
|
examples: fix 2 unused var warnings
|
2020-05-17 14:15:04 +02:00 |
yuyi
|
7f4cf08516
|
parser: check `(mut f Foo)` syntax
|
2020-05-17 13:51:18 +02:00 |
Hungry Blue Dev
|
b138cadbcb
|
math.fractions: add approximation.v and tests
|
2020-05-17 12:00:29 +03:00 |
yuyi
|
02fb393747
|
test: fix vrepl and cast test errors
|
2020-05-17 02:13:08 +02:00 |
Alexander Medvednikov
|
81148fa2bd
|
cmd/v: version: print only main repo hash
|
2020-05-16 23:52:06 +02:00 |
Alexander Medvednikov
|
8cbb9e1c1f
|
pref: move parse_define()
|
2020-05-16 22:57:55 +02:00 |
Alexander Medvednikov
|
5b15b8ccc9
|
checker: do not allow casting strings
|
2020-05-16 22:52:41 +02:00 |
Alexander Medvednikov
|
6e4ae5a5e6
|
checker: do not allow casting strings
|
2020-05-16 22:48:45 +02:00 |
asvvvad
|
e245e22875
|
os: make exists_in_system_path function public
|
2020-05-16 22:46:05 +02:00 |
Alexander Medvednikov
|
0845b2cfbe
|
builder: skip warnings; pref: move pref creation to pref.v
|
2020-05-16 22:45:38 +02:00 |
Delyan Angelov
|
62cb48d252
|
repl: treat middle imports in a more forgiving way
|
2020-05-16 22:03:28 +03:00 |
yuyi
|
6855996cca
|
cgen: fix array_init_with_default
|
2020-05-16 19:05:26 +02:00 |
penguindark
|
48659f4145
|
regex: small fixes, '-' minus to char classes, remove all C.printf
|
2020-05-16 17:11:13 +02:00 |
asvvvad
|
57dd26650c
|
os: add new function exists_in_system_path
|
2020-05-16 17:10:34 +02:00 |
yuyi
|
655d9bda94
|
cgen: remove extra `;` from if_expr
|
2020-05-16 17:09:57 +02:00 |
Enzo Baldisserri
|
f44a40eee0
|
checker: check incorrect names
|
2020-05-16 16:12:23 +02:00 |
Swastik Baranwal
|
37cf46d67a
|
checker: add more checks for modulo
|
2020-05-16 15:32:46 +02:00 |
yuyi
|
9b6ee8e77d
|
cgen: array_init_with_default
|
2020-05-16 15:21:37 +02:00 |
Delyan Angelov
|
789b75df92
|
cheaders: fix _MOV macro in the C case
|
2020-05-16 15:51:09 +03:00 |
Larpon
|
aa30549337
|
scanner: fill out '@FN' placeholder at compile time while scanning
|
2020-05-16 14:20:19 +02:00 |
Delyan Angelov
|
034bf46e4d
|
vlib: remove unused arrays module
|
2020-05-16 00:20:14 +03:00 |
Tanel Liiv
|
44502a3fb2
|
parser: return multi expr
|
2020-05-15 23:14:53 +02:00 |
Alexander Medvednikov
|
7caebc5781
|
doc: print available modules
|
2020-05-15 23:09:38 +02:00 |
Delyan Angelov
|
2dbb4c2ca7
|
live: cleanup
|
2020-05-15 23:51:40 +03:00 |
spaceface777
|
7c9bb44784
|
parser: allow JS methods with more than 1 dot
|
2020-05-15 22:26:51 +02:00 |
Swastik Baranwal
|
04744a5390
|
string: add trim_prefix and trim_suffix
|
2020-05-15 19:37:14 +02:00 |
Delyan Angelov
|
5d0cc0944e
|
parser: fix v_panic due to -pos in unused var warning (with tcc)
|
2020-05-15 20:11:27 +03:00 |
Alexander Medvednikov
|
c4ca6a9113
|
sokol: make examples compile
|
2020-05-15 18:55:29 +02:00 |
Delyan Angelov
|
465f0ddf60
|
regex: fix unused variable warnings in regex_test.v
|
2020-05-15 18:50:54 +03:00 |
spaceface777
|
8de6da01d6
|
jsgen: prefix JS keywords with 'v_'
|
2020-05-15 15:55:49 +02:00 |
yuyi
|
8500c8885c
|
cgen: fix optional_void error; handle `?` return type
|
2020-05-15 15:55:03 +02:00 |
Delyan Angelov
|
66cb61c242
|
builtin: cleanup by turning backtrace* fns to ordinary C. fns
|
2020-05-15 15:52:06 +03:00 |
Delyan Angelov
|
e18268e2f4
|
cheaders: use backtrace* stubs for both android & musl
|
2020-05-15 15:37:59 +03:00 |
Delyan Angelov
|
2c93deb884
|
builtin: bootstrap for backtrace functions cleanup
|
2020-05-15 15:08:42 +03:00 |
Dario Tarantini
|
f7605c397a
|
stbi: pub fields in Image
|
2020-05-15 13:15:04 +02:00 |
Enzo Baldisserri
|
d60233b618
|
cgen: simplify for in range
|
2020-05-14 22:22:32 +02:00 |
Alexander Medvednikov
|
0f251e9ede
|
checker: handle json.decode correctly
|
2020-05-14 18:30:30 +02:00 |
Alexander Medvednikov
|
f49ef39708
|
checker: handle unexpected `or` blocks
|
2020-05-14 18:19:40 +02:00 |
Alexander Medvednikov
|
e5d4786371
|
builder: simplify C error message
|
2020-05-14 18:14:38 +02:00 |
Enzo Baldisserri
|
fd0d833e33
|
gen: if expressions with multiple statements
|
2020-05-14 17:15:25 +02:00 |
wilesun
|
2a9cbbe157
|
cgen: handle sizeof(C.struct)
|
2020-05-14 17:14:59 +02:00 |
yuyi
|
6d0b791ac8
|
parser: warning about unused imports
|
2020-05-14 17:14:24 +02:00 |
Alexander Medvednikov
|
c3fe2135a4
|
math.fabs
|
2020-05-14 16:58:20 +02:00 |
Alexander Medvednikov
|
2369a5c8c6
|
cgen: handle `is` for interfaces
|
2020-05-14 16:56:45 +02:00 |
yuyi
|
70b76a8e31
|
builder: use verror for not found modules
|
2020-05-14 10:59:29 +03:00 |
Delyan Angelov
|
74005b4362
|
vfmt: handle file paths with spaces
|
2020-05-14 09:07:14 +03:00 |
Delyan Angelov
|
d830620651
|
compiler: restore support for --enable-globals flag, and add tests.
|
2020-05-14 08:43:12 +03:00 |
Alexander Medvednikov
|
1cb4aa7642
|
builder: cross compiling for linux, part 1
|
2020-05-14 04:15:04 +02:00 |
Alexander Medvednikov
|
e60e8f3b34
|
builder: bring back cross compilation for windows
|
2020-05-13 23:02:31 +02:00 |
Alexander Medvednikov
|
1bf26a35fa
|
array: rename default to init
|
2020-05-13 22:00:24 +02:00 |
Alexander Medvednikov
|
ab7bc760c6
|
cgen: new Option part 1
|
2020-05-13 21:59:08 +02:00 |
Sandro Martini
|
9895cab51c
|
tests: add more tests on interfaces
|
2020-05-13 20:30:18 +02:00 |
Enzo Baldisserri
|
1ca04e6113
|
checker: prevent interface instantiation
|
2020-05-13 19:20:15 +02:00 |
Hungry Blue Dev
|
3270545953
|
fraction: simplify variable names
|
2020-05-13 18:39:19 +02:00 |
yuyi
|
2e0b9de31c
|
parser: error for consts in fns
|
2020-05-13 18:39:02 +02:00 |
Enzo Baldisserri
|
172e4ff853
|
cgen: simplify if guard else clause
|
2020-05-13 18:38:00 +02:00 |
Alexander Medvednikov
|
33a9822548
|
parser/vfmt: handle array len and default in array init
|
2020-05-13 16:11:52 +02:00 |
Alexander Medvednikov
|
db5036686b
|
checker: make `type is private` warning an errror
|
2020-05-13 14:21:52 +02:00 |
yuyi
|
b1511ce995
|
parser: optimize no main file process
|
2020-05-13 14:02:04 +02:00 |
Tanel Liiv
|
af334e320c
|
cgen: dereference in one place and fix
|
2020-05-13 01:01:34 +02:00 |
Alexander Medvednikov
|
3e6f7d3eb6
|
freetype: minor fixes
|
2020-05-13 00:50:46 +02:00 |
Alexander Medvednikov
|
7a5a4df4c6
|
checker: handle `println()`
|
2020-05-12 19:38:46 +02:00 |
yuyi
|
7837abf6b0
|
parser: optimize stmt()
|
2020-05-12 17:18:25 +02:00 |
yuyi
|
99b31d8241
|
parser: unified way to handle struct and enum name check
|
2020-05-12 13:39:32 +02:00 |
Alexander Medvednikov
|
712fd384ee
|
parser: fix eval not used in match
|
2020-05-12 00:26:39 +02:00 |
Alexander Medvednikov
|
27d3800cc3
|
parser: bring back "evaluated but not used"
|
2020-05-12 00:19:45 +02:00 |
Alexander Medvednikov
|
1c8e14c77c
|
vfmt: handle comments in const blocks
|
2020-05-12 00:09:59 +02:00 |
yuyi
|
dea2658a80
|
checker: minor optimization in infix_expr
|
2020-05-11 23:50:13 +02:00 |
Kris Cherven
|
d359a7aefb
|
cgen: fix a goto error
|
2020-05-11 23:49:08 +02:00 |
JalonSolov
|
649a0140fd
|
x64: fix NUL at end of strings, and length
|
2020-05-11 16:50:36 +02:00 |
Alexander Medvednikov
|
e9177faf17
|
checker: allow `*x = y` only inside unsafe blocks
|
2020-05-11 16:05:59 +02:00 |
Alexander Medvednikov
|
2618b4fbd3
|
Revert "tests: add more tests on interfaces "
This reverts commit 538662d99a .
|
2020-05-11 15:19:55 +02:00 |
Alexander Medvednikov
|
aacc35db19
|
pref: do not enable globals by default
|
2020-05-11 15:19:47 +02:00 |
Sandro Martini
|
538662d99a
|
tests: add more tests on interfaces
|
2020-05-11 15:13:03 +02:00 |
kdmult
|
ea8fcb3981
|
cgen: fix nested conditional statements
|
2020-05-11 15:11:48 +02:00 |
Alexey
|
6f2dcd819f
|
parser: force visibility of interface methods
|
2020-05-11 15:10:26 +02:00 |
Alexander Medvednikov
|
828f9af64c
|
checker: fmt
|
2020-05-11 14:38:25 +02:00 |
Alexander Medvednikov
|
8a6820d1b7
|
checker: revert fmt for now
|
2020-05-11 14:32:41 +02:00 |
Alexander Medvednikov
|
ce03761375
|
parser: fix mut args with the new syntax; checker: fmt
|
2020-05-11 14:16:20 +02:00 |
joe-conigliaro
|
2a40665919
|
ast/checker: cast no longer needed & use auto deref
|
2020-05-11 20:02:28 +10:00 |
Kris Cherven
|
8bc0c31f29
|
parser: add error for variables, that are evaluated, but not used
|
2020-05-11 11:13:36 +03:00 |
Kris Cherven
|
3a3d00ac72
|
checker: prevent C error on const mutation
|
2020-05-11 11:09:58 +03:00 |
Ned Palacios
|
38277d1dac
|
cgen: fix gen_str_for_struc when called on a struct with a pointer field
|
2020-05-11 11:08:21 +03:00 |
joe-conigliaro
|
1b3cd7abe0
|
cgen: fix sum type assign/push from in match branch & type mod
|
2020-05-11 16:59:55 +10:00 |
yuyi
|
64ba59590e
|
cgen: fix multiple assign error
|
2020-05-11 09:45:11 +03:00 |
joe-conigliaro
|
74cc2b2a68
|
table: add function return type check
|
2020-05-11 14:47:39 +10:00 |
Hungry Blue Dev
|
e52d35bf16
|
math.fraction: improve documentation, remove unnecessary mut modifiers
|
2020-05-11 07:20:55 +03:00 |
yuyi
|
14bba54ddc
|
vrepl: fix array_init error
* optimize print conditions
|
2020-05-11 07:15:08 +03:00 |
Fabien Salathe
|
c9c956fc8a
|
flag: fix a comment with an example
|
2020-05-10 22:27:14 +02:00 |
Alexey
|
71c2b26103
|
checker: fix checking uninitialized refs
|
2020-05-10 22:26:47 +02:00 |
Enzo Baldisserri
|
b09fd66aa2
|
gen: fix interface pointers
|
2020-05-10 21:16:22 +02:00 |
Louis Schmieder
|
40aad27a67
|
pg: remove `pg.`
|
2020-05-10 21:16:03 +02:00 |
Delyan Angelov
|
7c5905164e
|
glm: remove unused variable (prevents compiling ui with -prod)
|
2020-05-10 19:59:26 +03:00 |
Delyan Angelov
|
1bf13f8a09
|
v version: do more accurate current git hash detection, when not on a branch
|
2020-05-10 18:56:19 +03:00 |
Alexander Medvednikov
|
a2d120b583
|
cgen: fix reassignment of optionals
|
2020-05-10 17:41:33 +02:00 |
eyelash
|
1722171adc
|
compiler: color only the relevant part of the source code in error messages
|
2020-05-10 17:24:29 +02:00 |
Louis Schmieder
|
3ec2608d6b
|
glm: matrix multiplication; docs: toc
|
2020-05-10 16:49:29 +02:00 |
eyelash
|
72dfe11fa5
|
scanner: add a colon to error messages (#4818)
|
2020-05-10 16:29:15 +02:00 |
eyelash
|
f396f70ae7
|
repl: fix newline in error messages
|
2020-05-10 16:26:56 +02:00 |
Sumeet Chhetri
|
8dc0c5a699
|
cgen: C++ compiler support - Part 1
|
2020-05-10 16:26:21 +02:00 |
Hungry Blue Dev
|
8aba3eaa07
|
math.fractions: refactor and add more tests
|
2020-05-10 16:25:33 +02:00 |
joe-conigliaro
|
a73660a4c3
|
checker/cgen: simplify assigning fn to var
|
2020-05-11 00:13:30 +10:00 |
yuyi
|
0606d26ba7
|
csv: fix field multiple lines error
|
2020-05-10 14:19:26 +02:00 |
eyelash
|
eabc72d4fe
|
compiler: print underlines in the same color as the error
|
2020-05-10 12:27:46 +02:00 |
Ned Palacios
|
5f0ad0f562
|
compiler: add output mode for errors and warnings, support for `-silent` flag
|
2020-05-10 12:26:57 +03:00 |
Ned Palacios
|
01de1b6375
|
parser: fix JSON encode function name on invocation
|
2020-05-10 10:30:35 +03:00 |
Delyan Angelov
|
edb921f463
|
sync: mark sync.WaitGroup and sync.Mutex with [ref_only]
|
2020-05-10 08:58:54 +03:00 |
yuyi
|
7f69c2fbf5
|
parser: check `import` in the middle of file error
|
2020-05-10 07:47:20 +03:00 |
pancake
|
76eec7b6ea
|
readline: fix input echo issue on musl-based systems
|
2020-05-10 07:39:31 +03:00 |
yuyi
|
ba3a631954
|
parser: check for module statement errors
|
2020-05-10 02:28:56 +02:00 |
yuyi
|
85723e3799
|
checker: check for_in_map using one variable error
|
2020-05-10 02:28:43 +02:00 |
Alexander Medvednikov
|
10da871743
|
checker: handle unknown fields in fail_if_immutable
|
2020-05-10 02:07:15 +02:00 |
Alexander Medvednikov
|
09f6cd6a75
|
parser/checker: [ref_only] attribute
|
2020-05-09 23:45:41 +02:00 |
Alexander Medvednikov
|
3052266a40
|
live: make compile; pref: allow _linux.v etc
|
2020-05-09 20:31:50 +02:00 |
Alexander Medvednikov
|
d7c4630d33
|
checker: make pub field check an error
|
2020-05-09 18:34:07 +02:00 |
yuyi
|
53989daf9a
|
csv: fix empty line error
|
2020-05-09 17:35:03 +02:00 |
yuyi
|
3eeef6203e
|
checker: check for map_init key duplicate
|
2020-05-09 16:55:38 +02:00 |
Alexander Medvednikov
|
dea9ca2491
|
cgen: fix a big with &Foo{} init
|
2020-05-09 15:23:48 +02:00 |
Alexander Medvednikov
|
c64f8b0d1f
|
parser/checker: pub: struct fields
|
2020-05-09 15:16:48 +02:00 |
Delyan Angelov
|
809676a856
|
cgen: fix a sporadic segfault when giving -width in a string interpolation
|
2020-05-09 15:23:37 +03:00 |
yuyi
|
5f435fa1cc
|
parser: check enum name and field name errors
|
2020-05-09 12:43:10 +02:00 |
ka-weihe
|
85763d0539
|
map: faster get and exists
|
2020-05-09 12:42:01 +02:00 |
Tanel Liiv
|
7815a5495c
|
checker: handle multireturn fn calls as if/match last expressions
|
2020-05-08 22:49:45 +02:00 |
pancake
|
b5bf0eeac5
|
time: add .no_delimiter format option
|
2020-05-08 21:23:26 +03:00 |
Sandro Martini
|
910a8934cb
|
checker: fix typo on error message and related test
|
2020-05-08 21:21:47 +03:00 |
Delyan Angelov
|
4b347ff148
|
v self: force the subprocess to show colors
|
2020-05-08 19:04:24 +03:00 |
Alexander Medvednikov
|
6ea741e26e
|
Revert "tests: valgrind: enable string tests"
This reverts commit 1ea13ac7f3 .
|
2020-05-08 16:18:14 +02:00 |
Alexander Medvednikov
|
1ea13ac7f3
|
tests: valgrind: enable string tests
|
2020-05-08 13:18:27 +00:00 |
Ned Palacios
|
5b47ec49af
|
parser: add support for multiple struct field attributes
|
2020-05-08 15:09:42 +02:00 |
Alexander Medvednikov
|
c29f76454e
|
cgen: clone strings in struct_init()
|
2020-05-08 15:07:53 +02:00 |
yuyi
|
ef505e21ee
|
parser: check for import errors
|
2020-05-08 16:01:54 +03:00 |
Alexander Medvednikov
|
2f4fc86d58
|
checker: fix unknown var enum crash
|
2020-05-08 15:00:06 +02:00 |
Hungry Blue Dev
|
dbb3c2a4cd
|
math.fractions: improve `.equals()`
|
2020-05-08 15:39:23 +03:00 |
Delyan Angelov
|
e08566d571
|
compiler: do not exit early, when given -o x.c or -o x.js
|
2020-05-08 15:31:03 +03:00 |
Delyan Angelov
|
4c320e1512
|
profile: support for -profile-no-inline (with it, [inline] fns will not get profiled)
|
2020-05-08 15:01:59 +03:00 |
Alexander Medvednikov
|
847a1035a5
|
cgen: use tos_lit
|
2020-05-08 13:25:23 +02:00 |
Ned Palacios
|
13b11a4155
|
parser: fix struct attribute for array struct field
|
2020-05-08 13:09:40 +02:00 |
Delyan Angelov
|
fec7f0f0b9
|
cgen: fix auto .str() generation for []&T, and `fn (t &T) str() string{}`
|
2020-05-08 12:48:07 +03:00 |
yuyi
|
8866773f97
|
vrepl: fix import and comment error in the middle of other lines
|
2020-05-08 09:34:59 +03:00 |
Uwe Krüger
|
722a2c71c3
|
builtin: new_array: cap should not be less than len
|
2020-05-07 22:41:41 +02:00 |
Delyan Angelov
|
673acdbd00
|
tcc: fix selfcompilation with tcc. Temporarily disable crashing interface test
|
2020-05-07 20:59:45 +03:00 |
Delyan Angelov
|
7207a4970b
|
solaris: fix tests
|
2020-05-07 16:19:21 +00:00 |
Alexander Medvednikov
|
8cfb2ad6c9
|
string: is_lit
|
2020-05-07 18:05:57 +02:00 |
Alexander Medvednikov
|
ef387779bf
|
cgen: fix -autofree
|
2020-05-07 17:51:30 +02:00 |
Alexander Medvednikov
|
3c6e090ae3
|
ci: test broken -autofree
|
2020-05-07 17:45:00 +02:00 |
Alexander Medvednikov
|
be063d740b
|
ci: test self compilation with -autofree
|
2020-05-07 17:37:12 +02:00 |
yuyi
|
d096763f62
|
token: change 'STR' kind to 'string'
|
2020-05-07 16:26:22 +02:00 |
Tanel Liiv
|
d0afa748ff
|
cgen: optional multiple return values
|
2020-05-07 15:36:04 +02:00 |
Alexander Medvednikov
|
12221fb999
|
cgen: fix msvc struct init
|
2020-05-07 13:11:24 +02:00 |
Alexander Medvednikov
|
6ff93f270c
|
cgen: simplify struct_init()
|
2020-05-07 13:00:42 +02:00 |
yuyi
|
78efe72c4c
|
checker: optimize check string cast error
|
2020-05-07 12:34:06 +02:00 |
Don Alfons Nisnoni
|
0a930f9862
|
bitfield: rename functions, getsize => get_size, etc.
|
2020-05-07 11:21:14 +03:00 |
Enzo Baldisserri
|
0f8ed84333
|
checker: verify interface is not used as receiver
|
2020-05-07 11:14:51 +03:00 |
Major Taylor
|
7d32476841
|
math: extract platform specific wrapper functions to math.c.v and math.js.v
|
2020-05-07 08:47:24 +03:00 |
yuyi
|
2f52106253
|
parser: use .next instead of .check, when a token is already known
|
2020-05-07 07:51:36 +03:00 |
Uwe Krüger
|
59aa31cee5
|
cgen: string interpolation: optimize away some partial strings of 0 length
|
2020-05-07 04:34:18 +02:00 |
wilesun
|
19390871e9
|
json: handle external types
|
2020-05-07 04:33:19 +02:00 |
yuyi
|
98a1b2782b
|
parser: simplify import
|
2020-05-07 04:32:29 +02:00 |
Delyan Angelov
|
e33805b2b3
|
json.decode: fix expressions in the second argument, also fixes news_fetcher.v
|
2020-05-06 21:44:50 +03:00 |
Tanel Liiv
|
b5a1544bf8
|
parser: allow re-assigning fns to variables
|
2020-05-06 20:09:29 +02:00 |
Delyan Angelov
|
f638caef39
|
compiler: v -autofree can now compile itself
|
2020-05-06 19:03:51 +03:00 |
Delyan Angelov
|
88ef0a75e2
|
ci: pass V_CI_MUSL=1 on musl CI jobs
|
2020-05-06 15:10:47 +03:00 |
Alexander Medvednikov
|
8d2a4d2436
|
clipboard: make compile on linux
|
2020-05-06 12:00:52 +00:00 |
Alexander Medvednikov
|
207324d15b
|
strings.builder: remove unused var; clipboard: linux fixes
|
2020-05-06 11:44:08 +00:00 |
Alexander Medvednikov
|
25db5e96a3
|
strings.builder: fix a memory leak
|
2020-05-06 11:12:00 +00:00 |
Don Alfons Nisnoni
|
e87289f24d
|
Fix typo on checker
|
2020-05-06 13:57:40 +03:00 |
Alexander Medvednikov
|
f80876497e
|
fmt: use the new `mut` syntax in args
|
2020-05-06 12:43:46 +02:00 |
Alexander Medvednikov
|
b4c93349e8
|
checker: fix interface name check
|
2020-05-06 12:32:44 +02:00 |
Alexander Medvednikov
|
cc66eb1194
|
parser/checker: check capital letters in interface names/methods
|
2020-05-06 12:26:00 +02:00 |
Alexander Medvednikov
|
99cf520bd4
|
parser: `mut x Type` syntax for args
|
2020-05-06 12:13:22 +02:00 |
yuyi
|
51f3f31a4e
|
checker: check string(1) cast error
|
2020-05-06 12:05:24 +02:00 |
Don Alfons Nisnoni
|
5bd3045498
|
mysql: Using `int.str()` instead of `string(int)`
|
2020-05-06 12:53:47 +03:00 |
Enzo Baldisserri
|
215657e16a
|
checker: check interface implementation
|
2020-05-06 11:29:37 +02:00 |
yuyi
|
b627bb933c
|
message: use uniform message reference format
|
2020-05-06 09:10:40 +03:00 |
yuyi
|
c653977c15
|
cgen: fix struct with map field str() error
|
2020-05-06 09:08:48 +03:00 |
Alexander Medvednikov
|
67351c74c8
|
V 0.1.27
|
2020-05-06 02:26:43 +02:00 |
Don Alfons Nisnoni
|
67a50b5b34
|
mysql: simplify `Result.maps`
|
2020-05-06 00:10:10 +02:00 |
Enzo Baldisserri
|
c1f224640f
|
checker: verify that there is a main module
|
2020-05-06 00:09:46 +02:00 |
Alexander Medvednikov
|
25b536d03f
|
cgen: str: do not free "true"/"false" literals
|
2020-05-05 23:25:14 +02:00 |
Don Alfons Nisnoni
|
8fbbf488ab
|
darwin: fix `if ()` warning
|
2020-05-05 20:07:43 +02:00 |
Alexander Medvednikov
|
473ffb5489
|
builtin: fix a leak in array_str
|
2020-05-05 18:04:43 +00:00 |
Sandro Martini
|
50351eded8
|
tests: interface: minor fixes
|
2020-05-05 19:56:11 +02:00 |
Alexander Medvednikov
|
fd0f8d06f8
|
tests: valgrind: use correct flag
|
2020-05-05 17:55:11 +00:00 |
Delyan Angelov
|
9e715b8701
|
cgen: use c_name() while generating code for `or {}`
|
2020-05-05 19:28:25 +03:00 |
Alexander Medvednikov
|
ff88906e9a
|
cgen: add `new` to reserved words
|
2020-05-05 16:50:59 +02:00 |
Delyan Angelov
|
ddb5a8e6e4
|
time: add specialized vpc_now_darwin to fix -os cross
|
2020-05-05 17:31:21 +03:00 |
Sandro Martini
|
dd2a1455dc
|
tests: add another function to the Animal interface
|
2020-05-05 16:27:05 +02:00 |
Tanel Liiv
|
b16281d6e4
|
cgen: pass around functions
|
2020-05-05 16:21:21 +02:00 |
Alexander Medvednikov
|
7e71799980
|
checker: check `none` properly
|
2020-05-05 15:29:52 +02:00 |
Alexander Medvednikov
|
a0ca68ce3f
|
checker: do not allow `string(int)`
|
2020-05-05 15:26:42 +02:00 |
Alexander Medvednikov
|
c5d295c378
|
fmt: move struct init logic to a separate fn
|
2020-05-05 15:06:51 +02:00 |
Alexander Medvednikov
|
148661ead6
|
json: wrap up: encode_array()
|
2020-05-05 14:54:12 +02:00 |
Alexander Medvednikov
|
b3d7b0205a
|
json: handle field attributes
|
2020-05-05 14:41:27 +02:00 |
Delyan Angelov
|
a3bc32f3e0
|
builder: use time.new_stopwatch instead of benchmark.new_benchmark (reduces exe size)
|
2020-05-05 15:31:38 +03:00 |
Alexander Medvednikov
|
ee92060d4d
|
json: decode_array fix
|
2020-05-05 14:19:31 +02:00 |
Alexander Medvednikov
|
ef6c418eb6
|
json: decode arrays
|
2020-05-05 13:23:44 +02:00 |
Steve Phillips
|
84fc587ec2
|
cgen: use a temp var in map()
|
2020-05-05 10:29:23 +02:00 |
yuyi
|
6aca3be474
|
cgen: fix []map[string]string.str() error
|
2020-05-05 08:46:19 +03:00 |
Ned Palacios
|
507e457c0a
|
builtin: add parenthesis around frame_addr as a workaround
|
2020-05-05 08:35:26 +03:00 |
Delyan Angelov
|
f9fe5b60a7
|
v doc: skip _x.c.v when not on x, i.e. filter files like v itself
|
2020-05-05 08:08:03 +03:00 |
Alexander Medvednikov
|
621cb7b914
|
parser: short struct init syntax
|
2020-05-05 02:12:51 +02:00 |
Uwe Krüger
|
a4b6c3fa5d
|
cgen: hex representation of signed and pointers
|
2020-05-05 00:24:33 +02:00 |
Steve Phillips
|
081338b8bf
|
checker.v: suggest []Type{}, not []Type
|
2020-05-05 00:20:32 +02:00 |
Delyan Angelov
|
1c945faa15
|
cgen: fix _to_Interface_INAME conversion fns generation
|
2020-05-05 00:01:54 +03:00 |
Delyan Angelov
|
b5fda6e410
|
cgen: skip interface outside methods, while generating _interface_methods struct
|
2020-05-04 22:56:58 +03:00 |
Alexander Medvednikov
|
32a7bd3a48
|
parser/checker: do not allow using private types from other modules
|
2020-05-04 21:56:41 +02:00 |
Alexander Medvednikov
|
9aa1a65489
|
checker: check match condition
|
2020-05-04 21:03:18 +02:00 |
Alexander Medvednikov
|
9823d80e0c
|
json: minor fixes + bring back the test
|
2020-05-04 20:43:22 +02:00 |
Delyan Angelov
|
6e1825b417
|
cgen: prefix with v_ keyword C fn args too
|
2020-05-04 19:55:21 +03:00 |
joe-conigliaro
|
c9798d3918
|
table: fix check for fn with no args
|
2020-05-05 02:44:10 +10:00 |
joe-conigliaro
|
2bb995274e
|
table: make table.check ret false & update fn args check
|
2020-05-05 02:34:11 +10:00 |
Delyan Angelov
|
d7e7113047
|
cgen: fix `for char in nums {}`
|
2020-05-04 18:57:33 +03:00 |
joe-conigliaro
|
b2157388d9
|
checker: check method args
|
2020-05-05 01:32:40 +10:00 |
Delyan Angelov
|
36bf99ed5a
|
parser: remove forgotten ----- line
|
2020-05-04 18:28:55 +03:00 |
Delyan Angelov
|
d30eefc3be
|
fmt: improve handling of map[k]v and []map[k]v types
|
2020-05-04 18:27:07 +03:00 |
Alexander Medvednikov
|
fd8a194df0
|
json: wrap up decode()
|
2020-05-04 16:46:39 +02:00 |
Delyan Angelov
|
5eb71c4a13
|
fmt: initial support for -debug
|
2020-05-04 17:27:41 +03:00 |
Don Alfons Nisnoni
|
23df9b052e
|
mysql: update code & add a feature to get value as map
|
2020-05-04 14:58:24 +02:00 |
ka-weihe
|
f27fd63f8c
|
builtin: map: one voidptr for all values
|
2020-05-04 14:56:19 +02:00 |
Enzo Baldisserri
|
8fd69e845f
|
cgen: fix using pointer as interface receiver
|
2020-05-04 14:21:03 +02:00 |
Delyan Angelov
|
0e241162d9
|
panic: distinguish between builtin and main modules
|
2020-05-04 14:51:30 +03:00 |
Delyan Angelov
|
cdf70c070b
|
tests: add panic_with_cg.vv/.out
|
2020-05-04 14:34:51 +03:00 |
joe-conigliaro
|
57903247e3
|
parser: add back struct field removed by accident
|
2020-05-04 21:27:54 +10:00 |
yuyi
|
90fc23ccfb
|
checker: fix array init []type{cap: x.len} error
|
2020-05-04 13:22:09 +02:00 |
Uwe Krüger
|
f831910c5c
|
utf: fix string length calculation for combining characters
|
2020-05-04 13:21:11 +02:00 |
ka-weihe
|
a72f3ed0c7
|
builtin: voidptr.str() and byteptr.str()
|
2020-05-04 13:20:18 +02:00 |
joe-conigliaro
|
d75f286230
|
parser: store FnDecl body position and use for scope
|
2020-05-04 20:31:34 +10:00 |
joe-conigliaro
|
4571a5eb83
|
gen: use middle of fn pos to load correct scope for free
|
2020-05-04 20:08:37 +10:00 |
yuyi
|
c112b3aec5
|
tests: fix cleanup of compiler_test.v on windows
|
2020-05-04 11:33:54 +02:00 |
Delyan Angelov
|
068da2ea0f
|
builtin: fix warning about unused skipframes
|
2020-05-04 12:05:08 +03:00 |
Alexander Medvednikov
|
eca24c5d11
|
tests: interface: rename Speaker to Animal
|
2020-05-04 10:58:42 +02:00 |
Delyan Angelov
|
acd80f052b
|
tests: improve diagnostic output on failure
|
2020-05-04 11:21:25 +03:00 |
yuyi
|
e0e064ff08
|
scanner: fix string slash line breaks error
|
2020-05-04 10:19:23 +02:00 |
yuyi
|
cd5dccd855
|
gen: fix compilter_test.v error on windows
|
2020-05-04 10:09:49 +02:00 |
Enzo Baldisserri
|
4b3ce79e84
|
interface: support arguments in methods and simplify
|
2020-05-04 00:14:59 +02:00 |
Delyan Angelov
|
71a92eb87b
|
tests: fix CI failing for builtin __as_cast
|
2020-05-03 22:25:38 +03:00 |
Delyan Angelov
|
242670a33d
|
compiler: add support for panic_debug with -cg
|
2020-05-03 22:13:59 +03:00 |
Delyan Angelov
|
0b750a234f
|
repl: fix for single lines ending with // comment
|
2020-05-03 20:48:46 +03:00 |
Delyan Angelov
|
845ffb59a6
|
live: use mostly pure V code for reloading, eases customization
|
2020-05-03 20:22:24 +03:00 |
Uwe Krüger
|
4a096bd133
|
parser: fix string interpolation for default conversion
|
2020-05-03 18:12:59 +02:00 |
Alexander Medvednikov
|
de749e9d3b
|
parser/cgen: interface <<; `any` type
|
2020-05-03 18:08:45 +02:00 |
Alexander Medvednikov
|
2a016d03ac
|
checker: use `[]int` instead of `array_int` in errors
|
2020-05-03 16:49:05 +02:00 |
Alexander Medvednikov
|
2a5421133d
|
clipboard: Linux fixes
|
2020-05-03 16:39:26 +02:00 |
Alexander Medvednikov
|
361fad9231
|
tests: disable valgrind test until fn scopes are fixed
|
2020-05-03 16:29:15 +02:00 |
Alexander Medvednikov
|
16fe8103ba
|
tests: bring back valgrind test
|
2020-05-03 13:12:05 +02:00 |
joe-conigliaro
|
8df7637853
|
checker: dont re match/cast with position() when already cast to sum type
|
2020-05-03 14:22:41 +10:00 |
Delyan Angelov
|
7e4e3abc2c
|
compiler: circuimvent the dependency cycle v.ast <-> v.table
|
2020-05-02 22:52:10 +03:00 |
Delyan Angelov
|
dbbfb04e7c
|
docs: change obsolete -show_c_cmd to -showcc and -keepc
|
2020-05-02 19:01:53 +03:00 |
yuyi
|
02807aab43
|
interpolation: fix error on windows_gcc
|
2020-05-02 18:22:34 +03:00 |
Alexander Medvednikov
|
b0018ed594
|
checker: better << error
|
2020-05-02 16:48:52 +02:00 |
joe-conigliaro
|
483f0f408c
|
ast: allow scope var shadowing
|
2020-05-02 23:46:53 +10:00 |
Tanel Liiv
|
68ca8ab8a4
|
array: nested map()
|
2020-05-02 15:26:58 +02:00 |
Alexander Medvednikov
|
44c00199b6
|
cgen: fix fixed array consts and pointer interfaces
|
2020-05-02 15:18:58 +02:00 |
joe-conigliaro
|
a9a8539e41
|
checker: small fix in assign_stmt
|
2020-05-02 20:21:28 +10:00 |
joe-conigliaro
|
fd925fbd05
|
checker: simplify assign_stmt & add better checks
|
2020-05-02 19:45:08 +10:00 |
Alexander Medvednikov
|
06d533b0c1
|
cgen: clean up _STR
|
2020-05-02 11:11:32 +02:00 |
eyelash
|
716d867f25
|
cgen: generate static C functions
|
2020-05-02 10:42:38 +02:00 |
Alexander Medvednikov
|
06173834c0
|
cgen: interface_call()
|
2020-05-02 10:10:52 +02:00 |
Delyan Angelov
|
aa9bb6f71a
|
compiler: fix -live compilation of bounce example with gcc-9 & clang
|
2020-05-02 02:36:29 +03:00 |
Alexander Medvednikov
|
7a51d4d796
|
cgen: revert `new`
|
2020-05-02 00:59:06 +02:00 |
Alexander Medvednikov
|
7dc98120c0
|
cgen: vfmt -live fix; add new to c_reserved
|
2020-05-02 00:45:45 +02:00 |
Uwe Krüger
|
170ee4312f
|
cgen: string interpolation field width support for large integers and utf8 strings
|
2020-05-02 00:43:59 +02:00 |
Alexander Medvednikov
|
2f64594ce0
|
cgen: more interface fixes
|
2020-05-02 00:28:46 +02:00 |
Delyan Angelov
|
7038f59ca5
|
compiler: add back support for -live
|
2020-05-02 01:14:44 +03:00 |
eyelash
|
130324df76
|
compiler: remove debug prints
|
2020-05-02 00:10:36 +02:00 |
yuyi
|
b21be7f670
|
parser: multiple names error
|
2020-05-01 18:18:58 +02:00 |
yuyi
|
de272654f1
|
repl: fix import xxx with no fn main error
|
2020-05-01 18:12:18 +02:00 |
eyelash
|
4d04e88679
|
errors: show line numbers in default color and add a space
|
2020-05-01 14:46:12 +02:00 |
eyelash
|
6b08cbcb7a
|
compiler: print warnings in magenta
|
2020-05-01 13:44:15 +03:00 |
Alexander Medvednikov
|
0106eb1cf6
|
cgen: fix thread wrapper
|
2020-05-01 12:32:10 +02:00 |
Alexander Medvednikov
|
0b8a0d1640
|
checker: fix _ check
|
2020-05-01 12:22:39 +02:00 |
joe-conigliaro
|
fb1c60c53d
|
checker: add back check struct field fn args
|
2020-05-01 20:12:21 +10:00 |
Alexander Medvednikov
|
c1ee14cc3e
|
json: decode() part 1
|
2020-05-01 12:02:31 +02:00 |
joe-conigliaro
|
a0e662bef9
|
checker: remove debug println from selector_expr
|
2020-05-01 19:54:47 +10:00 |
joe-conigliaro
|
03904085c4
|
checker: check fn field exprs
|
2020-05-01 19:50:32 +10:00 |
Delyan Angelov
|
35f56bc4f0
|
vfmt: fix eating ? in `$if x ? {}`, missing newline in `__global ...`
|
2020-05-01 12:29:23 +03:00 |
Delyan Angelov
|
59525c8c93
|
tests: fix missing ? after v fmt run
|
2020-05-01 12:01:30 +03:00 |
Delyan Angelov
|
84785bbb59
|
tests: fix msvc transient failures when sleep_ms takes longer
|
2020-05-01 11:58:56 +03:00 |
Alexander Medvednikov
|
51da324465
|
tests: fix eventbus_test.v
|
2020-05-01 10:57:19 +02:00 |
Delyan Angelov
|
3608c81cb9
|
time: add stopwatch_test.v
|
2020-05-01 10:21:15 +03:00 |
Tanel Liiv
|
182e7071bf
|
array: map() function
|
2020-05-01 00:29:54 +02:00 |
Alexander Medvednikov
|
b0c710c985
|
checker: allow `fn == 0` comparison for now
|
2020-04-30 18:51:33 +02:00 |
Delyan Angelov
|
a6dfc6d46b
|
compiler: support ctags with -print_v_files and .ctags.d/v.ctags
|
2020-04-30 19:45:50 +03:00 |
Alexander Medvednikov
|
250dea7bd1
|
cgen: another imported interface fix
|
2020-04-30 18:23:17 +02:00 |
Alexander Medvednikov
|
f1903f3c1f
|
parser: fix imported interfaces
|
2020-04-30 18:06:14 +02:00 |
Alexander Medvednikov
|
9971c58ca3
|
all: remove `var` key
|
2020-04-30 16:55:33 +02:00 |
Alexander Medvednikov
|
20013e4b4b
|
table: interfaces: unique gen_types
|
2020-04-30 16:48:46 +02:00 |
Tim Basel
|
473617f061
|
cli: add option with default
|
2020-04-30 12:18:46 +02:00 |
yuyi
|
5481c0fc84
|
parser: uniform handling of enum field format
|
2020-04-30 12:18:16 +02:00 |
yuyi
|
81ed6ad2a1
|
checker: check duplicate consts
|
2020-04-30 12:17:31 +02:00 |
yuyi
|
4d415e56d6
|
checker: check enum field name duplicate
|
2020-04-30 09:34:18 +02:00 |
Enzo Baldisserri
|
50491670af
|
fmt: fix formatting backtick char literal
|
2020-04-30 09:33:43 +02:00 |
yuyi
|
c4f672454f
|
checker: check import duplicates
|
2020-04-30 09:33:12 +02:00 |
Henrixounez
|
f6d74c8a37
|
checker: error on ternary if type mismatch
|
2020-04-30 09:32:29 +02:00 |
Alexey
|
54d1a29267
|
dl: improve module
|
2020-04-29 21:01:19 +02:00 |
Delyan Angelov
|
e5ae4b6454
|
parser: fix match exprs over C.VALUES (needed for C.GLFW_KEY_UP)
|
2020-04-29 20:35:57 +03:00 |
yuyi
|
b2a076e8b8
|
csv: fix last-field-empty error
|
2020-04-29 16:50:02 +02:00 |
Tim Basel
|
3e4cd12fd0
|
.gitignore: ignore all binary files by default
|
2020-04-29 16:49:13 +02:00 |
Alexander Medvednikov
|
03cee3fee0
|
builder: fix run & is_test check
|
2020-04-29 16:44:50 +02:00 |
Alexander Medvednikov
|
be0e848ae8
|
builder: do not allow `v run _test.v`
|
2020-04-29 14:52:32 +02:00 |
yuyi
|
1fabb7d5a6
|
checker: fix string.str() error
|
2020-04-29 13:51:42 +02:00 |
Enzo Baldisserri
|
390d88f933
|
parser: fail for section redefinition in struct
|
2020-04-29 13:32:39 +02:00 |
joe-conigliaro
|
98cd013908
|
cgen: fix interface struct sorting
|
2020-04-29 21:08:39 +10:00 |
Alexander Medvednikov
|
51d0ce0222
|
tests: more interface tests; checker: handle zero selectorexpr type error
|
2020-04-29 12:46:09 +02:00 |
Henrixounez
|
c500044bae
|
checker: unreachable code warning
|
2020-04-29 12:31:18 +02:00 |
Alexander Medvednikov
|
2fc05b814c
|
all: interface arrays
|
2020-04-29 12:21:15 +02:00 |
Delyan Angelov
|
3d8853af2b
|
builder: move warning/error printing into print_warnings_and_errors
|
2020-04-29 13:04:09 +03:00 |
Delyan Angelov
|
1e910c6afe
|
tests: add reference_field_must_be_initialized.vv
|
2020-04-29 12:56:12 +03:00 |
Delyan Angelov
|
bf8ed1815c
|
builder: print collected checker warnings too
|
2020-04-29 12:38:43 +03:00 |
penguindark
|
ad46e1b832
|
strconv: v_printf documentation
* v_printf documentation
* syntax fix
|
2020-04-29 12:25:38 +03:00 |
Delyan Angelov
|
0e765e34be
|
vfmt: extract v.util.find_working_diff_command, color_compare_files
|
2020-04-29 11:51:45 +03:00 |
Delyan Angelov
|
dd3434598c
|
checker_test: remove generated .v files, when a test is OK
|
2020-04-29 11:48:51 +03:00 |
yuyi
|
117649f40d
|
checker: check devision by zero (int and float)
|
2020-04-29 10:07:27 +02:00 |
yuyi
|
2b48ce21df
|
checker: make sure `main` has no args and doesn't return
|
2020-04-29 09:19:46 +02:00 |
yuyi
|
a9e33e712a
|
checker: check struct field name duplicate
|
2020-04-29 09:11:36 +02:00 |
Henrixounez
|
0dc7a57e1f
|
scanner: prevent panic with string starting on first character
|
2020-04-28 18:57:16 +02:00 |
Delyan Angelov
|
8c526ad05b
|
tests: ignore vlib/v/checker/tests/*.v files (only *.vv are sources there)
|
2020-04-28 16:45:25 +03:00 |
Henrixounez
|
0afaef5818
|
checker: ambiguous function call error
* checker: ambiguous function call error
* checker: ambiguous function call error wording
* checker: ambiguous functions tests newline
|
2020-04-28 16:27:49 +03:00 |
Delyan Angelov
|
8a81aa5c93
|
errors: disambiguate between variable and fn source_context
|
2020-04-28 16:20:50 +03:00 |
Delyan Angelov
|
7924b4d77c
|
compiler: handle a panic when an error is produced, but source == ''
|
2020-04-28 16:15:56 +03:00 |
Delyan Angelov
|
8ea087f957
|
vfmt: fix compilation; handle the case when fmt.tabs is not enough
|
2020-04-28 16:04:37 +03:00 |
Delyan Angelov
|
c6a15dba50
|
compiler: add support for size_t
|
2020-04-28 15:07:19 +03:00 |
jm-duro
|
210b6e36b6
|
http: mutable request fields
|
2020-04-28 13:57:48 +02:00 |
Alexander Medvednikov
|
1e4e882bc2
|
cc/cgen: cached modules fixes
|
2020-04-28 13:15:37 +02:00 |
Sandro Martini
|
761fb930ce
|
dl: add dynamic load module
|
2020-04-28 11:53:55 +02:00 |
Enzo Baldisserri
|
7bf8731778
|
checker: check variable mutability for postfix exprs
|
2020-04-28 11:20:19 +02:00 |
Delyan Angelov
|
54b71242fe
|
builder: add autofree compatibility; protect against b.str() twice in a row
|
2020-04-28 11:03:43 +03:00 |
yuyi
|
f2060d431e
|
checker: check division by zero
|
2020-04-28 09:52:01 +02:00 |
joe-conigliaro
|
ef4f4825ac
|
cgen: auto dereference for optional
|
2020-04-28 15:59:41 +10:00 |
yuyi
|
28f5920bb0
|
cgen: fix `map` `fixed-array` .str() error
|
2020-04-28 07:22:46 +02:00 |
yuyi
|
b20777df59
|
checker: main function called error
|
2020-04-28 07:21:50 +02:00 |
Major Taylor
|
9edbcb823c
|
cli: Fix off-by-one error in smart-wrap
|
2020-04-28 00:10:36 +03:00 |
Enzo Baldisserri
|
682838a0cf
|
checker: check array and fields mutability
|
2020-04-27 22:53:26 +02:00 |
Alexander Medvednikov
|
5d073dcce5
|
x64: # opcodes
|
2020-04-27 21:38:58 +02:00 |
joe-conigliaro
|
9f76a7b250
|
parser: simplify unused vars & add loop/if vars etc
|
2020-04-27 23:16:31 +10:00 |
Delyan Angelov
|
e67bf674e3
|
scanner: cleanup, only v.parser now depends on v.scanner
|
2020-04-27 16:08:04 +03:00 |
yuyi
|
e9f764db4f
|
cgen: uniform string output format
|
2020-04-27 14:48:28 +02:00 |
Alexander Medvednikov
|
eb8973c362
|
builder: module caching fixes
|
2020-04-27 14:46:25 +02:00 |
Alexander Medvednikov
|
f005079e0b
|
pref: rename keep_c
|
2020-04-27 13:28:00 +02:00 |
ka-weihe
|
18faaefe82
|
map: get: remove malloc and memcpy
|
2020-04-27 13:27:33 +02:00 |
Delyan Angelov
|
73106b5f5e
|
profile: measure defer{} statements too
|
2020-04-27 13:18:37 +03:00 |
Alexander Medvednikov
|
fde929ee30
|
cgen: remove tos3() call: part 1
|
2020-04-27 12:10:08 +02:00 |
Delyan Angelov
|
dd1ee39271
|
profile: produce civilized output
|
2020-04-27 12:45:19 +03:00 |
yuyi
|
99a7b69578
|
cgen: optimize map_to_string format
|
2020-04-27 10:52:21 +02:00 |
Delyan Angelov
|
c84dee5968
|
profile: move profiling related logic into vlib/v/gen/profile.v
|
2020-04-27 09:40:13 +03:00 |
yuyi
|
95754f211f
|
cgen: generate str function when using x.str()
|
2020-04-27 08:09:37 +02:00 |
Alexander Medvednikov
|
3256d060f7
|
array: inline ensure_cap
|
2020-04-27 07:39:33 +02:00 |
Alexander Medvednikov
|
ef26f27753
|
builtin: replace `isnil` calls for perfomance
|
2020-04-27 07:13:36 +02:00 |
Delyan Angelov
|
e523540f3a
|
profile: use specialized time__vpc_now
|
2020-04-26 22:14:54 +03:00 |
Alexander Medvednikov
|
50a83736ff
|
checker: struct init: handle C types
|
2020-04-26 19:59:03 +02:00 |
Alexander Medvednikov
|
8223efe9df
|
checker: check struct field types
|
2020-04-26 18:38:29 +02:00 |
Alexander Medvednikov
|
83552a0d58
|
array: replace make() with the new init syntax
|
2020-04-26 17:52:27 +02:00 |
Alexander Medvednikov
|
f23948010a
|
parser: new array init syntax
|
2020-04-26 17:28:48 +02:00 |
penguindark
|
d16474442a
|
strconv: format test fixes
|
2020-04-26 16:26:33 +02:00 |
yuyi
|
2574dce174
|
all: fix remaining `[]array` warnings
|
2020-04-26 16:25:54 +02:00 |
yuyi
|
9f4d498ff1
|
all: update`import ()` and `[]array`
|
2020-04-26 13:49:31 +02:00 |
Larpon
|
7b39ab6d06
|
string: fix replace_each edge case error message
|
2020-04-26 12:40:39 +02:00 |
Enzo Baldisserri
|
0f2f97e3e5
|
checker: reorganize tests to match fmt tests
|
2020-04-26 12:34:42 +02:00 |
Alexander Medvednikov
|
41eb4453e3
|
parser: do not allow redefinition of fn args
|
2020-04-26 12:01:10 +02:00 |
Alexander Medvednikov
|
153ac230ec
|
tests: use new array init syntax, fix mutability
|
2020-04-26 11:56:30 +02:00 |
Alexander Medvednikov
|
0641a31fe0
|
parser: allow mutable pointer args
|
2020-04-26 11:53:41 +02:00 |
eyelash
|
b495dac780
|
fix a few warnings
Good find, @eyelash .
|
2020-04-26 12:42:44 +03:00 |
Alexander Medvednikov
|
270566055f
|
checker: make sure all FnDecl types are valid
|
2020-04-26 10:39:26 +02:00 |
Alexander Medvednikov
|
3c08f655af
|
parser: do not allow mutable simple args
|
2020-04-26 10:35:10 +02:00 |
Alexander Medvednikov
|
a56121c329
|
checker: check mutability in index exprs; parser: set is_mut for args
|
2020-04-26 10:25:58 +02:00 |
Delyan Angelov
|
ee31339dfd
|
parser: fix error position for use `x := []Type{}`
|
2020-04-26 10:42:46 +03:00 |
Alexander Medvednikov
|
d844ff1381
|
builder: fix msvc.v
|
2020-04-26 09:33:40 +02:00 |
Alexander Medvednikov
|
20bcb6b8bb
|
tests: fix lef_shift test
|
2020-04-26 09:29:29 +02:00 |
penguindark
|
b67698888c
|
strconv: printf and string format utilities
|
2020-04-26 10:23:10 +03:00 |
Alexander Medvednikov
|
7955181c6c
|
tests: [] fixes
|
2020-04-26 09:18:29 +02:00 |
Alexander Medvednikov
|
3ab8dc0092
|
parser: array init: `[]string` => `[]string{}`
|
2020-04-26 09:17:17 +02:00 |
yuyi
|
3a59f5727c
|
checker: fix check main function error (#4601)
|
2020-04-26 08:04:28 +02:00 |
Alexander Medvednikov
|
a48080afec
|
parser: deprecate import(); replace remaining import()s
|
2020-04-26 07:36:02 +02:00 |
Delyan Angelov
|
48f9cc1ed7
|
tests: make alias_type_exists.vv use `type Pigeon Bird` syntax
|
2020-04-26 08:23:09 +03:00 |
Alexander Medvednikov
|
f7153ca4fa
|
fmt: array_init(); parser: fn_redefinition_error()
|
2020-04-26 07:17:01 +02:00 |
Delyan Angelov
|
620fc962d7
|
builtin: use single line imports, to make analysis easier
|
2020-04-26 08:06:39 +03:00 |
Alexander Medvednikov
|
3166833471
|
parser: fix interface method return type parsing
|
2020-04-26 07:03:26 +02:00 |
yuyi
|
9cfb1e3bf7
|
cgen: fix struct with fixed array error
|
2020-04-26 06:54:14 +02:00 |
Enzo Baldisserri
|
0b3412cdb5
|
checker: check that type exists in TypeDecl
|
2020-04-26 06:40:54 +02:00 |
yuyi
|
541b058e90
|
all: use `a !in b` instead of `!(a in b)`
|
2020-04-26 06:39:23 +02:00 |
Alexander Medvednikov
|
2b4ac0e63a
|
checker: handle array of interfaces
|
2020-04-26 06:29:03 +02:00 |
Alexander Medvednikov
|
8000eb3656
|
parser: revert silent _ prefix rule
|
2020-04-26 05:34:34 +02:00 |
Alexander Medvednikov
|
60a0ba5eaa
|
table: minor interface clean up
|
2020-04-26 05:34:34 +02:00 |
Delyan Angelov
|
a77640165e
|
compiler: faster vmod lookup
|
2020-04-25 23:43:46 +03:00 |
Delyan Angelov
|
08799792a7
|
tests: fix regex test
|
2020-04-25 23:42:48 +03:00 |
Delyan Angelov
|
cd27300d75
|
cookie: fix a new match error about redundant `else`
|
2020-04-25 23:02:04 +03:00 |
Delyan Angelov
|
19d7553d67
|
tests: fix vlib/net/http/cookie_test.v
|
2020-04-25 22:53:18 +03:00 |
Enzo Baldisserri
|
3e68e429b6
|
checker: avert if else is unnecessary
|
2020-04-25 21:51:44 +02:00 |
Alexander Medvednikov
|
e0f9c042c1
|
cgen: interface fixes
|
2020-04-25 21:24:12 +02:00 |
Delyan Angelov
|
86ba1645b0
|
os: add os.input(prompt)
|
2020-04-25 22:04:12 +03:00 |
Enzo Baldisserri
|
c73d91a8fe
|
fmt: TypeDecl; format more files
|
2020-04-25 20:58:00 +02:00 |
Ruofan XU
|
d86539c4f5
|
checker: clean up infix_expr
|
2020-04-25 20:28:49 +02:00 |
ka-weihe
|
d72e401378
|
string: optimize eq
|
2020-04-25 20:19:53 +02:00 |
Alexander Medvednikov
|
b7e5be41f5
|
checker/cgen: `as` fixes
|
2020-04-25 18:41:12 +02:00 |
yuyi
|
c26e83f58a
|
array: fix fixed array errors
|
2020-04-25 18:26:38 +02:00 |
yuyi
|
ec9566988a
|
cmdline: minor optimizaztion
|
2020-04-25 17:49:51 +02:00 |
Enzo Baldisserri
|
fb54a2635c
|
fmt: lots of fixes
|
2020-04-25 17:49:16 +02:00 |
Delyan Angelov
|
7c080c5d4a
|
checker: prevent `x := voidfn()`
|
2020-04-25 18:06:34 +03:00 |
Larpon
|
6a834c0528
|
checker: use 'mut' instead of 'var' in error message
|
2020-04-25 17:51:12 +03:00 |
Delyan Angelov
|
a20bef65ba
|
fmt: workaround a vfmt limitation preventing formatting of vlib/v/ast/ast.v
|
2020-04-25 17:34:42 +03:00 |
Delyan Angelov
|
9a19531909
|
compiler: add support for `[if myflag]` void fn/methods
|
2020-04-25 16:57:11 +03:00 |
Delyan Angelov
|
945f964c0c
|
parser: stay silent about unused variables starting with _
|
2020-04-25 15:38:15 +03:00 |
joe-conigliaro
|
aacc3c6f7e
|
cgen: generate str for variadic (#4587)
|
2020-04-25 22:23:47 +10:00 |
Delyan Angelov
|
4bcdf11743
|
cgen: support `-profile -` and `-profile x.txt`
|
2020-04-25 13:41:49 +03:00 |
Delyan Angelov
|
eecf92cdb0
|
cgen: implement -profile support.
|
2020-04-25 13:05:49 +03:00 |
joe-conigliaro
|
41cc96aaec
|
revert parser: simplify array push detection
|
2020-04-25 18:57:12 +10:00 |
joe-conigliaro
|
4675656786
|
parser: simplify array push detection
|
2020-04-25 18:42:53 +10:00 |
Delyan Angelov
|
e0ab318f56
|
cgen: add support for `v -printfn main file.v`
|
2020-04-25 11:15:57 +03:00 |
joe-conigliaro
|
900d96c638
|
parser: allow deref assign without parens pt2 update vlib
|
2020-04-25 18:14:01 +10:00 |
joe-conigliaro
|
7177e71444
|
revert parser: allow deref assign without parens pt2 update vlib
|
2020-04-25 18:11:14 +10:00 |
joe-conigliaro
|
f92cf69e60
|
parser: allow deref assign without parens pt2 update vlib
|
2020-04-25 18:09:52 +10:00 |
joe-conigliaro
|
9fff8733a0
|
parser: allow deref assign without parens pt1
|
2020-04-25 18:07:30 +10:00 |
joe-conigliaro
|
6696e1a6e2
|
table: move set_nr_muls to method
|
2020-04-25 17:54:32 +10:00 |
Alexander Medvednikov
|
d54b48b300
|
table: interface cast fix
|
2020-04-25 09:18:10 +02:00 |
Alexander Medvednikov
|
9229a963ed
|
array: use __new_array everywhere
|
2020-04-25 09:10:54 +02:00 |
joe-conigliaro
|
fbcdffbbc8
|
table: move Type functions to methods
|
2020-04-25 17:08:53 +10:00 |
Alexander Medvednikov
|
6248899d25
|
compiler_test: handle panics
|
2020-04-25 09:05:14 +02:00 |
Delyan Angelov
|
1c46dabc84
|
tetris: cleanup unused variable warnings
|
2020-04-25 09:49:02 +03:00 |
Alexander Medvednikov
|
48857090fc
|
runtime `as` type check: part 2
|
2020-04-25 08:42:23 +02:00 |
Alexander Medvednikov
|
2d187fb951
|
runtime `as` type check: part 1
|
2020-04-25 08:36:53 +02:00 |
Alexander Medvednikov
|
f1f9e423c3
|
interfaces: preparatory fixes
|
2020-04-25 08:00:44 +02:00 |
Junya Okuno
|
5600fd8613
|
net.http: remove redundant httponly handling
|
2020-04-25 06:15:05 +02:00 |
Enzo Baldisserri
|
a924defb94
|
checker: check `in` left type
|
2020-04-25 06:14:17 +02:00 |
Enzo Baldisserri
|
fa4739794f
|
checker: fix "unnecessary `()`" error position
|
2020-04-24 20:27:18 +02:00 |
Delyan Angelov
|
cc4090cc74
|
vfmt: remove unused variable check for vfmt
|
2020-04-24 20:25:11 +03:00 |
Delyan Angelov
|
8be10ffbd6
|
vfmt: always walk over all comptime branches
|
2020-04-24 19:05:55 +03:00 |
Delyan Angelov
|
f6f204387d
|
cgen: fix for msvc
|
2020-04-24 18:44:25 +03:00 |
Delyan Angelov
|
c6a829ce82
|
cgen: support for error('abc').str() and printing errors
|
2020-04-24 18:35:33 +03:00 |
Enzo Baldisserri
|
323ca2b3bb
|
checker: check duplicates on match with no else
Refactor match duplication test to work even if there is not else, and to include every expression.
Add tests for duplicate expressions in match.
|
2020-04-24 17:04:39 +03:00 |
Delyan Angelov
|
aa15dec660
|
checker: check default struct field expression types
|
2020-04-24 16:46:55 +03:00 |
Delyan Angelov
|
d6899788dd
|
time: add back vlib/time/time_linux.c.v
|
2020-04-24 15:28:16 +03:00 |
yuyi
|
afa9d42ff0
|
cgen: fix gen_str_for_array_fixed error
|
2020-04-24 12:36:45 +02:00 |
Alexander Medvednikov
|
a3382a5319
|
x64: debug opcodes nicely
|
2020-04-24 09:44:54 +02:00 |
Delyan Angelov
|
6bd34a069d
|
benchmark: show xxx.yyy ms, using the new highres timer
|
2020-04-24 10:26:47 +03:00 |
Delyan Angelov
|
117ec722a2
|
time: remove temporary time__linux.c.v workaround
|
2020-04-24 09:12:34 +03:00 |
Delyan Angelov
|
20637ae54c
|
time: restore building v on linux, till v.c is regenerated with `-os cross`
|
2020-04-24 09:00:07 +03:00 |
Delyan Angelov
|
863fab0268
|
comptime: enable again skipping parsing of other platform branches
|
2020-04-24 08:51:48 +03:00 |
Delyan Angelov
|
7a132e5c79
|
cgen: cleaner comptime ifdefs .
|
2020-04-24 08:42:31 +03:00 |
Major Taylor
|
25f2b171fc
|
time: Timer -> StopWatch; time.Duration
|
2020-04-24 07:33:25 +02:00 |
Leah Lundqvist
|
f3e3d7e0c5
|
websocket: update to work with latest V
|
2020-04-24 07:32:51 +02:00 |
yuyi
|
998fc8fc07
|
cgen: add gen_str_for_array_fixed
|
2020-04-24 07:32:27 +02:00 |
Alexander Medvednikov
|
c30c76c285
|
tests: fix x64 test
|
2020-04-24 05:26:29 +00:00 |
Delyan Angelov
|
6b31ebe456
|
Revert "comptime: enable again skipping parsing of other platform branches"
This reverts commit 0f4c5fb1c9 .
|
2020-04-23 22:47:16 +03:00 |
Alexander Medvednikov
|
8cb88d5c9a
|
x64: remove fn arg test for now
|
2020-04-23 20:55:23 +02:00 |
Delyan Angelov
|
ebc41375f1
|
os.executable: fix panic when os.executable_fallback fails (early in startup)
|
2020-04-23 21:53:18 +03:00 |
Alexander Medvednikov
|
1247718cbd
|
x64: pass fn args
|
2020-04-23 20:27:34 +02:00 |
Delyan Angelov
|
0f4c5fb1c9
|
comptime: enable again skipping parsing of other platform branches
|
2020-04-23 20:45:16 +03:00 |
Delyan Angelov
|
4f4567513e
|
comptime: fix `$if debug {}` when giving -cg or -d debug
|
2020-04-23 18:03:07 +03:00 |
Delyan Angelov
|
adb8fb1dc6
|
comptime: fix custom -d flags and `$if x? {}`. Fixes ftp_test.v .
|
2020-04-23 17:52:44 +03:00 |
Delyan Angelov
|
1a79e5419f
|
tests: fix aes_test.v by manually dereferencing the mut dst parameter
|
2020-04-23 16:45:25 +03:00 |
yuyi
|
2b4f72ef64
|
parser: fix empty import error
|
2020-04-23 14:48:05 +02:00 |
yuyi
|
f2e505d962
|
tests: enable compiler_test.v on Windows
|
2020-04-23 14:15:15 +02:00 |
Delyan Angelov
|
8b5573a6f3
|
errors: use more distinct and detailed name redefinition messages
|
2020-04-23 13:15:01 +03:00 |
Enzo Baldisserri
|
7e400124e8
|
parser: allow blank ident in nested loops
|
2020-04-23 12:00:51 +02:00 |
Delyan Angelov
|
fb97c2e01e
|
examples: fix path_tracing.v compilation, using (*ptr) = expression
|
2020-04-23 12:28:16 +03:00 |
Alexander Medvednikov
|
7f5e3b36bc
|
x64: for loop
|
2020-04-23 05:29:07 +02:00 |
yuyi
|
5664cbd3d0
|
enum: check enum name and modify related files
|
2020-04-23 05:16:10 +02:00 |
Alexander Medvednikov
|
45e21085c7
|
tests: re-enable some old array tests
|
2020-04-23 04:23:19 +02:00 |
Alexander Medvednikov
|
9fe0ca5323
|
x64: ++
|
2020-04-23 01:55:38 +02:00 |
Kris Cherven
|
d871595437
|
all: replace `var` with `mut`
|
2020-04-23 01:16:58 +02:00 |
yuyi
|
4e1abc8503
|
all: remove commas between enum vals
|
2020-04-23 01:16:16 +02:00 |
Alexander Medvednikov
|
d7ee4755c2
|
parser/cgen: interfaces (part 1)
|
2020-04-22 20:23:53 +02:00 |
Kris Cherven
|
faed178cb1
|
fmt: fix optional formatting
|
2020-04-22 20:12:58 +02:00 |
Enzo Baldisserri
|
fecf4ddf65
|
cgen: fix optional pointers
|
2020-04-22 20:12:30 +02:00 |
joe-conigliaro
|
de182d5809
|
parser: use single scope for fn args/body
|
2020-04-22 21:15:38 +10:00 |
joe-conigliaro
|
80a4fbf0be
|
parser: anon fn arg scope fix
|
2020-04-22 21:11:58 +10:00 |
joe-conigliaro
|
830b1807c1
|
test: add comment for assert bug in fn_test
|
2020-04-22 18:47:46 +10:00 |
joe-conigliaro
|
3ca4f5fada
|
checker/parser: anon fn call & return type fix
|
2020-04-22 18:41:57 +10:00 |
Delyan Angelov
|
4b8ed3f831
|
cgen: fixes for ustring, makes utf8_util_test.v pass
|
2020-04-22 10:35:14 +03:00 |
Alexander Medvednikov
|
50436a0e4a
|
x64: local variables; if
|
2020-04-22 07:11:17 +02:00 |
joe-conigliaro
|
c35e0e49ce
|
cgen: use gen_varg var in condition
|
2020-04-22 13:31:24 +10:00 |
joe-conigliaro
|
c1e8612624
|
checker/gen: allow vargs to be forwarded. fix/enable variadic test
|
2020-04-22 13:28:47 +10:00 |
Kris Cherven
|
b288ecb795
|
cgen: add map string generation
|
2020-04-22 04:00:38 +02:00 |
Kris Cherven
|
5c3742fbd2
|
parser: check var names in for loops
|
2020-04-22 03:48:51 +02:00 |
Kris Cherven
|
155891a4e0
|
parser: add unused variable warning
|
2020-04-22 01:52:56 +02:00 |
Uwe Krüger
|
08fac28c52
|
cgen: fix string interpolation for non-standard integer types
|
2020-04-22 01:48:53 +02:00 |
penguindark
|
34fd148f2f
|
ftoa: some fixes for rounding, new functions
|
2020-04-22 01:42:44 +02:00 |
joe-conigliaro
|
b9c0d2d362
|
cgen: fix passing high order function with body
|
2020-04-21 22:45:20 +10:00 |
yuyi
|
bc4a576c54
|
flag: fix flag_test.v
|
2020-04-21 14:44:17 +03:00 |
yuyi
|
a8dc0ccbcd
|
checker: add more op checks
|
2020-04-21 13:26:02 +02:00 |
Delyan Angelov
|
7c1d6b60c2
|
cgen: add g.auto_str_funcs, print &Struct pointers with enum fields
|
2020-04-21 13:32:17 +03:00 |
Alexander Medvednikov
|
baf3bf6778
|
uiold: make compile (fix vid); x64: mov rbp, rsp
|
2020-04-21 10:48:52 +02:00 |
Alexander Medvednikov
|
4471314291
|
clipboard: make the Linux version compile
|
2020-04-21 07:24:23 +00:00 |
Delyan Angelov
|
9d107007a1
|
x64: enhance diagnostic for unhandled nodes
|
2020-04-21 09:34:00 +03:00 |
Alexander Medvednikov
|
ab38605802
|
tests: disable clipboard on linux; x64: leave()
|
2020-04-21 06:16:47 +02:00 |
Alexander Medvednikov
|
77679d9650
|
tests: mark more tests as fixed
|
2020-04-21 05:52:44 +02:00 |
Alexander Medvednikov
|
9278a0cfba
|
tests: fix mut_test; x64: sub32()
|
2020-04-21 05:49:03 +02:00 |
joe-conigliaro
|
abf5942433
|
parser/cgen: anon fn var & calling (#4534)
|
2020-04-21 13:23:36 +10:00 |
Alexander Medvednikov
|
ee2e83fef0
|
go back to `mut`. decisions, decisions...
|
2020-04-21 05:11:50 +02:00 |
Alexander Medvednikov
|
1bf094fbca
|
parser: mut in receivers
|
2020-04-21 05:07:49 +02:00 |
Alexander Medvednikov
|
cc0e0ed281
|
fmt: single line match fix; x64: minor fixes
|
2020-04-21 04:51:53 +02:00 |
sambeckingham
|
4ea4d1c8c4
|
csv: handle missing line ending
|
2020-04-21 00:02:55 +02:00 |
Alexander Medvednikov
|
67a76cee1e
|
tests: fix x64 output comparison
|
2020-04-20 22:57:41 +02:00 |
Alexander Medvednikov
|
10677c2b0c
|
x64: fn call test
|
2020-04-20 22:36:12 +02:00 |
Alexander Medvednikov
|
871c29ea5d
|
x64: fn calls; return;
|
2020-04-20 22:21:40 +02:00 |
sambeckingham
|
b1459ade69
|
csv: fix missing last column
|
2020-04-20 21:49:05 +02:00 |
Ruofan XU
|
f725b93019
|
tests: delete an unused file
|
2020-04-20 21:48:14 +02:00 |
Alexey
|
9c0d97335e
|
builtin: improve backtrace on Windows
|
2020-04-20 20:59:08 +02:00 |
Ruofan XU
|
cdb1b0344c
|
checker: improve type check for arithmetic assignment op and fix error pos
|
2020-04-20 20:56:05 +02:00 |
Major Taylor
|
dc8199709f
|
cli: add smart-wrap for help description
|
2020-04-20 14:50:15 +02:00 |
yuyi
|
717e26b45e
|
checker: more infix checks
|
2020-04-20 14:49:26 +02:00 |
yuyi
|
07f69fab19
|
checker: remove dots from error messages
|
2020-04-20 11:57:07 +02:00 |
Alexander Medvednikov
|
2805f8d0cc
|
tests: fix x64_test.v
|
2020-04-16 14:19:14 +03:00 |
Alexander Medvednikov
|
78cbb7746f
|
tests: fix hello.vv output
|
2020-04-20 09:07:19 +02:00 |
Alexander Medvednikov
|
2642f6a0da
|
cgen: remove _PUSH
|
2020-04-20 09:04:17 +02:00 |
Alexander Medvednikov
|
e006da7259
|
parser: fix a bad comment
|
2020-04-20 08:44:14 +02:00 |
Alexander Medvednikov
|
4b329cb89d
|
tests: fix a typo
|
2020-04-20 08:32:10 +02:00 |
Alexander Medvednikov
|
ee2f1652b5
|
fmt: add EOL
|
2020-04-20 08:30:42 +02:00 |
Alexander Medvednikov
|
639dc02cc8
|
x64: test hello world
|
2020-04-20 08:27:37 +02:00 |
Alexander Medvednikov
|
c1fc768c1b
|
fmt: run on cmd/v; cgen: fix anonymous functions
|
2020-04-20 07:04:31 +02:00 |
Alexander Medvednikov
|
efff96d622
|
x64: make hello world run
|
2020-04-20 07:02:09 +02:00 |
Alexander Medvednikov
|
19a5436118
|
cgen: use faster array_push instead of _PUSH; re-fmt cgen.v
|
2020-04-20 03:54:41 +02:00 |
yuyi
|
be3bd520f6
|
checker: fix for in range type mismatch
|
2020-04-20 00:21:16 +02:00 |
Ruofan XU
|
5edd9cdc3a
|
checker: add type check for bit op
|
2020-04-19 22:29:45 +02:00 |
yuyi
|
dbb81b89fd
|
checker: fix type mismatch of `in` array
|
2020-04-19 22:26:58 +02:00 |
Daniel Däschle
|
b62bb22fa6
|
checker: allow C values in enum
|
2020-04-19 22:26:04 +02:00 |
Ruofan XU
|
6c59b306c7
|
checker: add type check for arithmetic assignment ops
|
2020-04-19 22:24:12 +02:00 |
yuyi
|
4de16e9f0f
|
tests: enable checker_error_test on windows
|
2020-04-19 20:48:13 +02:00 |
Keito Nagai
|
57859db07c
|
readme: fix docs link
|
2020-04-19 20:47:36 +02:00 |
Kris Cherven
|
95ae915c0c
|
checker/parser: fix outdated error messages
|
2020-04-19 20:46:48 +02:00 |
yuyi
|
27e04748ed
|
cgen:gen_str_for_array
|
2020-04-19 10:42:34 +02:00 |
Alexey
|
3ee858cd79
|
cgen: fix struct initialization bugs
|
2020-04-19 04:44:39 +02:00 |
Major Taylor
|
be0a8794c2
|
time: add Timer; refactor benchmark to use Timer
|
2020-04-19 03:40:32 +02:00 |
Enzo Baldisserri
|
57c142b993
|
checker: disallow pub in main
|
2020-04-19 00:07:57 +02:00 |
Alexander Medvednikov
|
de9f302412
|
fmt: array newlines test
|
2020-04-18 23:58:59 +02:00 |
Alexey
|
85c5103ba3
|
tests: test cflags parsing
|
2020-04-18 23:45:17 +02:00 |
Alexey
|
3d6142064d
|
tests: remove `msvc-test`
|
2020-04-18 23:44:42 +02:00 |
Alexander Medvednikov
|
a18201faa7
|
fmt: save newlines between array elements
|
2020-04-18 23:09:23 +02:00 |
Alexey
|
2ab2a58bc5
|
string: add more interpolation tests
|
2020-04-18 18:26:07 +02:00 |
Ruofan XU
|
b0e498bf0b
|
scanner: refactor ident_dec_number
|
2020-04-18 17:49:27 +02:00 |
Tim Basel
|
86df486988
|
compiler: rename is_so to is_shared
|
2020-04-18 17:46:23 +02:00 |
Kris Cherven
|
3cc7009440
|
cflag: remove circular dependency
|
2020-04-18 16:29:43 +02:00 |
Kris Cherven
|
eb923b4995
|
testing: fix count of succeeded tests
|
2020-04-18 05:49:03 +03:00 |
yuyi
|
5374899f29
|
parser: fix interpolation error
|
2020-04-18 00:22:03 +02:00 |
Enzo Baldisserri
|
0f9322bf36
|
checker: print error and pos for lacking main or pub main
|
2020-04-18 00:20:38 +02:00 |
Enzo Baldisserri
|
f2be3d7ffb
|
checker: check that right `is` type exists
|
2020-04-18 00:19:33 +02:00 |
Tim Basel
|
73073cd954
|
parser: anonymous functions (part 1)
|
2020-04-17 21:59:19 +02:00 |
yuyi
|
3e324befd0
|
builder: clean up and simplify some methods
|
2020-04-17 21:17:19 +02:00 |
Alexander Medvednikov
|
515da900e4
|
fmt: remove \t before same line comments
|
2020-04-17 20:53:39 +02:00 |
Alexander Medvednikov
|
2c778c8849
|
fmt: single line matches
|
2020-04-17 20:51:19 +02:00 |
yuyi
|
67cd90de6e
|
parser: fix number parse error
|
2020-04-17 20:31:32 +02:00 |
Kris Cherven
|
84ac634c31
|
checker: disallow pub fn main()
|
2020-04-17 20:30:43 +02:00 |
Alexander Medvednikov
|
c4b7d7cab3
|
match: shadow variable instead of `it`
|
2020-04-17 19:24:10 +02:00 |
Alexander Medvednikov
|
59baef89a0
|
parser: assign.v, containers.v, for.v, if.v
|
2020-04-17 18:16:55 +02:00 |
Alexander Medvednikov
|
b53fb365a6
|
parser: move pratt logic to pratt.v
|
2020-04-17 18:11:04 +02:00 |
Alexander Medvednikov
|
16931fd23f
|
parser: move all struct logic to struct.v
|
2020-04-17 18:01:02 +02:00 |
Alexander Medvednikov
|
ed8855c4cd
|
tests: fix struct_unknown_field.v
|
2020-04-17 17:20:35 +02:00 |
Alexander Medvednikov
|
4a556f72bb
|
checker: allow calling private functions in tests
|
2020-04-17 17:18:40 +02:00 |
Alexander Medvednikov
|
06c1b9e95e
|
table/checker: verify private functions/methods
|
2020-04-17 17:16:14 +02:00 |
Daniel Däschle
|
af30bf939e
|
checker: fix return underlining
|
2020-04-17 16:16:56 +02:00 |
Daniel Däschle
|
c1d9e22ca6
|
cgen: gen str() from eprintln and eprint as well
|
2020-04-17 16:15:28 +02:00 |
yuyi
|
420ecaf31d
|
cgen: gen_str_for_array()
|
2020-04-17 16:10:41 +02:00 |
Daniel Däschle
|
402e55d115
|
ast: expr.Position; struct field refactoring
|
2020-04-17 02:38:39 +02:00 |
yuyi
|
8bb11d9035
|
cgen: fix string_interpolation_struct_test.v error
|
2020-04-17 01:45:42 +02:00 |
Major Taylor
|
7bfc3ef767
|
cli: fix issue with long cmd and flag names
|
2020-04-16 23:01:04 +02:00 |
Enzo Baldisserri
|
051cc732bb
|
cgen: generate typeof for functions
|
2020-04-16 21:04:27 +02:00 |
yuyi
|
dee64347e0
|
cgen: fix const_embed_test.v error
|
2020-04-16 19:43:39 +02:00 |
Alexey
|
4c8510dfaf
|
cgen: use `wWinMain` for Windows GUI applications
|
2020-04-16 19:42:04 +02:00 |
Delyan Angelov
|
aed8370d87
|
tetris: enable compilation with -prod; cleanup of font loading errors
|
2020-04-16 19:44:15 +03:00 |
Kris Cherven
|
182108faca
|
fmt fmt.v, vfmt.v
|
2020-04-16 15:54:17 +02:00 |
Alexey
|
54226e74cf
|
sokol: add missing `C` prefixes
|
2020-04-16 15:53:34 +02:00 |
Alexander Medvednikov
|
714ff50322
|
fmt: use the new receiver syntax
|
2020-04-16 15:42:40 +02:00 |
Alexander Medvednikov
|
4b5acfd960
|
parser: (var x X) receiver syntax
|
2020-04-16 15:40:21 +02:00 |
Alexander Medvednikov
|
8760313ce5
|
fmt builder.v
|
2020-04-16 15:35:19 +02:00 |
Alexander Medvednikov
|
af224b4933
|
parser/cgen: is keyword
|
2020-04-16 15:32:14 +02:00 |
Delyan Angelov
|
cc9828b481
|
checker: fix building of shared .so libs
|
2020-04-16 16:30:19 +03:00 |
Enzo Baldisserri
|
e05f103c41
|
cli: make compile
|
2020-04-16 14:50:04 +02:00 |
Delyan Angelov
|
1318c27699
|
tetris: it now works with v2 (on linux) :-)
|
2020-04-16 13:30:40 +03:00 |
Daniel Däschle
|
19723c927b
|
checker: move more checks from parser
|
2020-04-16 12:17:15 +02:00 |
Delyan Angelov
|
554d87f5b0
|
tetris: part 1 of fixing compilation with v2
|
2020-04-16 12:37:59 +03:00 |
Delyan Angelov
|
8a1248b2e7
|
builder: restore module import cycle detection/topological reorder
|
2020-04-16 12:29:36 +03:00 |
Daniel Däschle
|
04db2d02b8
|
checker: move struct name check from parser to checker
|
2020-04-16 11:01:18 +02:00 |
yuyi
|
54a02996f2
|
cgen: fix string interpolation float type
|
2020-04-16 07:30:25 +02:00 |
Kris Cherven
|
332d52f459
|
fmt: stop mangling reference names
|
2020-04-16 07:28:41 +02:00 |
joe-conigliaro
|
c3ddaf16ec
|
cgen: fix sum type casting for array push
|
2020-04-16 15:18:33 +10:00 |
Daniel Däschle
|
a680db44ed
|
parser: change `for` error message
|
2020-04-16 06:01:14 +02:00 |
yuyi
|
b15780ae51
|
parser: better const error
|
2020-04-16 06:00:05 +02:00 |
Delyan Angelov
|
4b3c44cfd7
|
Revert "tetris: part 1 of fixing building it with v2"
This reverts commit d42725aafe .
|
2020-04-16 01:16:54 +03:00 |
Delyan Angelov
|
d42725aafe
|
tetris: part 1 of fixing building it with v2
|
2020-04-16 00:35:16 +03:00 |
Delyan Angelov
|
92129d760d
|
checker: fix false positives for sumtype kind of matches
|
2020-04-16 00:32:56 +03:00 |
Abdullah Atta
|
6a186e8f11
|
jsgen: implement js backend
|
2020-04-15 23:16:49 +02:00 |
Kris Cherven
|
a3ab5df2ed
|
cgen: prepend __ to new_array
|
2020-04-15 20:12:06 +02:00 |
Daniel Däschle
|
27b6f30305
|
checker: move capital var check from parser to checker
|
2020-04-15 19:09:51 +02:00 |
Daniel Däschle
|
93b942de46
|
parser: fix a match error
|
2020-04-15 16:23:03 +02:00 |
joe-conigliaro
|
fde83aff0b
|
checker/cgen: fix calling struct field with fn type
|
2020-04-15 04:28:18 +02:00 |
Alexander Medvednikov
|
da28bc7026
|
Revert "fmt: `(var f Foo)`"
This reverts commit 4b110756e0 .
|
2020-04-15 04:15:42 +02:00 |
Alexander Medvednikov
|
4b110756e0
|
fmt: `(var f Foo)`
|
2020-04-15 03:56:16 +02:00 |
Kris Cherven
|
4dd8796dba
|
cgen: fix assignment to nested maps
|
2020-04-15 02:42:00 +02:00 |
Alexander Medvednikov
|
f34352faf9
|
fmt: use var instead of mut
|
2020-04-15 01:55:51 +02:00 |
Alexander Medvednikov
|
efaec8be8e
|
token/parser: var keyword
|
2020-04-15 01:45:27 +02:00 |
Daniel Däschle
|
4068cbc6eb
|
parser: fix var name check pos
|
2020-04-14 21:27:17 +02:00 |
Alexey
|
e1739549b2
|
crypto: fix `rand` module
|
2020-04-14 21:03:02 +02:00 |
Alexander Medvednikov
|
14e1b963f2
|
parser: do not allow variable names with capital letters
|
2020-04-14 20:40:00 +02:00 |
Alexey
|
91de4e1ece
|
array: test assignment operators
|
2020-04-14 20:32:06 +02:00 |
Enzo Baldisserri
|
86402204a7
|
checker: fail if else isn't the last branch of match
|
2020-04-14 20:31:51 +02:00 |
Alexey
|
0c63f5c80d
|
builtin: test left/right shift precedence
|
2020-04-14 19:38:11 +02:00 |
Daniel Däschle
|
50871d1a92
|
checker: for in index type error position
|
2020-04-14 19:37:56 +02:00 |
Alexander Medvednikov
|
deab448d93
|
cgen: fix array[i] &=, |= etc
|
2020-04-14 19:36:52 +02:00 |
Alexander Medvednikov
|
233ae3f772
|
fmt: use `import module` syntax
|
2020-04-14 19:32:23 +02:00 |
Alexander Medvednikov
|
2251634743
|
parser: hide import deprecation warning for now
|
2020-04-14 18:36:29 +02:00 |
Alexander Medvednikov
|
f91d527154
|
deprecate `import module`
|
2020-04-14 18:27:30 +02:00 |
Alexander Medvednikov
|
211275ab49
|
fmt: always use import() syntax
|
2020-04-14 18:24:19 +02:00 |
Alexander Medvednikov
|
ec10831318
|
parser: `[]int{cap:cap, len:len}` syntax; minor fixes
|
2020-04-14 18:10:16 +02:00 |
joe-conigliaro
|
b33a9fc9e7
|
parser: fix left shift precedence
|
2020-04-15 01:41:14 +10:00 |
Delyan Angelov
|
2b3204603a
|
parser: add an $if tinyc{} wrapper for the tcc_stack_bug variable
|
2020-04-14 18:02:55 +03:00 |
Delyan Angelov
|
e947d5e8c8
|
checker: fully exhaustive matches for sumtypes and enums
Also change the vlib/v/checker/tests/inout/match_expr_else.out to reflex the
new error details.
|
2020-04-14 16:50:43 +03:00 |
Daniel Däschle
|
75603beeea
|
checker: match exhaustive as stmt and with enum
|
2020-04-14 15:12:26 +02:00 |
Delyan Angelov
|
c04c973f84
|
cgen: use a temp variable for the array part inside 'for x in array{}'
|
2020-04-14 13:22:58 +03:00 |
Delyan Angelov
|
2df4998acc
|
parser: fix v selfcompilation with tcc (tcc bug workaround)
|
2020-04-14 11:06:19 +03:00 |
yuyi
|
956651384c
|
cgen: fix math/complex_test.v
|
2020-04-14 07:44:19 +02:00 |
yuyi
|
682c619456
|
array: fix array_byte.str error
|
2020-04-14 05:55:53 +02:00 |
Alexander Medvednikov
|
5f1b88c2c4
|
checker: do not use !in for now
|
2020-04-14 04:14:02 +02:00 |
Alexander Medvednikov
|
bbc35b1179
|
checker: check bool and string ops
|
2020-04-14 04:12:28 +02:00 |
yuyi
|
885612afea
|
ftoa: fix strconv/ftoa/f32_f64_to_string_test.v
|
2020-04-14 03:53:34 +02:00 |
Alexander Medvednikov
|
df37597f00
|
tests: disable cookie test for now
|
2020-04-14 03:43:59 +02:00 |
Chris Watson
|
c6c2fccb23
|
net.http: add cookie support
|
2020-04-14 03:34:05 +02:00 |
Daniel Däschle
|
12e48c6fe2
|
checker: check match for exhaustion
|
2020-04-14 01:03:31 +02:00 |
Alexander Medvednikov
|
1185f04868
|
json: encode
|
2020-04-14 00:37:47 +02:00 |
Alexander Medvednikov
|
a9a8f8c804
|
rand: remove duplicate C fn
|
2020-04-13 20:11:44 +02:00 |
krischerven
|
8c0b25a2ab
|
cgen: fix printing alias types
|
2020-04-13 20:07:25 +02:00 |
Alexander Medvednikov
|
7aacf77262
|
checker: remove an extra fn check
|
2020-04-13 20:06:20 +02:00 |
Alexander Medvednikov
|
24958df565
|
parser: do not allow duplicate fns; cgen: move fn code to fn.v
|
2020-04-13 19:59:57 +02:00 |