1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
Commit Graph

3097 Commits

Author SHA1 Message Date
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
yuyi
fb4cfa72cd
cgen: fix str() for arrays 2020-04-13 19:18:22 +02:00
Daniel Däschle
a6100be8df
parser: fix position of array init
* parser: fix position of array init
* fix checker_error_test.v tests
2020-04-13 19:08:02 +03:00
krischerven
ac67b1ea1b
tests: add new type alias syntax tests 2020-04-13 16:44:21 +02:00
Alexander Medvednikov
c36984cc94 fmt: handle indents 2020-04-13 16:36:32 +02:00
Alexander Medvednikov
2bd22aa4a4 parser: type Foo = Bar 2020-04-13 15:06:02 +02:00
Alexander Medvednikov
77fcd572dc fmt: remove unused imports 2020-04-13 15:05:51 +02:00
Daniel Däschle
8cbdb75dd6
cgen: fix match expr multiline error
* cgen: fix match expr multiline error
* Support for multiple statements in the else part of the match.
* Add a test for the match expression with multiple statements.
2020-04-13 13:05:38 +03:00
Delyan Angelov
99db5f53f7 repl_test.v: fix compilation (non working ones are for now renamed to .skip) 2020-04-13 11:06:52 +03:00
krischerven
74ba8f5cc9
tests: add testing for !in 2020-04-13 02:29:07 +02:00
krischerven
78f9f25a00
cgen: fix !in not working with maps 2020-04-13 02:22:55 +02:00
krischerven
a0d6651e0e
tests: fix typeof_test 2020-04-13 02:22:14 +02:00
Daniel Däschle
1a4113d245
checker: store errors in []Error 2020-04-13 01:56:01 +02:00
Enzo Baldisserri
da5a1e458b
cgen: fix match expr in assert 2020-04-13 01:53:26 +02:00
Alexander Medvednikov
6ada43df61 fmt: test automatic import insertion 2020-04-12 17:57:05 +02:00
Alexander Medvednikov
810a0725ec tests: fix fmt tests 2020-04-12 17:49:31 +02:00
Alexander Medvednikov
0db0c642c3 vfmt: add missing imports automatically 2020-04-12 17:45:04 +02:00
Daniel Däschle
d55f4ab097
cgen: fix error priting struct which has .str already 2020-04-12 16:25:02 +03:00
Daniel Däschle
5818956cdc
cgen: % escape in string interpolated literals
* cgen: % escape in c call to _STR
* tests: add test for string % escape
* Add a test for the % escaping when interpolating inside strings
2020-04-12 16:24:23 +03:00
Daniel Däschle
4449468ca4
parser: correct error position on field and method errors 2020-04-12 15:19:07 +03:00
ka-weihe
e247690fe1
map: fast_string_eq and improved comments
* improved comments and fast_string_eq
* make it pass CI
* enumerate traits
* Add parameter back
* remove space
* remove parameter
* Allow bootstrap compilation in one step with old vc (add new_map/2 shim).
2020-04-12 15:10:06 +03:00
Daniel Däschle
79dad0bca9
parser: fix enum default value in struct
* parser: fix enum default value in struct

* Add a test for the enum default values in structs.

* Fix compilation of vfmt.

* Run vfmt over enum_default_value_in_struct_test.v

* Cleanup spurious , in vfmt output for enum declarations

Co-authored-by: Delyan Angelov <delian66@gmail.com>
2020-04-12 13:35:54 +03:00
yuyi
0ced7116b6
string: add is_upper/is_lower and fix parser.match_expr error
* string: add is_upper/is_lower and fix parser.match_expr error

* to_capital => capitalize, to_title => title

