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