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

2898 Commits

Author SHA1 Message Date
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
Major Taylor
f099f90f50
string: fix trim_right, add tests 2020-04-06 14:30:25 +02:00
Alexander Medvednikov
f59c9133da cgen: temporary headers fix 2020-04-06 14:22:59 +02:00
Alexander Medvednikov
be014fcdd6 checker: << check; initial #flag os support 2020-04-06 02:05:11 +02:00
ka-weihe
a30d292385
map: fix leaksfree fix (#4254) 2020-04-05 23:31:53 +02:00
Alexander Medvednikov
edb93914bb vfmt: re-run on fmt.v 2020-04-05 23:30:16 +02:00
Alexander Medvednikov
852ec61b34 vfmt: fix single line if 2020-04-05 23:00:21 +02:00
ka-weihe
307daacf67
depgraph/map: fix memory bug 2020-04-05 22:09:52 +02:00
Alexander Medvednikov
ffe8452f02 vfmt: fix imports 2020-04-05 21:53:00 +02:00
Alexander Medvednikov
08bbc251ff vfmt: fix multiline comments 2020-04-05 19:35:10 +02:00
Alexander Medvednikov
8260236331 vfmt: run on fmt.v 2020-04-05 18:15:50 +02:00
Alexander Medvednikov
e464c4acc5 vfmt: more fixes + run on cgen.v 2020-04-05 18:03:36 +02:00
Alexander Medvednikov
df45932c03 vfmt: fix same line stmt comments 2020-04-05 16:38:33 +02:00
Alexey
781c20a6ae
cgen: bring back Windows fixes 2020-04-05 16:08:16 +02:00
Delyan Angelov
206c1f4ca1 os: implement os.is_writable_folder/1 2020-04-05 16:56:54 +03:00
Delyan Angelov
f139e98745 launch_tool: use println for verbose messages instead of eprintln 2020-04-05 15:31:09 +03:00
Delyan Angelov
44a271d9e9 v version: show only vhash, when vhash and current_hash are the same 2020-04-05 14:47:01 +03:00
lydiandy
35fab2bb7b
ast: pub interface field 2020-04-05 12:31:39 +02:00
Alexey
9c1eaaeb49
cgen: declare empty structs correctly 2020-04-05 12:31:25 +02:00
Alexander Medvednikov
de701ccfac fmt: struct field comments on the same line 2020-04-05 12:25:39 +02:00
Delyan Angelov
75518e5bb9 ci: extract separate working_with_an_empty_struct_test.v 2020-04-05 12:55:54 +03:00
Delyan Angelov
5e76d53fcd compiler: support default values in optional blocks 2020-04-05 11:59:15 +03:00
Alexander Medvednikov
05fbe5ab7a parser: move comments 2020-04-05 04:05:09 +02:00
Alexander Medvednikov
2a06263a5b vfmt: more fixes; enable v fmt and v fmt -w 2020-04-05 03:37:38 +02:00
Alexander Medvednikov
97db4c0e9a vfmt: comments and other fixes 2020-04-05 02:08:13 +02:00
Delyan Angelov
45fdbc4df7 support pretty printing of StringInterLiteral in asserts too 2020-04-05 00:51:49 +03:00
Daniel Däschle
e077cce103
vlib: add inode/mode information functionality (#4242)
* vlib: add inode/mode information functionality

* vlib: add docs to inode
2020-04-05 00:37:13 +03:00
Alexey
98086d7259
strconv: fix atof test 2020-04-04 23:28:47 +02:00
Delyan Angelov
774fb7e850 fix 'assert false' pretty printing 2020-04-05 00:12:16 +03:00
Delyan Angelov
45401954fa fix vlib/os/os_test.v 2020-04-04 23:06:47 +03:00
Delyan Angelov
b0567543c9 add support for errcode in or{} optional blocks. 2020-04-04 21:47:57 +03:00
Alexey
abd0686043
cgen: fix struct initialization 2020-04-04 17:59:49 +02:00
Alexey
bb587c27a8
bitfield: update module 2020-04-04 17:59:26 +02:00
Delyan Angelov
8f06d60084 fix vlib/bitfield/bitfield_test.v 2020-04-04 18:03:06 +03:00
Alexander Medvednikov
33b03449d5 tools: remove vnames.v for now 2020-04-04 16:39:08 +02:00
Alexander Medvednikov
e600feda98 cgen: __argc is already used on windows 2020-04-04 15:59:46 +02:00
Alexey
b8f1152408
clipboard: fix build on Windows 2020-04-04 15:37:13 +02:00
Alexey
6455e57e82
fmt: process C function declarations correctly 2020-04-04 15:36:46 +02:00
krischerven
1960c6f4cb
checker: make an error message less ambiguous 2020-04-04 15:36:12 +02:00
Delyan Angelov
4c8703416e fix vlib/math/math_test.v 2020-04-04 16:07:42 +03:00
Alexander Medvednikov
f748390172 parser: do no allow var names with __; cgen: use __argc 2020-04-04 14:55:40 +02:00
Alexander Medvednikov
95a1bd8470 cgen: handle C typedefs 2020-04-04 14:32:42 +02:00
Alexander Medvednikov
440f1cf4c6 map: remove old get methods 2020-04-04 14:22:39 +02:00
Alexander Medvednikov
46aed151ab parser: snake_case check; array: mutable array test 2020-04-04 14:09:58 +02:00
krischerven
4c6db7a64e
cgen: fix mutable arrays 2020-04-04 14:08:38 +02:00
Delyan Angelov
133842bf95 Remove unused self import of v.util into v.util . 2020-04-04 14:49:08 +03:00
joe-conigliaro
b4e5e36d4a
checker: var opt & temp [] & non array init error & bug notes 2020-04-04 22:32:16 +11:00
Alexander Medvednikov
d1f653f9bd parser: fix GG struct init 2020-04-04 13:11:50 +02:00
Alexander Medvednikov
c0d4503f25 gl/glfw: update C definitions 2020-04-04 12:56:35 +02:00
Alexey
d56276017c
cgen: fix variadics called with 0 vargs 2020-04-04 12:54:45 +02:00
yuyi
8ba6e45d83
time: fix unix_time 2020-04-04 12:10:56 +02:00
Alexey
c6fabea49d
cgen: generate code for go statement for Windows 2020-04-04 12:09:05 +02:00
yuyi
0796eb4149
os: optimize os_windows.v 2020-04-04 11:59:25 +02:00
Alexey
5313a1401f
checker: show actual field name in warn message 2020-04-04 11:57:45 +02:00
Alexey
72df30050d
term: fix get_terminal_size on Windows 2020-04-04 11:56:43 +02:00
joe-conigliaro
97d8633557
checker: constant cycle & test fix 2020-04-04 17:05:26 +11:00
joe-conigliaro
c9e290b36f
table: simplify/generalise type fns & remove calls 2020-04-04 16:37:11 +11:00
joe-conigliaro
bf59828897
ast: const impl & global scope & objects 2020-04-04 14:14:40 +11:00
yuyi
bb5ed66bb4
eval: fix new_checker call 2020-04-04 02:03:41 +02:00
Alexander Medvednikov
1d2de44e19 cgen: fix print(ptr); checker: uninitialized reference error/warning 2020-04-03 20:17:53 +02:00
Alexander Medvednikov
436ef12730 cgen: str(): handle empty structs 2020-04-03 18:49:15 +02:00
Delyan Angelov
b411d29577 v2: fix support for 'go fn()' in modules. sync.pool is again multithreaded. 2020-04-03 19:44:49 +03:00
Alexander Medvednikov
c32ed8af51 cgen: struct str() generation; go() fixes 2020-04-03 18:05:53 +02:00
Delyan Angelov
31c4b1cda6 v2: compile vfmt again; consistent colored error messages 2020-04-03 18:42:22 +03:00
Alexander Medvednikov
52f096f5d9 cgen: go xxx() 2020-04-03 15:18:20 +02:00
Alexey
6a5cc0fa19
tests: update assert output 2020-04-03 13:39:11 +02:00
Alexey
6c4de001b8
cgen: add builtin.init call inside of _vinit 2020-04-03 13:27:19 +02:00
Alexey
4cde6c0865
fmt: process TypeOf node 2020-04-03 11:59:53 +02:00
Alexander Medvednikov
87a185ea9c checker: remove newlines after errors 2020-04-03 11:09:02 +02:00
Alexander Medvednikov
0dad1a89e6 checker: much less verbose error messages 2020-04-03 11:01:09 +02:00
Alexander Medvednikov
1d52847924 checker: error on an unknown ident 2020-04-03 10:52:48 +02:00
Alexander Medvednikov
a25f47124d cgen: make array_set/map_set work with pointers 2020-04-03 10:41:01 +02:00
Alexey
ef339a4896
rand: update module 2020-04-03 08:53:57 +02:00
yuyi
5e6aa5371a
scanner: minor optimization (#4211) 2020-04-03 09:46:54 +03:00
Delyan Angelov
6b9bf8cbf7 v2: fixes for most of vlib/builtin/map_test.v . 2020-04-03 00:42:08 +03:00
Delyan Angelov
07c53b1b70 v2: report ill defined consts by name/line, not only how many they are 2020-04-02 22:33:36 +03:00
Alexey
5b6ec8996a
sync: fix build on Windows 2020-04-02 20:58:07 +02:00
hazohelet
0e6fe0a4f2
V: fix const bugs and pass const_test.v (#4206)
* fix const bug in v2

* v2: fix const decl

* small comment fix
2020-04-02 19:39:17 +02:00
Alexey
6309e699e5
builtin: add operator precedence test 2020-04-02 19:02:49 +02:00
Alexander Medvednikov
804d303487 cgen: add () for | and ^ 2020-04-02 18:26:56 +02:00
Delyan Angelov
abf15e863c
v2: compile vrepl, 'fn main(){println(2+2)}' runs now
It works if you give it complete V programs like
fn main(){println(2+2)}
but not for single expressions like 2+2 or statements like a:='abc'
2020-04-02 19:21:12 +03:00
Alexander Medvednikov
fd12e4e826 fix compiler_test.v 2020-04-02 18:12:10 +02:00
Delyan Angelov
61f79270a8 v2: compiler_test.v should fail on errors. 2020-04-02 19:01:31 +03:00
penguindark
83289d74a7
builtin: fix int to hex 2020-04-02 17:16:17 +02:00
Alexey
8c050eff07
msvc: add a workaround to fix backtrace (#4200) 2020-04-02 17:11:12 +02:00
Alexander Medvednikov
40fd924b15 parser: match must be exhaustive; cmd/v: one verbosity level, simpler version 2020-04-02 16:51:16 +02:00
Alexander Medvednikov
f087e819d7 cli: minor fixes 2020-04-02 16:04:57 +02:00
SleepyRoy
d5b2eb3c23
test: remove old num_lit_call_method 2020-04-02 15:52:46 +02:00
Delyan Angelov
ad9848d983
fix cmd/tools/vtest.v build
This PR enables building them again with v2, by making vlib/sync/pool.v
single threaded for now, and by removing the use of generics till they
are fixed in v2.
2020-04-02 15:52:23 +02:00
Delyan Angelov
4ada412a05
v2: stage 2 for enhancing 'v version' with the current git commit hash 2020-04-02 15:51:48 +02:00
Alexey
01aa2b86f5
array, map: cast voidptr to byteptr 2020-04-02 15:31:44 +02:00
Alexander Medvednikov
d4df916581 array: cast data to byteptr 2020-04-02 14:58:45 +02:00
Alexander Medvednikov
be327962d3 strconv: remove an assert for now 2020-04-02 14:26:35 +02:00
Alexander Medvednikov
5b53b3d7e3 cgen/os: minor fixes 2020-04-02 14:00:28 +02:00
Alexander Medvednikov
6e380b8897 cgen: brin back hashes() 2020-04-02 13:49:59 +02:00
Alexander Medvednikov
5b835d294c more windows fixes + bring back windows ci 2020-04-02 13:44:46 +02:00
Alexander Medvednikov
1178bfa578 windows: a temp SUCCESS fix 2020-04-02 13:31:37 +02:00
Delyan Angelov
084f853a2a
v2: enhance version with current git commit hash. Cleanup redundant code. 2020-04-02 13:31:02 +02:00
Alexander Medvednikov
d9c7253836 windows: "".to_wide() fixes 2020-04-02 13:24:23 +02:00
Alexander Medvednikov
1fe2933dd9 cgen: windows fixes 2020-04-02 13:09:39 +02:00
Alexander Medvednikov
4981c5a870 parser: fix public interfaces 2020-04-02 12:53:25 +02:00
yuyi
86ea886ad7
scanner: uniform bool type variable names 2020-04-02 12:23:18 +02:00
Delyan Angelov
12b8dc2613
v2: fix version 2020-04-02 10:48:29 +02:00
Alexander Medvednikov
d57b1ca962 fix valgrind test 2020-04-02 10:44:35 +02:00
Alexander Medvednikov
461a5b2c18 cgen: fix raw strings 2020-04-02 10:15:35 +02:00
Alexander Medvednikov
683aa75b8d cgen: fix filter() 2020-04-02 09:32:10 +02:00
yuyi
24499aa6de
scanner: minor refactoring 2020-04-02 09:27:00 +02:00
krischerven
dac304195e
cgen: print: support all the same functionality as println 2020-04-02 09:19:57 +02:00
Major Taylor
3eff266eb9
cgen: vcleanup call fix (#4186) 2020-04-02 09:18:45 +02:00
krischerven
561b7a0ea5
enum: make .str() print the name instead of the value 2020-04-02 03:27:06 +02:00
Alexander Medvednikov
07ea1eff81 glfw: more fn definitions 2020-04-02 02:02:12 +02:00
Alexander Medvednikov
507f4ce87a array: handle "0" strings 2020-04-02 01:47:32 +02:00
Alexander Medvednikov
88d15c6611 gl, glfw, freetype fixes 2020-04-02 01:45:22 +02:00
Alexander Medvednikov
1cfe44d9c6 fix windows build 2020-04-02 01:15:00 +02:00
SleepyRoy
74bdc57fad
tests: fix num_lit_call_method_test 2020-04-02 00:18:29 +02:00
Alexander Medvednikov
fb4b93dfc0 ci fixes 2020-04-02 00:10:11 +02:00
Alexander Medvednikov
91ffeeb73b parser: fix (x mut &X) 2020-04-01 23:56:55 +02:00
Alexander Medvednikov
c6cf8ace22 glfw and tetris fixes; temporary ci fixes 2020-04-01 23:49:11 +02:00
Alexander Medvednikov
24fc4a4c04 use autofree only with -autofree for now 2020-04-01 23:28:56 +02:00
Alexander Medvednikov
39434155f8 short struct init syntax 2020-04-01 23:23:20 +02:00
Alexander Medvednikov
d9af06f2ad remove remaining files in vlib/compiler 2020-04-01 22:19:09 +02:00
Alexander Medvednikov
8dfb14b1c4 remove 15k lines of code of the old backend; make V2 the default backend 2020-04-01 21:25:31 +02:00
Alexander Medvednikov
30f306dc1a another vfmt2 fix 2020-04-01 18:25:05 +02:00
Alexander Medvednikov
f657c4b514 another vfmt2 fix 2020-04-01 18:16:56 +02:00
Alexander Medvednikov
3ef6436bef fix fmt2 test 2020-04-01 17:52:50 +02:00
Alexander Medvednikov
e3713de41d fix compilation 2020-04-01 17:17:35 +02:00
Alexander Medvednikov
0de853a2ab v2: lots of minor test fixes 2020-04-01 17:14:21 +02:00
joe-conigliaro
6764c7dd5c
parser/cgen: typeof test fixes - match & fixed array order 2020-04-02 02:13:21 +11:00
yuyi
bd8d51fc95
token: small optimizations 2020-04-01 16:50:56 +02:00
Alexander Medvednikov
5a0bfa03b3 fix tests 2020-04-01 15:39:54 +02:00
Alexander Medvednikov
3dae1cc131 move sdl module to github.com/vlang/sdl 2020-04-01 15:27:28 +02:00
Alexander Medvednikov
7fd81d3abb parser: fix ^=; disable generics and interface map tests for now 2020-04-01 15:15:21 +02:00
Alexander Medvednikov
b1b811b5ed v2: static (for translated code only) 2020-04-01 13:38:05 +02:00
Alexander Medvednikov
48832200bb parser: allow types that start with &&; cgen: allow ++/-- exprs for now 2020-04-01 13:18:58 +02:00
yuyi
56a9196be8
token: fix nr_tokens 2020-04-01 12:12:25 +02:00
yuyi
b28e372106
scanner: small optimization 2020-04-01 12:11:52 +02:00
Major Taylor
9bb1b5d1bb
v2: enum fields separated by commas 2020-04-01 12:11:00 +02:00
Delyan Angelov
5b990078f9
more precise support for internal module tests 2020-03-31 23:42:30 +02:00
Alexander Medvednikov
2ac074655f fix interface test 2020-03-31 21:05:48 +02:00
Alexander Medvednikov
050ec5d9e3 parser: do not allow string{} outside of builtin 2020-03-31 21:03:21 +02:00
Alexander Medvednikov
a3bd19ce73 cgen: generate enums earlier 2020-03-31 20:26:15 +02:00
Alexander Medvednikov
2b563bc69f v2: initial interface support; fix enum_hex_test.v 2020-03-31 19:59:41 +02:00
Delyan Angelov
50143ad9bf
v2: be silent by default 2020-03-31 19:58:44 +02:00
Alexander Medvednikov
2fe0e80569 cgen: enum default values 2020-03-31 19:43:11 +02:00
Alexander Medvednikov
43f72246aa checker: fix index type check 2020-03-31 17:51:16 +02:00
Alexander Medvednikov
f98cc9c017 cgen: fix ARR_LEN 2020-03-31 17:16:12 +02:00
Alexander Medvednikov
9d630dff30 allow slicing of fixed size arrays 2020-03-31 16:48:00 +02:00
joe-conigliaro
d048bf66b0
cgen: optimize/generalize typ method 2020-04-01 00:18:25 +11:00
Alexander Medvednikov
956bf23390 memory fixes: 21% of V compiler leaks fixed 2020-03-31 14:33:16 +02:00
SleepyRoy
9b9c1cc834
scanner: fix number literal calling method 2020-03-31 12:47:32 +02:00
Delyan Angelov
b62035e3d0
solaris & termux: fix both, using the more portable termios.h 2020-03-31 12:46:46 +02:00
joe-conigliaro
21e4f2422d
cgen: clarify field name 2020-03-31 19:11:47 +11:00
joe-conigliaro
f8169fee48
table: add i8 to number_type_idxs 2020-03-31 16:17:26 +11:00
joe-conigliaro
f58875a202
table: i8 -128 was being cast to int closes #4164 2020-03-31 16:07:30 +11:00
joe-conigliaro
3b621c0ce6
checker: make var_scope mutable 2020-03-31 15:41:14 +11:00
joe-conigliaro
602bc06bee
ast: use multi return optional for find_scope_and_var 2020-03-31 15:39:14 +11:00
joe-conigliaro
71ca553190
cgen: multi return/assign optionals 2020-03-31 15:34:59 +11:00
Delyan Angelov
07de351546
v2: support -stats for _test.v files 2020-03-30 17:21:32 +02:00
joe-conigliaro
3440d7edd8
ast: first step merging CallExpr & MethodCallExpr 2020-03-30 21:39:20 +11:00
Delyan Angelov
7785583b34
android: fix termux build 2020-03-29 20:54:21 +02:00
hazohelet
ec025f2020
compiler: use type unresolved for unresolved consts 2020-03-29 19:26:55 +02:00
yuyi
c9eed0b89b
cgen: optimize a replace call 2020-03-29 10:09:27 +02:00
Alexey
a333ac1888
all: remove redundant parentheses in if statements 2020-03-29 10:08:42 +02:00
Delyan Angelov
e09447d011
v and v2: support @VEXE 2020-03-28 21:51:45 +01:00
vamsi-shankar
715d4f6601
math: copysign() 2020-03-28 18:32:38 +01:00
Delyan Angelov
a9724fd38d
v2: typeof() 2020-03-28 17:37:22 +01:00
joe-conigliaro
837bffd03a
parser: parse type - fix multiple & 2020-03-29 01:15:10 +11:00
Alexander Medvednikov
831be43740 checker: check ! operator 2020-03-28 14:38:16 +01:00
joe-conigliaro
718819eb7a
map/scope/checker: update just var type & ret zero in map.get3 2020-03-29 00:00:28 +11:00
yuyi
9fb218d379
glfw: temporary fix 2020-03-28 12:47:24 +01:00
Alexey
cedf185b41
v2: fix Windows errors 2020-03-28 10:19:38 +01:00
Alexander Medvednikov
f627710870 fix repl tests 2020-03-27 20:49:20 +01:00
Alexander Medvednikov
98a0beab03 cgen: generate str() methods; merge c tests 2020-03-27 20:33:30 +01:00
Alexander Medvednikov
eed7c91e87 move compiler tests from compiler/ to v/ 2020-03-27 18:01:46 +01:00
Alexander Medvednikov
f6db36d7f0 fix parser_test and vfmt.v 2020-03-27 15:24:08 +01:00
Alexander Medvednikov
7369cb7b86 fmt: fix tests 2020-03-27 15:19:13 +01:00
Alexander Medvednikov
473d9fef55 checker: do not allow extra () in if conditions 2020-03-27 14:57:19 +01:00
Alexander Medvednikov
1a751208ca cgen: skip $if os {} block 2020-03-27 14:44:30 +01:00
Alexander Medvednikov
7fdce50718 cgen: write defer statements at the end of the function 2020-03-27 11:21:00 +01:00
Joe Conigliaro
fd8bb2c95c tests: small array/struct test notes & tmp fix 2020-03-27 20:47:24 +11:00
r00ster
bee8972632
readline: make some functions public 2020-03-27 09:55:15 +01:00
Alexander Medvednikov
db59c621e8 v2: minor fixes 2020-03-27 08:47:02 +01:00
Joe Conigliaro
883a105aca cgen: fix tests 2020-03-27 17:28:04 +11:00
Joe Conigliaro
7ce7151ad2 cgen: v2 compiles itself - defer stmt / if * in opt parens. 2020-03-27 17:21:22 +11:00
penguindark
8de027c4b4
strconv: fix on ftoa string decimal aproximation, 'nan' string fix 2020-03-26 22:39:46 +01:00
Alexander Medvednikov
9185de3fb7 cgen: fix tests 2020-03-26 22:28:24 +01:00
Alexander Medvednikov
f0334b2e12 cgen: fix arr[i] *= x and 2d_arr << arr 2020-03-26 22:09:25 +01:00
Delyan Angelov
f489c89987
v2: more informative assert output; string interpolation formatting 2020-03-26 19:17:14 +01:00
yuyi
6892a3e0a8
glfw: remove excess glfw. in module glfw 2020-03-26 17:32:08 +01:00
Alexander Medvednikov
eb57f192d4 cgen: fix test 2020-03-26 17:21:52 +01:00
Alexander Medvednikov
75c2ef7947 cgen: fix octal and hex int literals 2020-03-26 17:14:24 +01:00
Alexander Medvednikov
ed3e0c43bc cgen: for c in string; short struct init syntax fixes; 2020-03-26 17:03:14 +01:00
Alexander Medvednikov
c71d36356b v2: optionals fixes 2020-03-26 14:58:11 +01:00
Alexander Medvednikov
b288bf2e7c cgen: or{} for methods 2020-03-26 14:42:14 +01:00
yuyi
9c5de77f12
os: ext => file_ext 2020-03-26 14:18:08 +01:00
yuyi
a6347118cd
pg: add windows include and lib flag 2020-03-26 14:17:13 +01:00
Joe Conigliaro
1d0f3abadf cgen/checker: variadic method call fix 2020-03-26 22:40:14 +11:00
Joe Conigliaro
b1d15afe61 checker: array slice type 2020-03-26 22:04:24 +11:00
Alexander Medvednikov
fc86269bc9 checker: array str fixes 2020-03-26 11:32:32 +01:00
Joe Conigliaro
f452518a63 cgen: fix typo & use expected type 2020-03-26 21:11:56 +11:00
Joe Conigliaro
9c6ac7cb71 cgen: fix variadics called with 0 vargs 2020-03-26 21:09:59 +11:00
Alexander Medvednikov
f2c9592b86 cgen: fix () in & exprs 2020-03-26 10:44:59 +01:00
Alexander Medvednikov
1f3428f282 cgen: basic assert 2020-03-26 10:27:46 +01:00
Alexander Medvednikov
ec4be80bcc Revert "db: increase db module level in vlib "
This reverts commit cd6d175180.
2020-03-26 09:23:54 +01:00
yuyi
cd6d175180
db: increase db module level in vlib 2020-03-26 09:21:34 +01:00
Delyan Angelov
fb4f7b6827
v2: enable compilation of short programs with no 'import os' 2020-03-26 09:20:55 +01:00
hazohelet
d8bcd13e86
compiler: fix #3973 by dealing with name mangling problem 2020-03-26 08:54:33 +01:00
Delyan Angelov
d54843275f
os_test.v: simplify cleanup 2020-03-26 00:09:30 +01:00
Alexander Medvednikov
aa34d3a4c4 cgen: remove a space 2020-03-25 23:57:46 +01:00
Alexander Medvednikov
25ee30d8cb cgen: fix optional functions with unused return values 2020-03-25 23:57:22 +01:00
Alexander Medvednikov
89a05a474f valgrind tests: skip C warnings for now 2020-03-25 21:46:46 +01:00
Alexander Medvednikov
3b4e0147cd cgen: fix tests 2020-03-25 17:26:03 +01:00
Alexander Medvednikov
7070b1cda9 cgen: GotoStmt, err variable 2020-03-25 17:24:55 +01:00
Alexander Medvednikov
26fab9b274 cgen: fix mutable array args 2020-03-25 17:04:16 +01:00
Alexander Medvednikov
41a089e513 cgen: or block 2020-03-25 16:00:22 +01:00
Alexander Medvednikov
456750ac19 v2: array_test fixes 2020-03-25 14:24:48 +01:00
yuyi
aa0643f785
glfw: fix mut scale bug 2020-03-25 13:44:21 +01:00
Alexander Medvednikov
60fbceea43 memory: free_scope_vars() 2020-03-25 12:26:59 +03:00
Joe Conigliaro
bb76e5da91 parser: array map fixe 2020-03-25 20:09:50 +11:00
Joe Conigliaro
8ba46965b6 checker: array map fixes 2020-03-25 20:07:53 +11:00
Alexander Medvednikov
b495e78f0e v2: add _vinit to tests' fn main 2020-03-25 00:17:39 +01:00
Alexander Medvednikov
a3046b68da cgen: fix tests 2020-03-24 23:41:34 +01:00
Alexander Medvednikov
7f345e310b cgen: fix const name 2020-03-24 22:41:01 +01:00
Alexander Medvednikov
cc9537dd8a cgen: fix tests 2020-03-24 22:35:05 +01:00
Alexander Medvednikov
437bba5566 cgen: generate fn main for tests; fix consts bug 2020-03-24 22:24:03 +01:00
Delyan Angelov
2a7bc63919
vmft2: support for multiline comments, CompIf, AssertStmt, octal literals 2020-03-24 22:18:58 +01:00
Alexander Medvednikov
0e240458d3 os: fix os_test 2020-03-24 17:16:00 +01:00
Alexander Medvednikov
5d976d841b v2: raw strings 2020-03-24 17:07:27 +01:00
Joe Conigliaro
4d3362358f parser: array init &element fix 2020-03-25 02:24:23 +11:00
Alexander Medvednikov
32c8eb6490 os: vfmt os_test.v 2020-03-24 16:18:37 +01:00
Alexander Medvednikov
e012966291 parser/ast: Block 2020-03-24 15:44:17 +01:00
Joe Conigliaro
7aff0cb84f cgen: remove special case for malloc 2020-03-25 00:46:00 +11:00
Joe Conigliaro
d98bb44490 cgen: remove 0 typ checks & unused var 2020-03-24 22:55:41 +11:00
Joe Conigliaro
9a8bd3f7fa checker: variadic method fix 2020-03-24 22:39:11 +11:00
Alexander Medvednikov
f101e9b9e2 v2: string fixes, is_dir fix 2020-03-24 11:14:11 +01:00
Joe Conigliaro
3d2fafa580 cgen: variadic for in loop 2020-03-24 19:42:16 +11:00
joe-conigliaro
309a905409 cgen: remove unused var 2020-03-24 17:27:20 +11:00
joe-conigliaro
e5a111396c cgen: add for map 2020-03-24 17:25:10 +11:00
Joe Conigliaro
0433e24b7f cgen: array init fix 2020-03-24 13:31:16 +11:00
Delyan Angelov
efe21fed66
v2: fix hello world compilation with tcc 2020-03-23 21:26:48 +01:00
Alexander Medvednikov
9c536f2233 compiler: hide the u64 warning for now 2020-03-23 21:00:20 +01:00
Alexander Medvednikov
1cb45e9916 compiler_test: do not run on windows for now 2020-03-23 20:36:34 +01:00
Alexander Medvednikov
ae2d001261 tests: fix the new v2 output tests 2020-03-23 20:30:20 +01:00
SleepyRoy
67ba56c65c
expression: set integer literals as int by default 2020-03-23 20:05:37 +01:00
Major Taylor
5c9cbae10d
term: fix divide by 0 error on empty delimiter 2020-03-23 20:05:08 +01:00
Alexander Medvednikov
2e29e09b1b cgen: fix map_get: use zero value if the key was not found 2020-03-23 20:02:09 +01:00
Joe Conigliaro
80676cf44f cgen: fix struct init 0 fields & tests 2020-03-23 21:57:54 +11:00
Joe Conigliaro
e13bbd8c40 cgen: map init struct fields & fn type arg fix 2020-03-23 21:17:14 +11:00
Alexander Medvednikov
c808430643 cgen: optimize type_default() 2020-03-23 09:17:32 +01:00
Alexander Medvednikov
4867803f6b cgen: zero struct fields during initialization 2020-03-23 08:59:34 +01:00
joe-conigliaro
a5bd98610f cgen: call arg ref fix 2020-03-23 17:23:10 +11:00
Joe Conigliaro
89af7e7a5b cgen: replace reserved C keywords in identifiers 2020-03-23 13:36:50 +11:00
yuyi
2efc37947d
time: calc_unix => unix_time 2020-03-22 19:43:59 +01:00
Chris
e78b97652b
glfw: fix "scale is declared as mutable" 2020-03-22 18:39:17 +01:00
Alexander Medvednikov
b69ebd73b2 cgen: minor fixes. v2 can now compile itself! 2020-03-22 16:55:42 +01:00
Joe Conigliaro
99de98ffc7 cgen: fix test 2020-03-23 02:30:45 +11:00
Joe Conigliaro
076bc2b773 cgen/checker: fixes & fixes & tmp fixes :D 2020-03-23 02:22:49 +11:00
Alexander Medvednikov
c0df54b7d3 checker: check $if else 2020-03-22 14:56:13 +01:00
Alexander Medvednikov
ce73ced932 cgen: #else 2020-03-22 14:54:31 +01:00
Alexander Medvednikov
2738a0c776 cgen: backtrace and sigaction fixes 2020-03-22 14:47:45 +01:00
Joe Conigliaro
0609756d36 cgen: fix sum type casts & else if formatting 2020-03-23 00:28:11 +11:00
Alexander Medvednikov
c2ce06eba7 cgen: generate #ifdefs 2020-03-22 13:55:39 +01:00
Alexander Medvednikov
8d8907b61e memory: handle string assignments 2020-03-22 13:40:53 +01:00
Joe Conigliaro
043ea80fa9 checker: comptime if expr/stmts & type check fixes 2020-03-22 23:36:27 +11:00
Alexander Medvednikov
cf8776ac71 valgrind: update the test 2020-03-22 13:33:40 +01:00
Delyan Angelov
3f328a0242
test: fix 'v test vlib/v/tests' 2020-03-22 13:26:16 +01:00
Alexander Medvednikov
4cbba8c45d memory: handle arrays 2020-03-22 13:19:45 +01:00
Alexander Medvednikov
3a938972df memory: autofree fix 2020-03-22 12:06:33 +01:00
Alexander Medvednikov
7b689d8c52 ast: CompIf position 2020-03-22 11:53:08 +01:00
Alexander Medvednikov
ab3f6d9202 cgen: generate indents for more readable C code 2020-03-22 10:12:45 +01:00
Delyan Angelov
53a9329ab6
valgrind: nicer output 2020-03-22 09:44:15 +01:00
Alexander Medvednikov
1ad417734e memory: remove if false 2020-03-22 08:59:44 +01:00
Naheel
c50c6812ce
os: fix cp() spaces in files names 2020-03-22 08:43:24 +01:00
Alexander Medvednikov
a02395fe2d valgrind: run the tests 2020-03-21 20:31:30 +01:00
Alexander Medvednikov
85e411bd7c fix valgrind test 2020-03-21 20:10:30 +01:00
Alexander Medvednikov
3e80e22f5d fix prod build 2020-03-21 20:02:37 +01:00
Alexander Medvednikov
e5f6a0949f cgen: autofree: first step 2020-03-21 19:52:19 +01:00
Joe Conigliaro
efbf114a2f checker: ref & deref in prefix expr 2020-03-22 02:41:01 +11:00
penguindark
421f5b6fdf
builtin: int to str without offset buffer 2020-03-21 16:00:58 +01:00
Joe Conigliaro
fc43294efc checker: deref fix 2020-03-22 01:27:10 +11:00
Joe Conigliaro
9d80d261b9 gen: rename _init() to _vinit() in cheaders.v 2020-03-22 00:22:43 +11:00
Joe Conigliaro
f7042e9038 cgen: sum type cast & map str() receiver 2020-03-21 23:57:11 +11:00
Alexander Medvednikov
0f1371e1c9 cgen: fix tests 2020-03-21 13:56:21 +01:00
ka-weihe
bf97afb9ed
map: small cleanup 2020-03-21 13:55:07 +01:00
Alexander Medvednikov
f962d92623 cgen: use _vinit instead of _init to avoid conflicts on Linux 2020-03-21 13:28:41 +01:00
Joe Conigliaro
eb8d64999f checker: temp map str() method fix 2020-03-21 22:31:25 +11:00
radare
cc75fe4fe5
builtin: Fix undefined behaviour when allocating empty structs (#4088) 2020-03-21 12:24:34 +01:00
Alexander Medvednikov
7b1b647832 parser: disable parser_test.v for now 2020-03-21 11:55:49 +01:00
Alexander Medvednikov
7ad1441c81 cgen: fix the tests 2020-03-21 11:47:23 +01:00
Alexander Medvednikov
b2d1f55702 cgen_test fixes 2020-03-21 11:17:17 +01:00
Alexander Medvednikov
c12985d1d7 cgen: for in; init fixes 2020-03-21 10:22:19 +01:00
Delyan Angelov
ba088056ed
solaris: make 'v test-compiler' pass (stage 2) 2020-03-21 09:48:02 +01:00
Alexander Medvednikov
e57804e6c2 cgen: generate init() 2020-03-21 09:29:16 +01:00
Alexander Medvednikov
c93f515a54 cgen: add _STR definition 2020-03-21 07:10:53 +01:00
Alexander Medvednikov
5f61fbcbe3 fix prod build 2020-03-21 07:04:53 +01:00
Alexander Medvednikov
5072320803 cgen/ast/checker: string interpolation 2020-03-21 07:01:11 +01:00
radare
c21e976cad
builtin: do not use unsafe sprintf/vsprintf functions 2020-03-21 06:37:58 +01:00
Alexander Medvednikov
b4561fa814 Revert "term: make compilable with v2 on windows" 2020-03-20 21:15:45 +01:00
Alexander Medvednikov
0f1f724a91 term: make compilable with v2 on windows 2020-03-20 21:12:37 +01:00
Alexander Medvednikov
ec003ff897 cgen: temporary lld fix 2020-03-20 20:46:42 +01:00