* is_titled => is_title, is_capitalized => is_capital
2020-04-12 13:09:05 +03:00
Ned Palacios
db2c656da8
scanner: !in token 2020-04-12 07:30:26 +02:00
yuyi
c3e78b8c8f
vdoc: use the new suffix 2020-04-12 02:50:19 +02:00
krischerven
0a03797694
tests: run vfmt 2020-04-12 01:41:26 +02:00
krischerven
1abdf2d68f
cgen: fix missing defer in fn main() 2020-04-12 01:38:14 +02:00
Alexey
0f19f9dd51
tests: test call of variadic function with no arguments 2020-04-12 01:37:34 +02:00
Alexander Medvednikov
4b029567e5 tests: test string literal indexing and mutable array filter 2020-04-11 23:32:00 +02:00
Alexander Medvednikov
39245f088a array: test !in and filter 2020-04-11 23:01:50 +02:00
Alexander Medvednikov
449d839684 checker: make sure functions return 2020-04-11 21:50:14 +02:00
Alexander Medvednikov
581d836de6 !in operator 2020-04-11 21:31:54 +02:00
Alexander Medvednikov
1b6ae00966 os: rename os_nix.v to os_nix.c.v 2020-04-11 20:43:17 +02:00
lutherwenxu
dc4db87be3
vlib: use new filename format 2020-04-11 19:51:32 +02:00
Alexander Medvednikov
f91e3a5d3c cgen: arr[i] +=, /=, -= 2020-04-11 19:07:03 +02:00
Alexey
d078e6bb08
net: check if socket descriptor is valid 2020-04-11 19:06:01 +02:00
Alexey
1fde205f97
time: return optional value directly 2020-04-11 18:56:39 +02:00
Alexey
0050c1915b
cgen: call module init function if available 2020-04-11 18:38:51 +02:00
Alexander Medvednikov
d0ac69d12e parser: fix sizeof(&Foo) 2020-04-11 18:38:25 +02:00
yuyi
ea960b2ce2
parser: fix inter literal format error 2020-04-11 17:25:39 +02:00
Alexey
df825506fd
cgen: fix check for array equality 2020-04-11 17:25:25 +02:00
Alexander Medvednikov
63d747042e cgen: fix sizeof(&int) 2020-04-11 16:24:25 +02:00
Delyan Angelov
61c1535199 assert: generate tos3/1 calls instead of _STR (bugfix) 2020-04-11 16:18:09 +03:00
Delyan Angelov
30714d16d9 c linker: pass -Xlinker -z -Xlinker muldefs only on Linux with -cache 2020-04-11 15:24:23 +03:00
yuyi
c1aba95d7d
parser: refactor script & repl handling 2020-04-11 15:06:26 +03:00
Daniel Däschle
be16c5b21d
parser: better error on short init struct 2020-04-11 14:56:55 +03:00
Swastik Baranwal
6ecb6cfe8e
tests: add an operator overloading test 2020-04-11 14:39:51 +03:00
Delyan Angelov
15f4594e44 msvc: fix self compile, by avoiding explicit casting to the same type 2020-04-11 13:35:41 +03:00
Delyan Angelov
b10fcc79ba comptime: fix #ifdef/#endif generation 2020-04-11 12:41:48 +03:00
Delyan Angelov
93d2ab200f cheaders: fix selfcompilation with tcc 2020-04-11 12:18:26 +03:00
Delyan Angelov
6433c23a34 string: add s.strip_margin_custom/1, instead of passing varargs to s.strip_margin()
The reason for adding s.strip_margin_custom/1 is that
passing varargs interfere with the current implementation of the
builtin module caching.
2020-04-11 11:06:12 +03:00
Delyan Angelov
95709811e0 v: support VFLAGS, fix 'v run source.v arg after source' 2020-04-11 10:28:43 +03:00
Delyan Angelov
ba799b3f85 builder: support v.mod/@VROOT, fix -cflags and -cache 2020-04-11 09:57:31 +03:00
Alexander Medvednikov
053de0b8e3 checker: check variable mutability 2020-04-11 04:09:41 +02:00
Alexander Medvednikov
9422cd1009 parser: handle mut & receivers; fix checker_error_test 2020-04-11 02:24:00 +02:00
Alexander Medvednikov
8fbae86bb3 vfmt: skip skipped modules; add module test 2020-04-10 22:32:52 +02:00
Alexander Medvednikov
b95a47b5a7 checker: check fn main(); vfmt: fix for{}, module and module comments 2020-04-10 22:27:54 +02:00
Delyan Angelov
fdac3a1f2e ftp.v: fix compilation 2020-04-10 23:23:42 +03:00
Delyan Angelov
4f74410125 test-fixed: always chdir to main v folder before running the tests 2020-04-10 22:40:56 +03:00
Delyan Angelov
217e6f3b8e checker/parser: allow for fixed array with sizes defined with a const 2020-04-10 22:01:22 +03:00
lutherwenxu
514d989a27
builder: parse .c.v and .js.v correctly 2020-04-10 18:25:23 +02:00
Alexander Medvednikov
f76931c01e cache builtin modules 2020-04-10 18:11:43 +02:00
Daniel Däschle
c815f84722
parser: fix void assign check 2020-04-10 15:53:06 +03:00
Daniel Däschle
42b3b19af4
checker: fix checker enum infix error 2020-04-10 15:44:01 +03:00
Daniel Däschle
adb379dd63
parser: fix string position 2020-04-10 15:40:52 +03:00
Delyan Angelov
83dfc6b9b9 checker: add more checks for multivar assignments 2020-04-10 15:38:43 +03:00
Delyan Angelov
3573030b9b checker: fix error position for assignment expression 2020-04-10 15:14:05 +03:00
Delyan Angelov
3ea563291c big.v: use again @VROOT/ for #flags 2020-04-10 13:09:04 +03:00
Delyan Angelov
60d6543733 comptime: support @VROOT again 2020-04-10 13:02:00 +03:00
yuyi
7f87ac996d
test: fix vlib/math/big/big_test.v 2020-04-10 12:26:15 +03:00
Daniel Däschle
0f11d883fa
checker: fix error messages and add checker tests
* checker: fix error messages
* tests: fix command and ignore defect output
2020-04-10 11:59:07 +03:00
Delyan Angelov
74ac9ef195 builder: write intermediate .c files in the vtmp folder again 2020-04-10 11:55:04 +03:00
Delyan Angelov
7d564e9791 cgen: skip inc generation for ForCStmt, when empty in the v source 2020-04-10 10:00:14 +03:00
Alexander Medvednikov
d5fb68e3d6 vfmt: fix struct init; run on struct_test.v 2020-04-10 00:36:50 +02:00
Alexander Medvednikov
9b2511133d vfmt: lots of fixes; cmd/v: -keepc; 2020-04-10 00:30:43 +02:00
Daniel Däschle
32550c6d69
scanner: even better error messages 2020-04-10 00:09:34 +02:00
Daniel Däschle
320fad49c5
checker: check enum 2020-04-09 19:23:49 +02:00
Alexander Medvednikov
6ac64c8586 parser: register #flags 2020-04-09 16:39:53 +02:00
Alexander Medvednikov
2b685fc80a table: bring back parse_cflag() 2020-04-09 15:59:22 +02:00
Daniel Däschle
c0d86eb651
cgen: printing pointer should print the address 2020-04-09 15:35:52 +02:00
Alexander Medvednikov
f508955b64 vfmt: fix mod.Type; run vfmt on ast.v 2020-04-09 15:33:46 +02:00
Alexander Medvednikov
f3c917e0aa fmt: fix array receivers; cmd/v: -showcc 2020-04-09 15:05:06 +02:00
Alexander Medvednikov
d7ae9d7279 cgen: optional fixes; make http compile 2020-04-09 14:03:47 +02:00
yuyi
87df587f5a
parser: fix script and repl error 2020-04-09 12:46:16 +02:00
Alexey
384d401af0
math: fix bits_test 2020-04-09 12:43:37 +02:00
Daniel Däschle
3fbf91a044
cgen: printing pointers 2020-04-09 12:29:29 +02:00
Delyan Angelov
806f86e4e2 assert: pretty print function calls too 2020-04-09 13:24:26 +03:00
Alexey
56c3a8b9a2
base64: fix build 2020-04-09 12:17:01 +02:00
yuyi
89b83400f5
math: fix factorial_test.v error 2020-04-09 04:21:11 +02:00
yuyi
bf20b01586
map: fix map_test.v error 2020-04-09 03:57:08 +02:00
krischerven
8f8f8c418e
cgen: implement equality on arrays 2020-04-09 03:55:37 +02:00
ka-weihe
71190c27a9
fmt: align consts 2020-04-09 01:10:08 +02:00
ka-weihe
77d41d03f5
cgen: inline 2020-04-09 00:35:13 +02:00
Alexander Medvednikov
3f480a358e fix type_alias test 2020-04-08 22:34:21 +02:00
Daniel Däschle
1c340174b7
cgen: print nested structs 2020-04-08 22:14:01 +02:00
Alexander Medvednikov
a08e64f37f cgen: operator overloading 2020-04-08 22:12:42 +02:00
Alexander Medvednikov
3521b7ff89 websocket: fmt example + minor fixes 2020-04-08 21:21:58 +02:00
Abdullah Atta
6f8f8d7b1b
websocket: eventbus and other cleanup 2020-04-08 21:19:01 +02:00
Alexander Medvednikov
b40fdd9089 scope: find_const 2020-04-08 19:47:20 +02:00
Leah Lundqvist
b28ab2511c
websocket: move library files to root of module 2020-04-08 19:44:30 +02:00
Alexander Medvednikov
fa6aaad6df checker: handle x := x 2020-04-08 19:15:19 +02:00
Daniel Däschle
03c307a8c0
parser: fix struct name error 2020-04-08 19:08:54 +02:00
hazohelet
78fc9bd12b
fmt: short_module for enum values 2020-04-08 18:55:50 +02:00
Daniel Däschle
d38acb5487
cgen: fix enum print case 2020-04-08 18:55:10 +02:00
Delyan Angelov
3fd547f2e5 flag: fix compilation of programs using flag module 2020-04-08 19:49:32 +03:00
Delyan Angelov
292b165abe tests: use the yellow color for 'the ok, fail, skip, total' line too 2020-04-08 18:49:00 +03:00
Delyan Angelov
e10290eb8e tests: make the SKIP and FAIL labels more distinctive 2020-04-08 18:42:05 +03:00
Alexander Medvednikov
7a218286b3 cgen: fix returning optional consts; fix csv test 2020-04-08 17:21:36 +02:00
Delyan Angelov
3abbdd4a39 tests: fix vlib/os/environment.v 2020-04-08 18:01:19 +03:00
hazohelet
10c4c44d03
parser: allow C struct declaration that lacks body 2020-04-08 16:54:49 +02:00
Daniel Däschle
a61654009f
tests: change skip color to yellow instead of red 2020-04-08 16:52:40 +02:00
krischerven
bcb9d90abb
cgen: remove redundant spaces in generated C 2020-04-08 16:52:07 +02:00
Delyan Angelov
5247d5924e tests: stats_test.v, pcg32_test.v, splitmix64_test.v now also pass 2020-04-08 17:29:43 +03:00
Daniel Däschle
6bba7d4e3a
cgen: enum str() 2020-04-08 15:54:38 +02:00
Delyan Angelov
1388532bd4 tests: fix crc32_test.v 2020-04-08 16:48:13 +03:00
Delyan Angelov
a8fe3a59b0 tests: fix sha1 test by fixing << | expressions with explicit parenthesis for now. 2020-04-08 16:30:19 +03:00
Alexander Medvednikov
80888b9518 tests: fix fmt test 2020-04-08 14:25:08 +02:00
Alexander Medvednikov
8426db7fe5 copy thecodrr/vws to vlib/net/websocket 2020-04-08 14:22:31 +02:00
Alexander Medvednikov
5ef5712e91 vfmt: do not generate a space if the comment is empty 2020-04-08 14:19:13 +02:00
Alexander Medvednikov
2e78051933 tests: fix in_expression_test 2020-04-08 13:56:09 +02:00
Alexander Medvednikov
eb78396307 parser: fix prefix precedence 2020-04-08 13:53:11 +02:00
Delyan Angelov
c00ec77737 tests: fix compilation of parser_test.v 2020-04-08 05:57:36 +03:00
Delyan Angelov
ef19aa1de6 assert: fix line position, pretty print float literals and casts 2020-04-08 05:47:29 +03:00
Delyan Angelov
3bad02abdd cgen: do comparison of f32/f64 values for == and != by calling f64_eq(a,b) and f64_ne(a,b) 2020-04-08 03:51:06 +03:00
Delyan Angelov
8e06f4e519 tests: rename vlib/rand/rand_test.v to random_numbers_test.v to fix sporadic CI fails 2020-04-08 03:04:04 +03:00
Delyan Angelov
b9ec1479e4 checker: allow again fallthrough in or{} blocks of option calls without assignment 2020-04-08 02:56:24 +03:00
Alexander Medvednikov
7ff0c3aaa9 cgen/parser: fix unions 2020-04-08 01:20:55 +02:00
Alexander Medvednikov
cdcb8b6c06 fmt: fix 2020-04-08 01:04:08 +02:00
yuyi
9984691eaf
parser: fix float_test.v 2020-04-08 01:00:58 +02:00
Alexander Medvednikov
d54150cd22 vfmt: fix struct init indent and wrapped lines 2020-04-08 00:59:28 +02:00
Alexander Medvednikov
2fbed2f880 cgen: fix _ = ... 2020-04-08 00:46:16 +02:00
ka-weihe
7406abe3b6
map: use strcmp and update wyhash 2020-04-08 00:02:15 +02:00
Daniel Däschle
59ac0bd46b
cgen: print bool correctly in interpolation 2020-04-07 23:26:20 +02:00
Delyan Angelov
582ee9e643 urllib: put braces in << | expressions in urllib.v to make test pass 2020-04-07 22:58:29 +03:00
Delyan Angelov
cb52dd85e7 tests: add an isolated test case for long struct names with capitalization 2020-04-07 22:03:20 +03:00
Delyan Angelov
589b932f19 compiler: more permissive structure names, that allow URL as a struct name 2020-04-07 22:00:25 +03:00
Alexander Medvednikov
6bbd1943dd cgen: fix &string cast; vfmt fixes 2020-04-07 18:51:44 +02:00
Daniel Däschle
4aedef367c
cgen: print bool and string correctly in struct 2020-04-07 17:52:15 +02:00
Daniel Däschle
7cf9b32742
cmd: show cleaner messages, when v can not compile a tool, or update itself 2020-04-07 17:56:33 +03:00
Daniel Däschle
0024ff848d
parser: check if the last or {} block expression is valid
These checks allows for:

a) `x := call() or { 'abc' }`
b) `x := call() or { panic('abc') }`
c) `x := call() or { exit(123) }`
d) `x := call() or { continue }`
e) `x := call() or { break }`
f) `x := call() or { return }`

... but produce errors for:

g) `x := call() or { println('an error') }` , etc.
2020-04-07 17:36:00 +03:00
Alexander Medvednikov
275b20a184 vfmt: handle for ;; loops; run vfmt on parser.v 2020-04-07 15:48:13 +02:00
Alexander Medvednikov
8f9a8e1e7f vfmt: small fixes + run on checker.v and fmt.v 2020-04-07 15:15:49 +02:00
Alexander Medvednikov
890940292b Revert "cgen: print bool in struct correctly"
This reverts commit 78440be2b2.
2020-04-07 12:56:05 +02:00
Daniel Däschle
78440be2b2
cgen: print bool in struct correctly 2020-04-07 12:39:10 +02:00
yuyi
08d90afb8c
builder: fix an error on windows 2020-04-07 12:32:49 +02:00
yuyi
426eb46166
test: fix windows test error 2020-04-07 12:32:09 +02:00
Daniel Däschle
fe0942043c
checker: check if BranchStmt is in a loop 2020-04-07 12:29:11 +02:00
Alexander Medvednikov
fd75cce0f3 vfmt: minor fixes + tests 2020-04-07 04:05:59 +02:00
Daniel Däschle
b0dacef32b
time: change unix timestamp to u64 2020-04-07 03:35:47 +02:00
lutherwenxu
a8c92e6dff
checker: remove hack and enforce type checking 2020-04-07 03:27:06 +02:00
Alexander Medvednikov
fa5fcee584 cmd/v: fix run args 2020-04-07 03:21:32 +02:00
Alexander Medvednikov
33644a4f91 cmd/v: fix run 2020-04-07 01:09:25 +02:00
Alexander Medvednikov
b7560fe4bf parser: do not allow duplicate methods; builder: cleaning up 2020-04-07 01:02:48 +02:00
Alexander Medvednikov
8d150d427a merge and simplify cmd/v and v.builder 2020-04-07 00:44:31 +02:00
Delyan Angelov
8da12eb8a7 errors: column index tweaks for emacs/vim 2020-04-06 23:15:53 +03:00
Delyan Angelov
333e725380 errors: remove 0 from caret line 2020-04-06 20:41:33 +03:00
Delyan Angelov
bc2ea2f3d4 errors: fix caret position on lines with tabs 2020-04-06 20:35:24 +03:00
Delyan Angelov
3b3d248637 scanner: use formatted errors for s.error too 2020-04-06 19:58:32 +03:00
ka-weihe
5be892c635
cheaders: update wyhash to version gamma 2020-04-06 18:47:29 +02:00
Alexander Medvednikov
7f516dbae2 cgen: minor optionals fixes 2020-04-06 18:46:50 +02:00
Delyan Angelov
d74eb99066 errors: do not bold the actual error message content 2020-04-06 19:46:23 +03:00
Delyan Angelov
7a99949f0e errors: print more informative and pretty errors 2020-04-06 19:40:20 +03:00
Alexander Medvednikov
d865fc26eb http: fix method_and_url_to_response definition 2020-04-06 17:42:47 +02:00
lutherwenxu
e8b26b1b8d
checker: make struct_init check more robust 2020-04-06 17:39:52 +02:00
yuyi
4d5fe14968
log: fix example error 2020-04-06 17:22:53 +02:00
Alexander Medvednikov
2006995020 cmd/v: remove clang-format (the generated code is pretty from the start) 2020-04-06 17:11:01 +02:00
Alexander Medvednikov
87c00a61da strconv: fix compilation 2020-04-06 14:53:28 +02:00
Alexander Medvednikov
35fbac8d56 parser/cgen: default struct field values 2020-04-06 14:45:48 +02:00