Commit Graph

5206 Commits (376833aea73fdb4ec7d9672f15569405f45f189b)

Author SHA1 Message Date
Nick Treleaven 39f90e25f3
all: `if` guard optional: define `err` in `else` branch (#5853) 2020-07-17 19:10:01 +02:00
Uwe Krüger ea322bdd97
checker, cgen: fix call of generic function returning normal type (#5865) 2020-07-17 18:28:45 +02:00
Ryan Willis e804ba5294
vfmt: add support for VDIFF_TOOL, detect more diffing tools (#5857) 2020-07-17 14:03:07 +03:00
Uwe Krüger f6947d111b
parser: fix `sizeof(int)` when used as call arg for external function (#5855) 2020-07-17 11:31:35 +03:00
spaceface777 3583302ad4
parser: force `...` rather than `..` in matches for inclusive ranges (#5852) 2020-07-17 11:30:21 +03:00
Lukas Neubert fa03f390b3
parser: add error for `for i := 0; i++; i < ..` (#5850) 2020-07-17 10:31:58 +03:00
Ryan Willis 82e2b1ec33
strconv: use import instead of module in test files (#5856) 2020-07-17 02:35:42 +02:00
Alexander Medvednikov 69ef43ba00 vweb: fix ip() 2020-07-16 21:23:35 +02:00
Alexander Medvednikov cb1009d91b strconv: more fixes 2020-07-16 20:55:15 +02:00
Alexander Medvednikov f1b4af33ac tests: atof_test fix 2020-07-16 19:50:09 +02:00
Alexander Medvednikov 9b2cbdacc6 vfmt: verify 2020-07-16 19:46:03 +02:00
Alexander Medvednikov a989e017fe tests: fix f32_f64_to_string_test.v 2020-07-16 19:41:01 +02:00
Alexander Medvednikov e4fac6ff97 autofree: fix scope position 2020-07-16 19:40:14 +02:00
Alexander Medvednikov dc89a914ea cc: build-module/module cache fixes; strconv: move all code in one module 2020-07-16 19:01:56 +02:00
Ryan Willis f66967a88c
vsymlink: real Windows symbolic link, fallback to batch, make.bat updates (#5841) 2020-07-16 18:33:26 +02:00
Swastik Baranwal f3a505b558
scanner: add check for `_` in num literals (#5849) 2020-07-16 17:29:07 +03:00
spaceface777 b900577dae
compiler: handle ranges as `match` conditions (#5847) 2020-07-16 16:41:18 +03:00
joe-conigliaro 612fe1b8fb
cgen: autofree scope var position fixes 2020-07-16 20:06:50 +10:00
Alexander Medvednikov 6245876806 vweb: ip() 2020-07-16 00:48:14 +02:00
Nick Treleaven f5e6a83a05
builtin: unsafe vlib pointer indexing (#5836) 2020-07-15 21:56:50 +02:00
Alexander Medvednikov c563168d69 rand: string() 2020-07-15 21:36:09 +02:00
Nick Treleaven 4b0ded0475
checker: Warn instead of error for pointer arithmetic (#5840) 2020-07-15 19:59:39 +02:00
Delyan Angelov 1873a0cb6d builder: pass -g3 for -cg 2020-07-15 12:46:24 +03:00
Enzo 2ee8f93d60
parser: duplicate method declaration on interface (#5825) 2020-07-15 10:23:21 +02:00
Uwe Krüger 8df6e59678
sync: add semaphores (#5831) 2020-07-15 10:22:33 +02:00
Delyan Angelov cf7d03bda6 builtin: implement array.pop() 2020-07-14 20:01:39 +03:00
Enzo de0b96f52c
parser: fail when interface name is duplicated (#5828) 2020-07-14 18:52:51 +02:00
Enzo d301611de7
fmt: interface decl fixes (#5829) 2020-07-14 18:52:28 +02:00
Alexander Medvednikov 60ce938149 builder: make builtin, strconv, os work with `v build-module` 2020-07-14 18:27:14 +02:00
Delyan Angelov 5ad957f270 vfmt: fix formatting for `x, _ := f()` 2020-07-14 19:11:16 +03:00
Delyan Angelov e23925f2be pref: add -show-timings option 2020-07-14 18:47:40 +03:00
Alexander Medvednikov 06f5279f77 checker: fix multi_const_field_name_duplicate test 2020-07-14 17:44:08 +02:00
Alexander Medvednikov 899c69caf1 checker: fix dup const test 2020-07-14 17:24:08 +02:00
Enzo 880c8e4dc9
cgen: else if guard (#5822) 2020-07-14 17:19:55 +02:00
Alexander Medvednikov d33fbe4547 checker: format + fix duplicate const error 2020-07-14 17:18:10 +02:00
Swastik Baranwal c3bdacbf04
doc: add info about _ separator in literals (#5823) 2020-07-14 15:46:13 +02:00
Alexander Medvednikov c3ec5323f0 autofree: move new scope free behind -experimental for now 2020-07-14 15:30:55 +02:00
Alexander Medvednikov 7231b467a6 autofree: fix stmts() free 2020-07-14 14:50:51 +02:00
Alexander Medvednikov 1338e7fce2 autofree: free in each scope 2020-07-14 13:56:52 +02:00
Delyan Angelov 3703ade9f1 doc: add a Numbers section. Add tests for `0b` prefixed integer literals too 2020-07-14 11:10:43 +03:00
Alexander Medvednikov 361d12bf43 pref: -experimental flag 2020-07-14 00:32:33 +02:00
ka-weihe df45488e09
cgen: fix warnings (#5820) 2020-07-14 00:16:31 +02:00
joe-conigliaro 042add0e7f
ast: fix typo in comment 2020-07-14 04:04:16 +10:00
joe-conigliaro dd06d90466
checker/gen: temp hack for struct fn type field (fixes ui) 2020-07-14 03:59:00 +10:00
Alexander Medvednikov 1c682d7b89 cgen/autofree: sb.writeln() optimization fixes 2020-07-13 18:59:47 +02:00
Delyan Angelov e5a5e76a30 cgen: fix for passing functions as voidptr args 2020-07-13 19:45:13 +03:00
Delyan Angelov e3f7681e89 smtp_test: use `assert false return`, remove for loop 2020-07-13 18:52:46 +03:00
Delyan Angelov 97d01a5487 test: enable passing username/password through env vars to smtp_test.v 2020-07-13 18:22:36 +03:00
spaceface777 e9c144bf98
smtp: rewrite module api (#5819) 2020-07-13 16:41:23 +02:00
Delyan Angelov a565848dfa tests: remove duplicate test autolock_array_1_test.v 2020-07-13 15:02:44 +03:00
Uwe Krüger 6e6010d198
checker, cgen: implement auto-lock for `a[i]++`, `a[i]--` (#5817) 2020-07-13 15:01:32 +03:00
Delyan Angelov b04fff272e tests: move autolock_array_1.v to autolock_array_1_test.v 2020-07-13 14:21:44 +03:00
Uwe Krüger aa364ddaca
checker, cgen: checks for shared/lock, first autolock (#5815) 2020-07-13 12:19:28 +02:00
Delyan Angelov 1baa7ef806 os: implement os.write_file_array and os.read_file_array . 2020-07-13 10:46:37 +03:00
Alexander Medvednikov db2346069a gg: always use stb_truetype for now 2020-07-13 01:02:50 +02:00
Delyan Angelov f1fdafcdff pref: add -check-syntax for just parsing files, without checking them 2020-07-12 22:44:38 +03:00
Swastik Baranwal b5b5176f9b
string: add filter method (#5812) 2020-07-12 21:07:28 +03:00
Nedim 8674991bac
smtp: add mail sent confirmation and tests for smtp lib (#5813) 2020-07-12 20:42:11 +03:00
Takeru Tanaka f61a7bf3df
os,rand.mt19937: fix broken links in code comments (#5806) 2020-07-12 16:18:52 +03:00
Delyan Angelov d28a1042a0 net.http, net.websocket: allow importing both in the same app 2020-07-12 15:21:40 +03:00
Delyan Angelov 53ee5eb043 vfmt: fix removing cmod. in []Enum return values 2020-07-12 14:40:50 +03:00
Nick Treleaven 53023c1ca9
all: add UnsafeExpr (#5793) 2020-07-12 12:58:33 +02:00
Alexander Medvednikov cad816a19d gg: text_height() 2020-07-12 12:48:42 +02:00
Delyan Angelov 9c43d36513 parser,checker: add `-d trace_parser`, `-d trace_checker` 2020-07-12 12:56:01 +03:00
Delyan Angelov 23c8e1f06d checker: add support for `-d debug_stmts` to ease debugging checker panics 2020-07-12 12:04:39 +03:00
Alexander Medvednikov 40da32a141 gg: text_width() 2020-07-12 01:46:21 +02:00
Nedim 25c397f921
net.smtp: remove credentials from the test (#5808) 2020-07-11 21:19:36 +02:00
Nedim 549c4f54cd
net: implementation of SMTP RFC 2821 (#5807) 2020-07-11 21:05:24 +02:00
Delyan Angelov c891014c77 scanner: reduce memory, increase speed for long commented sections 2020-07-11 21:27:39 +03:00
Delyan Angelov 022cc72740 scanner: parse multiple comments and long strings without a stackoverflow 2020-07-11 20:52:08 +03:00
Alexander Medvednikov a2cb01e16a parser: parse _x64.v files only with -x64 2020-07-11 19:03:59 +02:00
Alexander Medvednikov d4dd5645fe parser: remove strconv import 2020-07-11 18:53:50 +02:00
Delyan Angelov 498c8cfc8e builtin: skip print_backtraces on panics with tcc, it does it automatically 2020-07-11 17:51:06 +03:00
yuyi 9b4c81e85f
checker: check missing return values in functions (#5803) 2020-07-11 16:30:49 +02:00
Delyan Angelov 37d739684c checker: prevent string(byte), suggest byte.str() instead 2020-07-11 17:09:22 +03:00
ka-weihe ae349ca6ba
cgen: fix all -Wmissing-variable-declarations (#5802) 2020-07-11 15:37:40 +02:00
Alexander Medvednikov 59df2db4e0 ci: disable C++ test for now 2020-07-11 15:36:08 +02:00
Delyan Angelov 26768e8514 vfmt: strip `current_module.` in fn args more robustly 2020-07-11 16:09:20 +03:00
Delyan Angelov b55f84c0a8 vfmt: turn off module is imported but never used for vfmt 2020-07-11 15:03:37 +03:00
Delyan Angelov 7c0a298701 vfmt: fix crash when a .v file contains only imports 2020-07-11 14:54:55 +03:00
Delyan Angelov 3aeca70970 benchmark: update the example in the README.md 2020-07-11 14:54:55 +03:00
Alexander Medvednikov ab3c1f2a08 prealloc: skip frees for now 2020-07-11 13:22:18 +02:00
yuyi fae601fe39
array: add `reverse_in_place` for performance (#5798) 2020-07-11 13:17:11 +02:00
Alexander Medvednikov b92ce38593 os: fix v_realloc call on windows 2020-07-11 12:45:22 +02:00
Alexander Medvednikov 2e275731a3 websocket: fix compilation 2020-07-11 12:41:37 +02:00
Alexander Medvednikov 649821be4c all: use v_realloc 2020-07-11 12:37:54 +02:00
Alexander Medvednikov 2a696cb837 vet: prohibit spaces before `)` 2020-07-11 12:14:19 +02:00
Alexander Medvednikov d94a02ba79 strings: builder.writeln() optimization 2020-07-11 12:03:24 +02:00
Alexander Medvednikov 549d7a487d tests: fix scanner_test.v 2020-07-11 11:51:58 +02:00
Alexander Medvednikov d4d552fb00 vet: prohibit spaces after `(` 2020-07-11 11:41:39 +02:00
Alexander Medvednikov a1073105e1 all: re-enable -prealloc 2020-07-11 11:25:56 +02:00
Delyan Angelov 006d260d20 vfmt: keep `vproto.Name`, in module `proto` in struct inits too 2020-07-11 02:42:57 +03:00
Uwe Krüger 646df49c74
builtin: fix string.hash method for `gcc -O2` (#5794) 2020-07-11 01:18:52 +03:00
Delyan Angelov 7248d8422e vfmt: keep `vproto.Name`, when current module is `proto` 2020-07-11 00:59:19 +03:00
pancake 7d6ba2d07d
checker: add error when interface i, without a .str() method, have i.str() called (#5788) 2020-07-10 22:47:29 +03:00
Delyan Angelov 2fb5c91f4d scanner: remove error check for embedded \x00 chars in c'literals' 2020-07-10 21:42:03 +03:00
yuyi bf14e666ea
cgen: add `gen_map_equality_fn` to compare maps (#5770) 2020-07-10 18:08:17 +02:00
yuyi 0c9c66dd6b
cgen: fix mutable array arguments (#5769) 2020-07-10 18:04:51 +02:00
Emily Hudson 7488dd829d
all: _allow_multiple_values enum attribute (#5772) 2020-07-10 16:43:02 +02:00
Delyan Angelov 88946a34bb checker: limit showing too many unhandled match cases 2020-07-10 15:49:02 +03:00
penguindark e85c1fb762
utf8: bug fix in get_uchar (#5775) 2020-07-10 14:44:40 +02:00
Swastik Baranwal 9839b0eb7f
parser: handle `a,b += 1,1` (fix #5735) (#5783) 2020-07-10 13:59:17 +02:00
Delyan Angelov 75b7b9564a builder: show the contents of the C .rsp file on -showcc 2020-07-10 13:07:20 +03:00
Delyan Angelov ca9790a71f vweb: ensure the tcp connection is always closed at the end of the response 2020-07-10 10:49:39 +03:00
Delyan Angelov d3e676bdc1 orm: use errcode comparisons, instead of strcmp(sqlite3_errmsg,msg) 2020-07-10 10:14:30 +03:00
Uwe Krüger 581603f2bd
fmt: make formatter know about new keywords `shared`, `rlock` (#5779) 2020-07-09 22:41:45 +02:00
Daniel Däschle fb927dab60
checker: check all branches for return (#5763) 2020-07-09 22:38:43 +02:00
Uwe Krüger 194ecda829
fmt: array_init: use line breaks of first elements in every hierarchy (#5777) 2020-07-09 22:36:49 +02:00
Lukas Neubert 14d83c8457
orm: fix invalid `no more rows available` error (#5774) 2020-07-09 22:36:01 +02:00
Uwe Krüger e47ad33af6
fmt: format array elements line-by-line when nl after `[` (#5776) 2020-07-09 19:47:12 +02:00
yuyi 31ac20876c
cgen: minor formatting of `struct_init` (#5768) 2020-07-09 17:25:48 +02:00
Louis Schmieder 3792e17885
vweb: fix routing for 0 params (#5773) 2020-07-09 17:16:02 +02:00
Daniel Däschle c5dc1a33b6
all: remove `it` smartcast and replace with original variable name (#5764) 2020-07-09 17:14:14 +02:00
Alexander Medvednikov 9511b7d0a1 cc: do not use -ldl in cross compiling for now 2020-07-09 12:29:49 +02:00
Alexander Medvednikov 8c338a7c3b cc: format and fix linuxroot download 2020-07-09 12:26:15 +02:00
Alexander Medvednikov dfa29b6e4d fast: fix 1mil.v test 2020-07-09 11:56:31 +02:00
Delyan Angelov 73a259496e tests: support `VTEST_ONLY=fn_,match_ ./v test-fixed` and in compiler_test.v 2020-07-09 10:47:16 +03:00
Delyan Angelov ce31c4c03e tests: support `VTEST_ONLY=parser ./v vlib/v/compiler_errors_test.v` 2020-07-09 10:27:31 +03:00
Louis Schmieder 373aa3dbc8
vweb: router: fix trailing / (#5760) 2020-07-08 22:15:37 +02:00
Alexander Medvednikov b8d762df97 gg: use D3D and stb_truetype on Windows; 2020-07-08 21:43:27 +02:00
Tomas Hellström 2790890bc2
ci: use pre built docker containers for musl (#5759) 2020-07-08 21:30:57 +03:00
Daniel Däschle c0fa31e75a
cgen: if smartcast part 3 (#5755) 2020-07-08 19:14:47 +02:00
Alexander Medvednikov 03b76d19f1 repl: make the info message a bit smaller 2020-07-08 17:22:38 +02:00
Daniel Däschle e7cd496c31
parser: smartcast fix (#5756) 2020-07-08 16:08:44 +02:00
Nick Treleaven f834276803
doc: struct literals (#5726) 2020-07-08 16:02:35 +02:00
yuyi 64e9bdc213
parser: fix non-void optional fn missing return value (fix #5736) (#5741) 2020-07-08 16:01:17 +02:00
Daniel Däschle 5ea17ad2d4
all: if smartcast part 2 (#5754) 2020-07-08 15:46:58 +02:00
Louis Schmieder 7ad03e9d6a
vweb: simplify router (#5751) 2020-07-08 15:22:03 +02:00
Daniel Däschle b62bf59c21
all: if-is smartcast part 1 (#5730) 2020-07-08 15:17:28 +02:00
Emily Hudson 3b0dfd9ae1
cc: use @response files to avoid command line length limits (#5750) 2020-07-08 15:50:17 +03:00
Delyan Angelov 69d3c3f596 cgen: sort const inits/cleanups topologically, skip calling non `fn init(){}` fns 2020-07-08 14:28:58 +03:00
Alexander Medvednikov 2425c05c42 Revert "cgen: sort const inits/cleanups topologically too"
This reverts commit 38000f8622.
2020-07-08 12:56:56 +02:00
Uwe Krüger 88248b1b66
cgen: add support for shared arrays (#5721) 2020-07-08 11:05:43 +02:00
Delyan Angelov 38000f8622 cgen: sort const inits/cleanups topologically too 2020-07-08 11:22:30 +03:00
Ruofan XU 9c87ace153
cgen: fix cross assign for functions (#5734) 2020-07-08 09:17:26 +03:00
Louis Schmieder 3bb1d24dad
parser: add template path by fn name for vweb (#5737) 2020-07-08 09:12:57 +03:00
yuyi bd16dd9fdf
cgen: fix assert `sumtype is` (#5739) 2020-07-08 09:05:01 +03:00
yuyi b0ce66d141
gen: fix generated `defer` (#5717) 2020-07-08 08:39:11 +03:00
Alexander Medvednikov 246e7e8464 vweb: form error 2020-07-07 21:35:59 +02:00
Emily Hudson cdfb578565
builder: cache msvc (#5733) 2020-07-07 20:35:49 +02:00
joe-conigliaro c99200918e
checker: fix if 2020-07-08 01:42:42 +10:00
joe-conigliaro 2480cce1ed
checker: optimize if & fix typo 2020-07-08 01:36:48 +10:00
Alexander Medvednikov e0fcd565d5 gg: fix default text size 2020-07-07 17:33:24 +02:00
joe-conigliaro 5fd5e558ae
parser/checker/gen: anon fn direct call with args 2020-07-08 01:10:39 +10:00
Louis Schmieder f8a89e3f8f
gg: fix text rendering (#5727) 2020-07-07 17:09:35 +02:00
Louis Schmieder 2a7a6fa1eb
orm: add delete stmt (#5725) 2020-07-07 16:55:32 +02:00
Alexander Medvednikov 4d7d1eb0c4 http: referer() 2020-07-07 14:37:43 +02:00
yuyi dc24327b1e
cgen: minor optionals fix (#5714) 2020-07-07 14:21:02 +02:00
Tarang11 68e01d87be
checker: fix multi assignment for multiple fns (#5716) 2020-07-07 14:18:51 +02:00
Louis Schmieder d2d4ea42ce
vweb: add url query (#5719) 2020-07-07 13:46:57 +02:00
yuyi 4490cd2e8a
os: replace panics with optionals (#5718) 2020-07-07 12:41:42 +02:00
Alexander Medvednikov a6450e8e98 vweb: fix and simplify routing 2020-07-07 12:35:45 +02:00
Uwe Krüger ef02373061
all: remove `rwshared` keyword, make its semantics default for `shared` (#5710) 2020-07-07 01:57:31 +02:00
Alexander Medvednikov 013c0e6e16 gg: make FT private 2020-07-06 21:40:24 +02:00
Alexander Medvednikov 48f1f814d2 gg: minor fixes 2020-07-06 20:40:54 +02:00
Alexander Medvednikov 0ed8199da2 gg: merge ft module 2020-07-06 20:29:09 +02:00
yuyi 43c8726c37
cgen: minor optimization of comptime (#5705) 2020-07-06 19:58:21 +02:00
Alexander Medvednikov 1f3d7d393e gg: simplify text rendering 2020-07-06 19:45:00 +02:00
Leah Lundqvist cfa8e0a81a
js: |0 -> parseInt (#5703) 2020-07-06 18:09:54 +02:00
joe-conigliaro 9a4d989188
test: move sumtype int cast test into fn & test var 2020-07-06 23:39:51 +10:00
Leah Lundqvist 659aa8db3c
js: fix int division (#5701) 2020-07-06 15:24:24 +02:00
Delyan Angelov 6b2777e681 compiler: support VTMP; tests: delete .tmp.c files on successfull tests 2020-07-06 15:08:46 +03:00
joe-conigliaro d82e6c9cd9
checker/table: fix sumtype cast from int literal 2020-07-06 21:27:48 +10:00
Delyan Angelov 25771a1afe compiler: remove -keepc option (it is now always on) 2020-07-06 13:42:18 +03:00
yuyi c94038af89
cgen: improve generated code formatting (#5693) 2020-07-06 12:33:57 +02:00
yuyi fc7237be7b
checker: fix cast to sum type (fix #5690) (#5692) 2020-07-06 12:32:59 +02:00
yuyi f41edef4c6
checker: add `1/0x0 1/0b0..` division by zero check (#5694) 2020-07-06 12:32:00 +02:00
Uwe Krüger c3614c0e38
cgen, sync: implement separate read/write locks for `rwshared` types (#5687) 2020-07-05 22:53:28 +02:00
Louis Schmieder 3cd9e2cab7
vweb: fix index (#5682) 2020-07-05 22:05:58 +02:00
spaceface777 d0e321c8a3
fmt: allow parsing files without `fn main()` (#5681) 2020-07-05 20:53:01 +02:00
KrisChambers 8d035a446a
Fix v/parser: Failure to parse structs with fields typed as anonymous functions returning having an optional void (`?`) return type. (#5684)
* Handle optional void return type in function types in struct fields.

* Add more testing for optional return types in struct fields.

* Move language parsing into it's own function

* Fix issue caused by not setting typ.

* Fix test for structs containing anon fn with optional void return types
2020-07-05 19:29:39 +02:00
Alexander Medvednikov f6ab63f3a0 stbi: remove opengl call 2020-07-05 19:28:31 +02:00
Delyan Angelov 1416c70e73 net.websocket: fix building client.v 2020-07-05 18:44:39 +03:00
joe-conigliaro 4e66728477
checker/table: rearrange sumtype check fns 2020-07-06 00:53:56 +10:00
Alexander Medvednikov 36183660e6 remove oldgg, gl, glfw, freetype from vlib now that we have the new sokol based `gg` 2020-07-05 16:44:28 +02:00
yuyi 96bd4e8794
parser: fix type detection in `match` (#5679) 2020-07-05 16:35:45 +02:00
joe-conigliaro 9d7f1a236a
checker/gen: fix nested sumtype matching 2020-07-06 00:25:04 +10:00
yuyi 34a24eaa4e
checker: validate loop var names (#5677) 2020-07-05 15:27:37 +02:00
yuyi cda9240632
cgen: add unsafe block braces and comments in generated code (#5674) 2020-07-05 13:32:39 +02:00
Delyan Angelov 770ffa1ebd crypto.rand: fix linux/solaris rand.read() compilation 2020-07-05 01:33:43 +03:00
Alexander Medvednikov 188bad4f38 vfmt: handle string attrs 2020-07-04 23:38:28 +02:00
Enzo 7778cbe9f5
all: make `os` global in scripts (#5669) 2020-07-04 23:37:41 +02:00
yuyi 11866fb017
cgen: improve code formatting of `array_init` (#5663) 2020-07-04 21:49:04 +02:00
Delyan Angelov f374e37b61 checker: add details about a non matching functional argument 2020-07-04 22:37:06 +03:00
Delyan Angelov 108913c69e checker: handle error token positions with negative pos.len 2020-07-04 21:55:14 +03:00
Delyan Angelov 0637feb382 checker: use a more readable error message for non matching fn args 2020-07-04 21:23:22 +03:00
Delyan Angelov db4a9d6b59 checker: stricter check for function type signatures 2020-07-04 21:01:08 +03:00
Ryan Willis bb6ab185c3
ci: fix periodic integration tests (#5666) 2020-07-04 19:52:25 +02:00
Daniel Däschle 0626ac2901
checker: fix position of infix expr error 2020-07-04 18:52:40 +02:00
div72 be04de98bb
checker: check for enum value duplicates/overflow (#5659) 2020-07-04 18:28:01 +03:00
Delyan Angelov b018381f10 vfmt: fix `as var` in `match expr as var {}` 2020-07-04 16:46:46 +03:00
Delyan Angelov fe50bdc164 vfmt: ran `v vet vlib/v/` and fix spaces 2020-07-04 16:19:54 +03:00
Delyan Angelov d2a2db7bff vfmt: format scanner.v 2020-07-04 16:14:30 +03:00
Delyan Angelov 5b93b4f37d vfmt: allow multiple comments after if branches 2020-07-04 16:13:58 +03:00
Delyan Angelov 68af46402e vvet: allow passing many files, improve specifity for emacs goto error 2020-07-04 15:29:00 +03:00
Delyan Angelov dc3101384f checker: cleanup indentation 2020-07-04 14:45:11 +03:00
Delyan Angelov 48029fa9ad checker: check .str() calls too 2020-07-04 14:43:01 +03:00
Delyan Angelov 35431d457b checker: add check for strict .str() method signature 2020-07-04 14:14:43 +03:00
Delyan Angelov 4403c76406 vfmt: print `or { }` on a single line 2020-07-04 14:14:43 +03:00
Delyan Angelov bae9ed0350 os: fix file.writeln(s) too, where s contains `0` bytes 2020-07-04 14:14:43 +03:00
Uwe Krüger 3b067f5f85
all: experimental locked concurrency support, part 1 (#5637) 2020-07-04 12:44:25 +02:00
yuyi 27149ba8bc
cgen: fix `in` in mutable arrays (#5647) 2020-07-04 12:12:44 +02:00
Ruofan XU 765ffa37eb
cgen: fix == for mut arraay args (#5648) 2020-07-04 11:36:33 +02:00
joe-conigliaro da98c3c135
checker: use new match syntax everywhere 2020-07-04 19:23:41 +10:00
joe-conigliaro cdd4a7c880
checker: only check ForInStmt.high once 2020-07-04 19:10:37 +10:00
div72 95696559b7
os: fix early termination when saving binary (#5646) 2020-07-04 01:48:01 +02:00
Ruofan XU 37f31da6c9
parser: minor simplification (#5645) 2020-07-03 23:22:43 +02:00
Alexander Medvednikov 3d3549d65a Revert "parser: advanced division by zero check (#5629)"
This reverts commit f03688e443.
2020-07-03 22:30:51 +02:00
Alexander Medvednikov e9e437ce05 repl: show short version 2020-07-03 22:30:34 +02:00
Alexander Medvednikov 244d61f8d0 vweb: fix a route matching bug 2020-07-03 22:00:17 +02:00
yuyi 67e85fa9dd
cgen: fix indent in `for_in_string` (#5631) 2020-07-03 18:10:45 +02:00
yuyi 61213263cd
cgen: remove extra `\n` in map.get (#5630) 2020-07-03 18:10:29 +02:00
Nick Treleaven 0b49e4db1c
v/checker.v: disallow pointer arithmetic for InfixExpr outside unsafe {} (#5640) 2020-07-03 18:10:10 +02:00
Ruofan XU a2395ff3e8
cgen: fix mut map with relation op in fn (#5642) 2020-07-03 18:07:11 +02:00
yuyi 9e949622d3
vrepl: pre-imported common modules (#5643) 2020-07-03 18:06:36 +02:00
Alexander Medvednikov 2281163efd vweb: fix a routing bug 2020-07-03 17:50:48 +02:00
Tom Leen 51410fdb6d
vweb: add .txt and .md mime types (#5641) 2020-07-03 17:17:25 +02:00
Delyan Angelov 8adaf4efd4 cgen: allow `-printfn main` for _test.v files too 2020-07-03 17:53:48 +03:00
Delyan Angelov 652380c5fd cgen: fix `-printfn main` 2020-07-03 17:42:59 +03:00
yuyi dff385cb37
cgen: fix map_in mut (#5638) 2020-07-03 17:33:53 +03:00
Delyan Angelov df2749dd50 vfmt: fix indent level of commented match branches 2020-07-03 17:16:20 +03:00
Alexander Medvednikov b7175b54eb vweb: ['/:arg1/:arg2/action'] attribute 2020-07-03 15:10:39 +02:00
yuyi f03688e443
parser: advanced division by zero check (#5629) 2020-07-03 11:28:00 +02:00
yuyi 1efbb83060
cgen: add space before `else` in match (#5632) 2020-07-03 11:23:23 +02:00
Delyan Angelov 3c432f5e07 orm: require `order by` instead of just `order` 2020-07-02 23:37:30 +03:00
Delyan Angelov 7004f74b71 orm: fix `LIMIT var` as well 2020-07-02 23:29:29 +03:00
Louis Schmieder 421b6d4a80
orm: fix offset when order is given too (#5625) 2020-07-02 23:22:52 +03:00
Delyan Angelov 5813d2bf72 net.socket: add s.peer_ip() 2020-07-02 23:02:56 +03:00
Louis Schmieder b89cbf3224
orm: add support for ordering (#5624) 2020-07-02 20:29:22 +03:00
yuyi 68ac8fde26
tests: add mixed and complex types tests for cross assign (#5622) 2020-07-02 18:20:03 +02:00
Delyan Angelov 5b900056f3 vfmt: add _keep.vv tests for the recent fixes, to prevent regressions 2020-07-02 17:50:21 +03:00
Delyan Angelov d809bbb715 vfmt: fix enum field comments 2020-07-02 17:39:56 +03:00
Delyan Angelov 132170f54c vfmt: handle comments in enum Abc{} and after match branches 2020-07-02 16:51:09 +03:00
Delyan Angelov 05e11f6336 vfmt: fix `for x; y; i++ \n {}` 2020-07-02 15:30:06 +03:00
Delyan Angelov 37d51e8d74 vfmt: keep top level comments on their own lines 2020-07-02 15:21:09 +03:00
Delyan Angelov 29943d7a91 vfmt: fix eating C. from C.sapp_desc{} and adding & to &&&App() 2020-07-02 15:06:35 +03:00
Tim Basel 703b060d09
cli: add flag/cmd sorting + get_all_found (#5615) 2020-07-02 11:10:03 +02:00
yuyi 6cbc0e84f0
cgen: fix cross assign with mutable args (fix #5609 #5610 #5611) (#5614) 2020-07-02 11:09:26 +02:00
yuyi c21527d3c6
cgen: fix indent in multi_return (#5617) 2020-07-02 11:08:27 +02:00
yuyi e904732554
cgen: remove an extra \n in for loops (#5618) 2020-07-02 11:03:40 +02:00
Uwe Krüger 6c022db786
scanner: fix string interpolation for '$a.b().c' (#5612) 2020-07-02 00:02:59 +02:00
Delyan Angelov 4e34edfa81 vweb: allow quoting @css/@js resources with both ' and " 2020-07-01 22:03:30 +03:00
Alexander Medvednikov 2716a37916 ci: fix v vet call; fmt: fix SizeOf 2020-07-01 20:07:33 +02:00
Alexander Medvednikov 66f36f6dcc cgen: fix gen_cross_tmp_variable, part 2 2020-07-01 19:39:41 +02:00
Alexander Medvednikov 625ed030ef cgen: fix getn_cross_tmp_variable 2020-07-01 19:19:49 +02:00
Alexander Medvednikov dbcb23ddc8 ci: run v vet on cgen and ast 2020-07-01 19:07:19 +02:00
Alexander Medvednikov da99868a28 ci: run v vet vlib/v/parser 2020-07-01 18:57:14 +02:00
yuyi 40a393926d
cgen: fix cross assign of struct fields (#5606) 2020-07-01 18:43:14 +02:00
Delyan Angelov 56ae814cbc gen: fix js main entry point generation 2020-07-01 19:37:24 +03:00
Alexander Medvednikov 5de0f944bd vweb: fix a template leak 2020-07-01 17:04:30 +02:00
Alexander Medvednikov e78dc4d682 strings: fix a leak in builder 2020-07-01 16:52:04 +02:00
Delyan Angelov d43722fa85 vweb: fix compiling templates containing ' 2020-07-01 17:44:26 +03:00
yuyi 2f614ad79f
parser: optimize cross assign using expr.str() (#5604) 2020-07-01 16:43:13 +02:00
Alexander Medvednikov 013a4fc0f6 cgen: do not free strings in const decls 2020-07-01 16:40:04 +02:00
Alexander Medvednikov 6dad3cc018 cgen: fix a leak 2020-07-01 15:45:02 +02:00
Nick Treleaven e7339fec15
all: disallow pointer arithmetic for AssignStmt, PostfixExpr outside unsafe{} (#5581) 2020-07-01 14:50:17 +02:00
Alexander Medvednikov 5eb76606ae cgen: store return vals in tmp vars with -autofree 2020-07-01 14:34:14 +02:00
yuyi 92eea7f95a
cgen: fix map cross assign (#5603) 2020-07-01 14:03:12 +02:00
yuyi 6c5b638202
parser: fix array cross assign (fix #5577) (#5591) 2020-07-01 12:11:03 +02:00
Tim Basel 7386adfc99
cli: help/version abbrev optional + fix various inconsistencies (#5586) 2020-07-01 10:54:34 +02:00
Delyan Angelov ca1f47a742 cgen: fix `for k,_ in map { x << k }` 2020-07-01 11:49:02 +03:00
Delyan Angelov cfd71560fa cgen: fix << for `mut a []Type` args 2020-07-01 09:21:50 +03:00
Delyan Angelov 78e1127d99
cgen: treat the main module like any other v module 2020-07-01 00:53:53 +02:00
Alexander Medvednikov 34ddc9240e tutorials: web blog fixes 2020-06-30 21:04:00 +02:00
Delyan Angelov 3fed6ca050 cgen: comment out g_str_buf for now 2020-06-30 18:32:04 +03:00
Delyan Angelov 2fd960f12c builtin: implement a double free detection for v strings 2020-06-30 18:32:04 +03:00
nyaascii f10d2bb75f
string: fix trim_prefix and trim_suffix methods (#5572) 2020-06-30 15:44:53 +02:00
Delyan Angelov af56b01a41 cgen: parametrize g_str_buf size by V_STRBUF_MB; free in _vcleanup() 2020-06-30 16:31:02 +03:00
Louis Schmieder f3010cbfb2
http: add post function with json as payload (#5580) 2020-06-30 14:36:11 +02:00
Uwe Krüger 8a46911725
checker: check if mut function arg is declared as mut (#5579) 2020-06-30 14:19:22 +02:00
yuyi 61b8c0b699
cgen: change `i++` to `++i` in `for` 2020-06-30 14:14:48 +02:00
yuyi 628f13f1c8
cgen: minor optimization of `index_expr()` 2020-06-30 14:11:59 +02:00
joe-conigliaro a3086a2ef3 cgen: optimize generic struct name replacement (temp solution) 2020-06-30 13:45:52 +10:00
joe-conigliaro 73da3c9e4c
generic structs: better naming & comments 2020-06-30 09:22:15 +10:00
Louis Schmieder 616b07204d
vweb: add cookies with expire date 2020-06-29 21:14:36 +02:00
joe-conigliaro 7565fe595b
builder: generic struct fix - derive field type 2020-06-30 04:37:07 +10:00
nyaascii 3436ae99fc
picoev: add html() content-type method 2020-06-29 20:25:16 +02:00
Alexander Medvednikov 77e56aa3f9 cgen: fix string frees in calls 2020-06-29 20:20:35 +02:00
joe-conigliaro ab37dcaa9c
generic structs: initial implementation 2020-06-29 20:09:09 +02:00
Tim Basel 76176eddab
cli: calculate indent based on name length 2020-06-29 17:59:55 +02:00
Alexander Medvednikov 5b98cde811 cgen: free temp strings 2020-06-29 17:47:12 +02:00
yuyi 9d845262b7
parser: fix module type cast 2020-06-29 17:15:40 +02:00
yuyi c69ef876c5
os: remove `return none` in `fn()?` 2020-06-29 15:06:26 +02:00
Tim Basel 4a1ce3e1f5
cli: add pretty print for multiline descriptions 2020-06-29 14:47:20 +02:00
Ned Palacios 025652bb78
vdoc: dd .vdocignore + minor fixes 2020-06-29 11:03:09 +02:00
yuyi c588bdee5a
cgen: fix fn()? return 2020-06-29 11:02:40 +02:00
Delyan Angelov 1ba5996404 parser: fix interface functions with no params (ui examples) 2020-06-29 10:53:12 +03:00
Delyan Angelov b6e6cde3e8 parser: disallow fns with type only args and a body 2020-06-29 10:21:01 +03:00
ka-weihe 1b0b4be287
atof: fix is_space (#5555) 2020-06-29 09:23:51 +03:00
Delyan Angelov 8f1e8a9dde orm: cleanup test (put structs at top) 2020-06-28 22:10:49 +03:00
Alexander Medvednikov 3f59f23427 vweb: fix a leak 2020-06-28 19:55:53 +02:00
Alexander Medvednikov d2c508e9a9 checker: clean up 2020-06-28 19:44:41 +02:00
Alexander Medvednikov 219ecd18b5 orm: handle unknown tbale names 2020-06-28 19:01:30 +02:00
Alexander Medvednikov 3dea698c93 checker: do not register pseudo variables in sql queries 2020-06-28 18:56:11 +02:00
Alexander Medvednikov 9cbf572561 tests: fix a typo 2020-06-28 15:59:05 +02:00
Alexander Medvednikov 9feaff3464 x64: fix tests 2020-06-28 14:05:18 +02:00
Alexander Medvednikov 0138f46797 vweb: fix a leak 2020-06-28 13:56:38 +02:00
yuyi 05de780219
map: add map['aa']+='str' test 2020-06-28 13:34:59 +02:00
Delyan Angelov 9814497b91 vfmt: fix eating of sql x { ... limit 1 } 2020-06-28 14:27:53 +03:00
Delyan Angelov fa867578bc vfmt: fix segfault in update where the struct is not yet known 2020-06-28 14:07:28 +03:00
Delyan Angelov 0661273aad vfmt: add support for sql x {} expressions and statements 2020-06-28 13:36:21 +03:00
yuyi b924c6c4a9
cgen: minor opitimize `infix_expr` (#5547) 2020-06-28 11:35:49 +02:00
Delyan Angelov 13783aea70 vfmt: support for 'VDIFF_OPTIONS=-w' 2020-06-28 12:35:05 +03:00
yuyi d9409006fa
cgen: fix a[0]+='str' 2020-06-28 11:16:16 +02:00
Alexander Medvednikov e666209fe2 vweb: set_content_type() 2020-06-27 23:22:41 +02:00
Emily Hudson c84bafbdae
vlib,cgen: cleanup array inits using `.repeat() instead of new init syntax 2020-06-27 21:46:04 +02:00
Delyan Angelov 1e5a53abb3 sqlite: support for thirdparty/sqlite amalgamation install 2020-06-27 21:23:26 +03:00
Emily Hudson 1848eb0973
cgen,map: fix leaks in `keys()` and `for x in y` 2020-06-27 17:00:27 +02:00
Alexander Medvednikov 190f970544 checker: handle limit and offset 2020-06-27 16:41:29 +02:00
Alexander Medvednikov 3672cfad0b orm: offset test 2020-06-27 16:25:25 +02:00
Alexander Medvednikov f990a0b3d3 orm: offset 2020-06-27 16:22:41 +02:00
Alexander Medvednikov f073ffa4ad orm: limit 2020-06-27 16:19:12 +02:00
Louis Schmieder f8f2fa246e
orm: fix sql table names 2020-06-27 15:14:53 +02:00
Alexander Medvednikov 6a335c4416 fmt: run on parser/assign.v 2020-06-27 15:00:28 +02:00
Alexander Medvednikov 2bfe8e5153 vet: a basic version that just checks indentation for now 2020-06-27 14:50:07 +02:00
yuyi 58763ff299
map: remove unused `get2()` and `get3()` 2020-06-27 13:58:07 +02:00
Alexander Medvednikov 02b846aa72 vweb: fix json() and text() results 2020-06-27 13:56:15 +02:00
Uwe Krüger 8fe70a24a8
checker: forbid non-reference mut arg or receiver of go function 2020-06-26 23:31:38 +02:00
Tomas Hellström 993cd1467b
sync: own submodule for atomic 2020-06-26 23:31:03 +02:00
Alexander Medvednikov d52f1da7a2 orm: handle missing rows 2020-06-26 20:38:21 +02:00
Tomas Hellström def99bed02
sync: atomic counters 2020-06-26 20:04:17 +02:00
Emily Hudson 09236a438b
msvc: unique names for pdb files, remove test job limit 2020-06-26 17:16:15 +02:00
Delyan Angelov c83c5e7c61 os: use `return none` in functions returning `?` 2020-06-26 17:57:02 +03:00
joe-conigliaro 2440ffd013
cgen: always unwrap generic type. fix `x := &T{}` 2020-06-27 00:31:36 +10:00
Delyan Angelov 951f30853a os: fix rmdir on windows 2020-06-26 17:24:36 +03:00
Daniel Däschle 8903f6e0c0
tmpl: add docs for variables 2020-06-26 15:02:49 +02:00
Lukas Neubert 692ca8ac83
os: make all rm functions return an optional 2020-06-26 15:01:10 +02:00
jhuntos 20884c9576
pg: call PQclean in rows() 2020-06-26 11:55:59 +02:00
joe-conigliaro 202d479bad checker: fix typo in check_types.v 2020-06-26 15:05:07 +10:00
Alexander Medvednikov 9a713ff9b0 orm: handle more operators 2020-06-25 22:58:28 +02:00
Alexander Medvednikov aec7f2f6c4 checker: SqlStmt fixes 2020-06-25 22:37:40 +02:00
Uwe Krüger 46379d92f4
fmt: force break in front of long unbreakable parts, avoid very small sub-expressions 2020-06-25 22:24:28 +02:00
Alexander Medvednikov 328cb7ed7e orm: `update` with selectors and other fixes 2020-06-25 22:23:19 +02:00
Alexander Medvednikov 450c6e843c orm: `update` with multiple fields 2020-06-25 17:18:44 +02:00
Alexander Medvednikov b280e08ee0 orm: `update` cgen 2020-06-25 17:12:32 +02:00
Alexander Medvednikov a8b0dfb38a checker: allow casting strings to string aliases 2020-06-25 14:55:53 +02:00
Alexander Medvednikov ce6f687f65 checker: remove an unnecessary error for unexisting types 2020-06-25 14:51:58 +02:00
Alexander Medvednikov afa5a134b7 orm: move fields fetching to a separate function to remove copy pasta 2020-06-25 14:43:25 +02:00
yuyi f1e17f30f6
cgen: fix map_in error 2020-06-25 12:53:12 +02:00
yuyi 5e9c154376
os_api: cp/cp_all/... ?bool => ? 2020-06-25 12:06:47 +02:00
Alexander Medvednikov 786be1d1c3 orm: move type logic to checker, so that sql queries can be used before type def 2020-06-25 12:05:24 +02:00
Uwe Krüger a1bad50b2f
token: use only one representation for precedences 2020-06-25 11:36:13 +02:00
Uwe Krüger bdecbc1945
fmt: use `-1` for *really* no precedence, since `&` and `|` have precedence 0 2020-06-25 02:39:33 +02:00
ka-weihe 3bb6b6c8b2
map: comments and renaming 2020-06-24 23:31:19 +02:00
Alexander Medvednikov bb5793d485 vweb: more xss fixes 2020-06-24 22:38:25 +02:00
Alexander Medvednikov 83b300435a vweb: escape html; table: rename parent_typ to parent_type 2020-06-24 22:12:33 +02:00
yuyi 67d9d94fb3
map: fix m[a]++ etc 2020-06-24 20:41:26 +02:00
Lukas Neubert 955c0b1576
cgen: add 'link' to c_reserved 2020-06-24 20:40:56 +02:00
Uwe Krüger eb68c222fe
fmt: fix weird bug with tabs in string inpertolation 2020-06-24 20:40:29 +02:00
Alexander Medvednikov 9a77c0ab81 parser: fix the for loop check 2020-06-24 16:58:11 +02:00
Alexander Medvednikov 8ac00b8711 parser: check for loop key/val names 2020-06-24 16:54:21 +02:00
Alexander Medvednikov 4b0e606ae8 checker: fix the alias check 2020-06-24 16:52:23 +02:00
Alexander Medvednikov 9df29d0dd2 checker: do not allow {} for aliases; orm: update stmt 2020-06-24 16:35:18 +02:00
Uwe Krüger 0018e44102
fmt: further improvements by taking precedence into account for subexpressions 2020-06-24 15:19:30 +02:00
Alexander Medvednikov 9d0cc7912a fmt: re-run on gen/fn.v 2020-06-24 14:56:44 +02:00
Alexander Medvednikov e918f8faf2 fmt: re-run on checker.v and cgen.v 2020-06-24 14:44:06 +02:00
Alexander Medvednikov 11871d9544 fmt: re-run on parser.v and fmt.v 2020-06-24 14:35:00 +02:00
Alexander Medvednikov 090e6e936a orm: SqlStmt 2020-06-24 14:32:17 +02:00
Lukas Neubert 30169f86c1
os: make `rm` return an optional 2020-06-24 14:01:19 +02:00
Daniel Däschle 852fca2151
all: call anon fns right away 2020-06-24 12:54:39 +02:00
Alexander Medvednikov cf7ac7be7f cgen: zero_struct_field(); orm: zero un-inited fields 2020-06-24 12:53:39 +02:00
yuyi 5f36874c9b
vrepl: fix optional call 2020-06-24 12:45:48 +02:00
yuyi 514ee9d396
cgen: fix optional void return error 2020-06-24 12:45:15 +02:00
Uwe Krüger 56749877ea
fmt: fix handling of double quotes inside single quotes 2020-06-23 23:59:58 +02:00
Alexander Medvednikov 11ad18cd28 vweb: page gen time 2020-06-23 21:02:20 +02:00
Delyan Angelov fcd73bcb63 scanner: ignore CR signs in string literals 2020-06-23 21:10:58 +03:00
Alexander Medvednikov 74af88bc92 Revert "fmt: re-format parser.v and cgen.v"
This reverts commit 6b2808a3f9.
2020-06-23 18:16:24 +02:00
Alexander Medvednikov 6b2808a3f9 fmt: re-format parser.v and cgen.v 2020-06-23 18:05:53 +02:00
ka-weihe 4e447db883
parser/fmt: fix comments in structs/consts 2020-06-23 18:01:56 +02:00
Uwe Krüger 000eaca6be
fmt: avoid breaking lines with <= 100 characters 2020-06-23 17:54:39 +02:00
yuyi 7efb3ecb34
checker: check deprecated functions 2020-06-23 16:25:24 +02:00
Alexander Medvednikov db28796b5f orm: handle bool literals for older sqlite versions 2020-06-23 14:07:39 +02:00
Alexander Medvednikov 16dd889922 orm: test true/false 2020-06-23 13:59:00 +02:00
Alexander Medvednikov 076d0208cd cc: add -ldl and .o in cross builds 2020-06-23 12:57:06 +02:00
Alexander Medvednikov 63ef04e03e os: make write_file() return an optional 2020-06-23 11:41:23 +02:00
Alexander Medvednikov 3774ae0d91 orm: fix = 2020-06-23 11:41:23 +02:00
yuyi e2b5debc6b
checker: check optional type call 2020-06-23 11:39:58 +02:00
yuyi ed393896f5
checker: check printing of optional type 2020-06-23 11:38:30 +02:00
joe-conigliaro cff2874608
checker: fn arg - disallow any type with .str() to be passed as string 2020-06-23 08:51:18 +10:00
joe-conigliaro d19a33c420
sync: use Event for waitgroup on windows 2020-06-23 03:23:42 +10:00
Alexander Medvednikov a4b159a80f orm: order by id by default 2020-06-22 17:13:57 +02:00
Alexander Medvednikov e3f00ff28b orm: `limit 1` test 2020-06-22 16:58:43 +02:00
Alexander Medvednikov deb09d95b0 orm: fix `column == var`; limit 1; vweb: @footer 2020-06-22 16:52:16 +02:00
yuyi 73296e486a
parser: fix function return anon_fn without parentheses 2020-06-22 16:03:31 +02:00
Delyan Angelov b930a11203 parser: fix `match x { mod.constname {} }` handling 2020-06-22 16:16:39 +03:00
yuyi d232833573
gen: fix printing of generic arrays 2020-06-22 14:54:24 +02:00
Delyan Angelov cf4dc93e02 sync: run sync.pool without using concurrency features when VJOBS=1 2020-06-22 14:21:54 +03:00
Richard Warburton 640bbbae85
waitgroup: remove races, make platform independent, document 2020-06-22 11:07:34 +02:00
Alexander Medvednikov e65879d076 fmt: fix compilation 2020-06-21 23:23:31 +02:00
Alexander Medvednikov 011e26ca9a checker: check sum types in `match`; cross compilation fixes; orm fixes 2020-06-21 23:09:53 +02:00
yuyi 81c19517d1
cgen: add gen_str_for_multi_return 2020-06-21 17:53:13 +02:00
ka-weihe 7f225f2eaa
map: rename size to len 2020-06-21 16:51:02 +02:00
Delyan Angelov 0d6233cd45 net: support for s.max_single_send_size in Socket.send/2 2020-06-21 17:40:39 +03:00
Uwe Krüger 37927235cd
parser: trigger declaration of array element as error 2020-06-20 14:30:03 +02:00
Daniel Däschle 76dc7eea50
vweb: tmpl: add docs 2020-06-20 13:29:55 +02:00
spaceface777 a02aff9126
jsgen: fixes and improvements 2020-06-20 13:22:49 +02:00
joe-conigliaro ddd83f1fc6
checker: error if variable used before declaration 2020-06-20 12:42:08 +10:00
Alexander Medvednikov 1d8d19c977 vweb: return $vweb.html() 2020-06-20 03:12:38 +02:00
yuyi e41ddab3b0
test: add multiple array clone tests 2020-06-20 02:35:22 +02:00
yuyi e484fe15d3
tests: add nested array not equal tests 2020-06-20 02:34:49 +02:00
yuyi 4dc703af2d
cgen: fix nested array equality 2020-06-20 01:40:33 +02:00
JalonSolov bbd6d0b4e5
vweb: ignore url params on static files 2020-06-20 01:39:55 +02:00
Uwe Krüger 0338d4153a
fmt: make linebreak smarter by algorithm based on penalty 2020-06-19 19:54:26 +02:00
Alexander Medvednikov a609ff4659 orm: skip fields with [skip] 2020-06-19 17:35:50 +02:00
Swastik Baranwal 72b09d4794
term: add clear 2020-06-19 17:15:41 +02:00
Alexander Medvednikov 3cfeb92a4e cgen: fix tmp counter; orm: insert fixes 2020-06-19 17:05:57 +02:00
Alexander Medvednikov cd8392e42d orm: insert 2020-06-19 16:43:35 +02:00
Uwe Krüger c78cfa43bc
checker: make map literals have a real type 2020-06-19 15:00:27 +02:00
joe-conigliaro 7bc9e234a3
revert: checker: error if variable used before decleration p1 2020-06-19 21:37:09 +10:00
yuyi dc8b82e9a4
array: fix multiple array clone 2020-06-19 13:32:55 +02:00
joe-conigliaro 8a5ca4cbdc
checker: error if variable used before decleration p1 2020-06-19 21:31:33 +10:00
spaceface777 624005bbd0
tcc_win: fix tests 2020-06-19 12:54:56 +02:00
Alexander Medvednikov e8b21b4242 checker: type `x` does not support indexing 2020-06-19 12:53:53 +02:00
Alexander Medvednikov 5f5228f0f3 test: fix `as` checker test 2020-06-19 11:48:19 +02:00
Alexander Medvednikov d04554f0b7 all: more match updates 2020-06-19 11:46:08 +02:00
Alexander Medvednikov 274ecb71fa checker: `as` type test 2020-06-19 11:27:20 +02:00
Alexander Medvednikov d9dd9679e7 cgen: fix a typo 2020-06-19 11:16:51 +02:00
Alexander Medvednikov ef36520509 checker: check if the type in `as` exists, skip void type errors 2020-06-19 11:15:15 +02:00
yuyi 5a6d440f68
checker: check `array_insert` `array_prepend` type mismatch 2020-06-19 10:49:43 +02:00
Ned Palacios 5ff7d07138
vdoc: fix sorting + other minor improvements 2020-06-19 10:36:45 +02:00
Uwe Krüger 770132ff37
float: make default string representations for floats become alike 2020-06-18 22:33:41 +02:00
joe-conigliaro 1c68417918
parser: error on variable redefinition 2020-06-19 06:16:38 +10:00
spaceface777 68967e833d
parser: skip comp_if when building for a different compiler 2020-06-18 22:01:00 +02:00
Alexander Medvednikov 5ddb129bc2 checker: use the new match syntax 2020-06-18 20:38:59 +02:00
Alexander Medvednikov 78b32892ac cgen: use the new match syntax 2020-06-18 20:21:08 +02:00
Alexander Medvednikov d4b17fb0c3 fmt: use the new match syntax 2020-06-18 20:07:48 +02:00
Uwe Krüger 3b6e66db0d
fmt: further fixes for string interpolation and builtin macros 2020-06-18 18:48:23 +02:00
joe-conigliaro 812a9d646a
test: fix sumtype shadow & as test 2020-06-19 01:14:53 +10:00
joe-conigliaro 198fdcf1c6
test: change sumtype var shadow and as test 2020-06-19 01:10:16 +10:00
joe-conigliaro 3533335804
test: add match sumtype var shadow and `as` test 2020-06-19 01:06:40 +10:00
joe-conigliaro 45239cbd62
parser/checker/gen: match shaddow cond var & as support: p2 2020-06-19 00:41:00 +10:00
joe-conigliaro 68143b7b22
parser/checker/gen: match shaddow cond var & as support: p1 2020-06-19 00:33:16 +10:00
Alexander Medvednikov 7be952605b 0.1.28 2020-06-18 15:57:53 +02:00
Alexander Medvednikov 1d28d45c5c builder: add -lpthread; x64: a+b, a-b 2020-06-18 14:14:42 +02:00
yuyi 947e8922f2
cgen: optimize the format of the generated code 2020-06-18 12:08:36 +02:00
yuyi 930c3d73c1
cgen: fix `arr.insert(0, [1,2,3])` and `arr.prepend([1,2,3])` 2020-06-18 12:08:11 +02:00
yuyi b806fff90a
parser: minor optimization in parse_multi_expr() 2020-06-18 01:15:17 +02:00
yuyi 3f01e2b796
cgen: fix array.insert and arr.prepend 2020-06-18 00:22:34 +02:00
Alexander Medvednikov 7056f875db x64: fix another test 2020-06-17 18:31:08 +00:00
Alexander Medvednikov 60bbad4d86 x64: fix a test 2020-06-17 20:24:39 +02:00
Alexander Medvednikov a602673adb x64: pass variables to functions 2020-06-17 20:18:51 +02:00
Uwe Krüger 9c9f6415da
fmt: more sophisticated analysis for string interpolat 2020-06-17 19:49:13 +02:00
Alexander Medvednikov 325a7c7ec5 orm: more fixes and tests 2020-06-17 14:29:44 +02:00
Alexander Medvednikov 6066414afa orm: select many 2020-06-17 14:18:32 +02:00
joe-conigliaro effa0061e8
parser: fix incorrect duplicate struct attr error 2020-06-17 20:27:51 +10:00
Swastik Baranwal 0052ab71e9
string: add map method 2020-06-17 12:26:55 +02:00
Alexander Medvednikov fb5cae7376 orm: select where id = x 2020-06-17 04:05:20 +02:00
Uwe Krüger ddb1770af2
cgen: fix unsigned/signed integer comparisons 2020-06-17 02:54:27 +02:00
Alexander Medvednikov 88654ad81b orm: use the new optionals 2020-06-17 01:56:50 +02:00
Alexander Medvednikov ed58192e4c v orm: select 2020-06-17 00:59:37 +02:00
yuyi 23993d2264
cgen: fix nested array equality error 2020-06-16 18:40:32 +02:00
joe-conigliaro d478b44915
parser/checker/gen: merge AssignExpr & AssignStmt into just AssignStmt 2020-06-16 21:20:16 +10:00
Alexander Medvednikov 9d6b402df0 test: fix sqlite_test.v 2020-06-16 12:23:52 +02:00
Alexander Medvednikov e8f8defc3e ast: SqlExpr 2020-06-16 12:14:22 +02:00
yuyi 2daf915371
parser: `expression evaluated but not used` error 2020-06-16 11:06:53 +02:00
Uwe Krüger f2d9fa3815
cgen: restructure string_inter_literal() 2020-06-16 10:41:51 +02:00
yuyi 730f485591
test: fix `test_array_init()` 2020-06-15 22:31:11 +02:00
Emily Hudson 49d7a151b7
cgen: edge case for multi-returns 2020-06-15 22:30:16 +02:00
Delyan Angelov 62a872b8b5 vdoc: fix `v doc sokol` const formatting 2020-06-15 18:28:00 +03:00
joe-conigliaro 0cd9066f44
parser/cgen: multiple attributes & better errors (closes #5334) 2020-06-15 22:59:09 +10:00
Delyan Angelov cadde3e9f0 vlib: fix os.exec().output usages, that may rely on trimmed lines 2020-06-15 15:38:20 +03:00
yuyi b0138e021e
cgen: fix `in` multi_array 2020-06-15 13:21:06 +02:00
Delyan Angelov e73ed56231 tests: add parser/tests/, move checker_test.v=>compiler_errors_test.v 2020-06-15 10:58:34 +03:00
yuyi 2785a5bf65
checker: check return_duplicate_with_none (closes #5363) 2020-06-15 15:10:45 +10:00
spaceface777 5f21b152a7
tcc: support tcc on Windows 2020-06-14 23:15:12 +02:00
Delyan Angelov c874a22b3b doc: use `v new` instead of `v create` 2020-06-14 21:20:31 +03:00
yuyi 4e1a09c9f5
cgen: fix array_init temporary variable error 2020-06-14 19:09:27 +02:00
Ruofan XU 90279a7108
checker: use ++ / -- instead of += 1 / -= 1 2020-06-14 19:05:05 +02:00
Swastik Baranwal a3a91f54a9
checker: handle `!is` in error messages 2020-06-14 19:03:29 +02:00
Mike 'Fuzzy' Partin 206e64d72c
os: add os.uname() 2020-06-14 16:46:30 +03:00
yuyi 2ef0f15b34
string: fix contains behaviour (closes #5371) 2020-06-14 19:24:15 +10:00
yuyi 7e0197c1b8
cgen: fix `in` empty array 2020-06-14 10:54:10 +02:00
Adam Stankiewicz 471c931ada
os: do not trim space from output of exec 2020-06-14 01:41:47 +02:00
Alexander Medvednikov 45a3d8474e cc: remove sysroot hack now that $ bug is fixed 2020-06-13 22:54:20 +02:00
Uwe Krüger 50cd0ed785
parser: fix string array initialization with interpolation 2020-06-13 22:38:10 +02:00
Uwe Krüger 6113c4fe63
builtin: fix string interpolation for autofree 2020-06-13 18:39:17 +02:00
Alexander Medvednikov 6ce7bb4581 vweb: remove an unnecessary empty newline at the start 2020-06-13 16:59:06 +02:00
Adam Stankiewicz f2a75d5223
test: run all tests even if some fail 2020-06-13 16:20:45 +02:00
Alexander Medvednikov 183924e2a8 cc: linux cross compilation fixes + make work with openssl 2020-06-13 16:19:19 +02:00
Adam Stankiewicz b3fc462a78
scanner: fix parsing multiple .amp 2020-06-13 00:01:44 +02:00
Alexander Medvednikov af27963938 string: do not free empty strings 2020-06-12 17:20:51 +00:00
Alexander Medvednikov ca63b92d4f cgen: fix _STR 000 2020-06-12 16:55:21 +00:00
yuyi 90f07eb64a
parser: fix fn attributes empty error 2020-06-12 18:27:05 +02:00
Alexander Medvednikov 0d1e5abc41 cgen: call va_end() in _str() 2020-06-12 17:33:08 +02:00
Alexander Medvednikov 7750ce5f60 time: fix relative() 2020-06-12 15:28:28 +02:00
Alexander Medvednikov b13c95ea48 Revert "vweb: @include tempaltes"
This reverts commit 6b06184ef4.
2020-06-12 14:32:09 +02:00
Daniel Däschle 6b06184ef4
vweb: @include tempaltes 2020-06-12 14:30:07 +02:00
Swastik Baranwal 56ae3797dd
checker: add checks and test for ~ operator 2020-06-12 12:05:20 +02:00
yuyi b4ad174b7f
array: fix multiple array.repeat index error 2020-06-12 11:42:26 +02:00
Adam Stankiewicz 827a9e221f
cgen: do not double-reference anon fn 2020-06-12 10:48:44 +02:00
Delyan Angelov 0a07dc5762 Revert "_vinit: use static initialization of large const []number"
This reverts commit b306c04e99.
2020-06-12 09:57:38 +03:00
Delyan Angelov b306c04e99 _vinit: use static initialization of large const []number 2020-06-12 09:41:32 +03:00
yuyi 47ffedc5de
cgen: minor array_init fix 2020-06-12 02:19:48 +02:00
yuyi ff1437fc5a
cgen: fix multi_array index issue 2020-06-12 01:24:25 +02:00
Alexander Medvednikov c9cfe9d40b vweb: @js and @css template fns 2020-06-11 20:34:59 +02:00
Alexander Medvednikov 72fdb09e46 time: relative_short(); fmt: handle $vweb.html() 2020-06-11 20:26:49 +02:00
Delyan Angelov 3bf9b28773 vlib: add fixes for problems, found by check_os_api_parity.v 2020-06-11 21:16:12 +03:00
Delyan Angelov 5ef9569098 cmd/tools: add check_os_api_parity.v - keep module APIs even 2020-06-11 21:13:36 +03:00
Delyan Angelov 05177b9dcb builder: add 'builtin' to builtin_module_parts instead of .clone() 2020-06-11 19:23:13 +03:00
Delyan Angelov b2428290f9 builder: fix a const changing bug that prevented 2 builders 2020-06-11 18:35:41 +03:00
yuyi a66753871d
checker: check array.map/filter fn or anon_fn 2020-06-11 13:14:07 +02:00
Alexander Medvednikov 8f3f27f286 vweb: bring back @header 2020-06-11 11:13:41 +02:00
Don Alfons Nisnoni 39c5c9b966
mysql: update documentation 2020-06-11 11:07:17 +03:00
Emily Hudson 19c3ba2f8f
cgen: ensure struct has empty_struct_declaration to appease msvc 2020-06-11 00:52:06 +02:00
Alexander Medvednikov 684a443b08 cgen: disable _STR_TMP 2020-06-10 21:24:59 +00:00
spaceface777 e50706f25c
jsgen: implement array map and filter 2020-06-10 22:18:20 +02:00
spaceface777 6f886dccca
jsgen: initial string interpolation support 2020-06-10 20:53:43 +02:00
Daniel Däschle 123d788d0d
vweb: include directive 2020-06-10 18:53:04 +02:00
Alexander Medvednikov a2d7bc6e6f vweb: look for html templates in `templates/` 2020-06-10 18:00:11 +02:00
Delyan Angelov 972f60d785 cgen: do use g.write_defer_stmts in opt()? calls 2020-06-10 18:43:23 +03:00
yuyi b6e2495aa2
cgen: remove redundant code for array.map/filter(anon_fn) 2020-06-10 17:25:54 +02:00
Alexander Medvednikov 1254d7a302 cc: fix windows cross compiling for programs that use json 2020-06-10 17:15:24 +02:00
Emily Hudson bf7f84d16f
cgen: fix using C constants in enums, `none` propagation 2020-06-10 17:01:55 +02:00
Delyan Angelov a43b8b5c96 vfmt: add maps_in_fn_args__keep.vv test for 3a369f5 2020-06-10 17:15:53 +03:00
Delyan Angelov 3a369f513c vfmt: fix table.type_to_str(), keep map[string]mod.Type in fn args 2020-06-10 17:12:55 +03:00
yuyi acf0b84523
cgen: fix array.filter(anon_fn) 2020-06-10 13:18:59 +02:00
yuyi 12faf9fcfa
cgen: fix multiple array.map(anon_fn) calls 2020-06-10 13:18:45 +02:00
Alexander Medvednikov a130d3cd14 vweb: fix unused var warning 2020-06-10 12:17:49 +02:00
Alexander Medvednikov b904d7d1ba vweb: debug prints behind $if debug 2020-06-10 11:50:06 +02:00
Alexander Medvednikov 931bba1d7d net: fix windows urlmon flag 2020-06-10 11:25:41 +02:00
Alexander Medvednikov c261ac4f46 net: fix windows headers 2020-06-10 11:24:37 +02:00
Alexander Medvednikov 2ed4457c5f vweb: init_once() 2020-06-10 11:24:36 +02:00
Tomas Hellström 2dc547a45c
time: fix iso8601 parser and utc time 2020-06-10 11:14:55 +02:00
Ned Palacios 8f9f426479
vdoc: plaintext fixes 2020-06-10 11:14:03 +02:00
Ned Palacios e3c40f1df8
vdoc: minor css fix + add error message 2020-06-10 11:13:42 +02:00
joe-conigliaro e38a221dc3 checker: fix second use of gloabl ident 2020-06-10 16:59:31 +10:00
Alexander Medvednikov 4a7ec90bef vweb: fix a bug with <span> 2020-06-10 01:43:04 +02:00
Alexander Medvednikov e5aba94ae4 vweb: use state enum 2020-06-09 23:20:51 +02:00
joe-conigliaro 3664bea912
vweb/checker: show tmpl var errors 2020-06-10 02:47:51 +10:00
Delyan Angelov 4fc41c4bc4 v: add compiler support for _unlikely_(x) too 2020-06-09 18:11:03 +03:00
Delyan Angelov c7d4360931 v: add full compiler support for _likely_(x) 2020-06-09 17:42:43 +03:00
Delyan Angelov 6663e94780 builtin: add C._likely_ support 2020-06-09 16:36:53 +03:00
Hungry Blue Dev e649cf84e3
rand: reorganize: phase 2 2020-06-09 15:06:07 +02:00
yuyi 85c741519b
cgen: fix array.map(fn...) 2020-06-09 12:50:56 +02:00
Alexander Medvednikov b3e416fb52 vweb: fix duplicate fn error with multiple templates 2020-06-09 12:43:20 +02:00
yuyi 1396dc1c89
cgen: remove extra blank lines 2020-06-09 12:23:08 +02:00
Alexander Medvednikov 3b8f01b4fb sokol: remove duplicate #include ft2build.h 2020-06-09 12:21:35 +02:00
joe-conigliaro 62c80bc2c5
parser: add mod list to allow globals by default 2020-06-09 18:49:15 +10:00
Alexander Medvednikov 5dcd2303c9 builtin: fix string.fields() 2020-06-09 10:15:20 +02:00
yuyi d472a27489
cgen: fix array.map(anon_fn) 2020-06-09 10:14:10 +02:00
spaceface777 895c7624e4
jsgen: improve handling of `blank_ident` 2020-06-09 09:45:50 +02:00
joe-conigliaro 2799a6f065 parser/checker: fix global lookup 2020-06-09 17:08:11 +10:00
Delyan Angelov 99f311cc5f checker: protect against stackoverflows due to deep expr recursion 2020-06-08 20:35:33 +03:00
spaceface777 30f1c6bad5
parser: fix type_only fns starting with varargs 2020-06-08 19:02:36 +02:00
wilesun 564545d20a
cgen: add defered statements before propagating option returns 2020-06-08 18:50:23 +03:00
Adam Stankiewicz b4dbf9cacf
table: remove name from MultiReturn type 2020-06-08 15:40:40 +02:00
Adam Stankiewicz 586a886975
table: add tests and improve performance 2020-06-08 15:36:59 +02:00
Louis Schmieder d3839b5d68
glm: improve matrix mult function and add tests 2020-06-08 15:31:55 +02:00
Alexander Medvednikov 1bbfc271c5 vweb: fix unused tmpl warning; remove duplicate code 2020-06-08 13:30:42 +02:00
Alexander Medvednikov dabfc4ebd0 checker: do not display errors for incorrectly initialized vars 2020-06-08 13:10:47 +02:00
Alexander Medvednikov 288a6ee468 vweb: minor tmpl fixes 2020-06-08 12:44:38 +02:00
Ned Palacios 721a3a24ae
vdoc: minor features + fixes 2020-06-08 10:28:46 +02:00
Delyan Angelov 6c9b2b8303 builtin: use tcc_backtrace for tcc (phase 2) 2020-06-08 10:46:51 +03:00
Delyan Angelov 8a16086084 builder: pass -bt10 for tcc (phase 1 for using tcc_backtrace) 2020-06-08 10:40:01 +03:00
Ryan Willis 08814d6de4
tools/vsymlink: use the win32 api to update the system environment 2020-06-08 09:19:31 +02:00
Delyan Angelov 0058b8253d vdoc: fix 'module, comment, import' sequence bug 2020-06-08 09:27:22 +03:00
Enzo Baldisserri 11b7b97311
parser: fail when assigning to _ with := 2020-06-08 00:47:04 +02:00
Ned Palacios 36edd6295f
vlib: transfer intro to readme; normalize comments 2020-06-08 00:04:23 +03:00
Louis Schmieder 2cad6db9f7
http: fix redirect for servers returning lowercase 'location:' header 2020-06-08 00:01:20 +03:00
Alexander Medvednikov 3bbda7103f Revert "parser: allow void return type for C functions"
This reverts commit d7c63922d5.
2020-06-07 19:06:19 +02:00
Alexander Medvednikov 30ade1d6ea tests: test more vweb template features 2020-06-07 19:06:07 +02:00
Swastik Baranwal d7c63922d5
parser: allow void return type for C functions 2020-06-07 19:45:27 +03:00
Delyan Angelov 2b6ba63a55 ci: fix tests (most CI jobs do not have pg set up) 2020-06-07 18:08:31 +03:00
Alexander Medvednikov e029044b13 pg: fix compilation 2020-06-07 16:05:44 +02:00
Alexander Medvednikov 931cf86cc3 tests: build vweb example 2020-06-07 15:44:33 +02:00
Alexander Medvednikov 8277c976a8 gg: draw_image,draw_rounded_rect placeholder fns 2020-06-07 15:20:42 +02:00
Tomas Hellström 9c8769503f
time: add microsecond precision to Time struct 2020-06-07 16:19:09 +03:00
Lukas Neubert eec5cf1eb1
vpm: use only `-v` for verbose output 2020-06-07 14:20:56 +02:00
joe-conigliaro 70c18fc7b2
vweb: tmpl access to action method vars 2020-06-07 21:26:47 +10:00
Ned Palacios cbcdc8434f
vdoc: group constants + minor fixes 2020-06-07 12:27:42 +02:00
joe-conigliaro 1c2bf7b244
vweb: impl of comptime tmpl parsing (fix vweb_example) 2020-06-07 20:26:45 +10:00
Delyan Angelov 013bfc7ebc vweb: add vweb.run_app(app,port); fix compilation of vweb_assets/main.v 2020-06-07 11:02:35 +03:00
Sumeet Chhetri 442030a7c8
picoev: make compile, add header parsing 2020-06-07 01:23:30 +02:00
Alexander Medvednikov d62d0c40d2 parser: fix typo 2020-06-06 21:36:55 +02:00
Alexander Medvednikov 4d5ac1e16d vweb: $html 2020-06-06 21:36:34 +02:00
Delyan Angelov 16bf300934 os: fix compilation with -cc gcc -prod of programs using os.cp 2020-06-06 22:05:23 +03:00
Delyan Angelov e534f8507b vlib: minor tweaks for various module imports, needed for vdoc 2020-06-06 19:14:10 +03:00
Delyan Angelov 8d3f680d07 vdoc: implement .toplevel_comments parsing mode 2020-06-06 19:05:26 +03:00
Delyan Angelov 3aecdeab63 os,gl,sync: cleanup, prepare for .toplevel_comments vdoc mode 2020-06-06 18:47:25 +03:00
Alexander Medvednikov fb6be080fb fmt: fix compilation 2020-06-06 16:52:41 +02:00
Alexander Medvednikov 2770077cb0 fmt: x.foo!() experiment 2020-06-06 16:05:24 +02:00
Alexander Medvednikov 40bd1be85f parser: fix ! 2020-06-06 12:43:35 +02:00
Alexander Medvednikov 100b3986b8 parser: handle ! after CallExpr 2020-06-06 12:28:03 +02:00
joe-conigliaro 34af7ccba9
scanner: cut keyword lookups in half 2020-06-06 19:49:50 +10:00
Alexander Medvednikov 7815c5b108 cgen: $action (ComptimeCall); vweb: hello world works! 2020-06-06 10:05:26 +02:00
joe-conigliaro 0a3486b4c5
checker: generic/vewb fix 2020-06-06 17:06:11 +10:00
joe-conigliaro c2fe4ffa85
table: remove fn to set idx & add new derive fn 2020-06-06 12:51:36 +10:00
joe-conigliaro 31d03bb113
checker/cgen: small generic fixes (mut arg return) 2020-06-06 12:24:27 +10:00
Uwe Krüger de76ac583f
parser: fix string interpolation for expressions ending `c`, `r`, `js` 2020-06-05 22:37:34 +02:00
Alexander Medvednikov 11908410f3 vweb: make compile 2020-06-05 21:04:18 +02:00
Alexander Medvednikov e3917d98c2 generics: another mut arg test 2020-06-05 20:57:05 +02:00
Louis Schmieder 5c74e86ec4
gl: add comments & clean up 2020-06-05 15:57:45 +02:00
Alexander Medvednikov 3478430762 gg: borderless windows on macos without animation 2020-06-05 15:43:47 +02:00
Delyan Angelov c1fc61200c gg: support .keydown_fn and .char_fn in addition to .event_fn 2020-06-05 12:39:06 +03:00
joe-conigliaro 3c4e4d4825
gen/checker: copy ptr & flag info in unwrap_generic 2020-06-05 18:41:15 +10:00
Ned Palacios 30e0bda434
vdoc: rewrite usage, add new options + streamline process 2020-06-05 09:59:26 +02:00
yuyi c9b395f9cf
checker: fix for_in_index type error 2020-06-05 09:44:25 +02:00
yuyi ef46fbb96f
cgen: clean up ternary 2020-06-05 08:30:03 +02:00
Delyan Angelov 24b263cf87 vid: bring back scale field to gg.Config, fixes vid compilation 2020-06-05 08:48:31 +03:00
Delyan Angelov 2237968ec1 gg: fix x11 scaling 2020-06-05 08:19:34 +03:00
Alexander Medvednikov e7f52ebed6 gg/ft: minor Sokol fixes 2020-06-04 23:51:59 +02:00
Daniel Däschle d0f9bdf85e
vdoc: style and other improvements 2020-06-04 23:50:59 +02:00
Daniel Däschle 6118875ee3
vweb: add tmpl api to compile either file or a string 2020-06-04 22:30:25 +02:00
Alexander Medvednikov 13a7ce9e69 gg: GG => Context 2020-06-04 20:26:18 +02:00
Alexander Medvednikov 926ffc8aa9 freetype: use old gg 2020-06-04 20:18:22 +02:00
Alexander Medvednikov fb7ca56d87 gg: minor fixes 2020-06-04 19:57:16 +02:00
Uwe Krüger cf9498ef6b
cgen: use standard checks for float comparisons 2020-06-04 19:47:41 +02:00
joe-conigliaro 1c43204224
table: remove extra parens & inline fn 2020-06-05 00:28:34 +10:00
Alexander Medvednikov 6b6c9d6738 gg: make the Sokol based gg the default 2020-06-04 16:05:15 +02:00
yuyi dd7ebf7fac
parser: check function argument mutable syntax 2020-06-04 15:20:43 +02:00
joe-conigliaro edd56bc080
table: allow type hold 8 flags at once 2020-06-04 22:38:54 +10:00
Alexander Medvednikov 277b7b35d0 cgen: write_fn_attr() 2020-06-04 12:20:14 +02:00
joe-conigliaro 41dca3ef58
checker/cgen: fix mutable generic fn args 2020-06-04 19:32:31 +10:00
yuyi 8a24d7d723
checker: optional return fix 2020-06-04 10:40:32 +02:00
yuyi 5ae8853648
all: change `f mut Foo` to `mut f Foo` 2020-06-04 10:35:40 +02:00
Delyan Angelov 0b7fe0a9d0 gg2: add the rest of the sokol callbacks in gg.new_context 2020-06-04 09:48:49 +03:00
Delyan Angelov 576e80b3a9 tetris: restore text rendering with gg2.ft.draw_text 2020-06-03 23:09:34 +03:00
Swastik Baranwal d286f67220
parser: update check for non mut types in fn 2020-06-03 18:47:18 +03:00
yuyi 962bbf1c60
fmt: fix ?void format error, add _keep.vv test 2020-06-03 18:45:40 +03:00
yuyi ffafeac0f8
cgen: optimize gen c code format 2020-06-03 18:24:08 +03:00
Leah Lundqvist 5e2a6ffe65
jsgen: small fix - remove trailing comma in export 2020-06-03 17:30:43 +03:00
Delyan Angelov 8a23cfc0d6 tetris: support instant `d`rop key, add +FPS counter on -d showfps 2020-06-03 16:45:26 +03:00
pancake e9bcd36d5e
builtin: implement generic break_if_debugger_attached() 2020-06-03 14:11:23 +02:00
yuyi 13e09c61ef
tests: add multi_dimensional array init tests 2020-06-03 14:10:29 +02:00
yuyi 1060de88af
parser: fix function mutable argument error 2020-06-03 12:28:16 +02:00
spaceface777 4b7c70caca
parser: fix JS functions starting with caps 2020-06-03 10:57:32 +02:00
Alexander Medvednikov d182059ba6 tests: fix fn_test.v 2020-06-03 10:54:47 +02:00
Alexander Medvednikov 00978da2c4 checker: fix mut int test 2020-06-03 10:45:19 +02:00
Alexander Medvednikov 888a43a684 checker: fix mut int test 2020-06-03 10:40:41 +02:00
Alexander Medvednikov 199f4f006b checker: fix mut int check 2020-06-03 10:36:56 +02:00
Delyan Angelov 6a0a2da05c cgen: support `$if test { ... }` 2020-06-03 10:20:10 +03:00
Alexander Medvednikov 99c70cf9c6 pref: do not allow -o .v 2020-06-03 09:03:46 +02:00
Mike 'Fuzzy' Partin ac0fee8e64
repl: fix BSDs 2020-06-03 08:44:44 +03:00
yuyi d0ff9a7c4a
parser: correct fn arg position in error message 2020-06-03 08:42:02 +03:00
Delyan Angelov 845084c89d strconv: fix format_dec example 2020-06-03 01:30:46 +03:00
Alexander Medvednikov 63b8cdea7a checker: require () in a && b || c 2020-06-02 22:21:44 +02:00
Delyan Angelov 0a84f0feb5 vdoc: prevent infinite recursion in get_parent_mod 2020-06-02 23:14:46 +03:00
yuyi 1386c5df13
parser: use `?` instead of `?void` errpr 2020-06-02 17:24:24 +02:00
Uwe Krüger b0f66a4e05
checker: permit int -> f32, int64 -> f64 and similar promotions again 2020-06-02 17:00:14 +02:00
Alexander Medvednikov 640688d8cf vdoc: fmt doc/doc.v 2020-06-02 16:19:55 +02:00
Alexander Medvednikov fb3e52ca63 all: `!is` operator 2020-06-02 16:18:12 +02:00
Alexander Medvednikov 78f8a8aee6 cgen: remove g_ hack 2020-06-02 15:49:43 +02:00
Alexander Medvednikov 1139d3b458 gg: move text rendering to gg.ft 2020-06-02 15:35:41 +02:00
yuyi 653a27005b
cgen: fix multi dimensional array init error 2020-06-02 15:15:52 +02:00
Delyan Angelov 3521c9045b vpm: change hardcoded ~/.vmodules/ (does not work on windows) 2020-06-02 14:36:49 +03:00
Ned Palacios b99ba21ddd
vdoc: markdown, html, json generation + lots of fixes 2020-06-02 12:10:01 +02:00
Emily Hudson 46dbbd0ed0
json: add enum to json_test to prevent regressions 2020-06-02 12:13:26 +03:00
yuyi 63b2d4be99
cgen: make >8 indent levels work 2020-06-02 10:40:24 +02:00
Alexander Medvednikov ad8ed851d0 examples: make tetris compile 2020-06-02 09:38:42 +02:00
Alexander Medvednikov 138d730dfa checker: prepare for the is_changed check 2020-06-02 09:00:51 +02:00
Ned Palacios 9fcb8536e8
fmt: fix struct decl gen with c structs 2020-06-02 07:41:02 +02:00
ka-weihe 13c68eb81e
rand: fix warnings 2020-06-02 06:39:38 +02:00
Uwe Krüger 076089d3c5
checker: apply stricter type checks to function args and return types 2020-06-01 21:15:59 +02:00
Hungry Blue Dev a7c84834f4
rand: reorganize (step 1) 2020-06-01 21:13:56 +02:00
Naheel 4fcabb71c4
os: implement cp for nix 2020-06-01 21:11:40 +02:00
Delyan Angelov 4956ca62e3 websocket: move .nonce_size to pub mut: 2020-06-01 20:37:24 +03:00
Delyan Angelov 328a235f94 websocket: add Client.nonce_size field 2020-06-01 20:31:58 +03:00
Emily Hudson 0c7bac4ba7
json: fix enums and byte, cleanup 2020-06-01 19:36:07 +03:00
Delyan Angelov 6161392648 json: do not generate comptime encode/decode functions already defined in json_primitives.v 2020-06-01 19:04:17 +03:00
Delyan Angelov c6a7d0a3a0 tests: update the remaining erroring tests, CI should be green now 2020-06-01 18:30:26 +03:00
Delyan Angelov ae8f7cf569 tests: fix some tests, that failed due to the stricter immutable checks 2020-06-01 18:24:38 +03:00
Delyan Angelov 86862d6a94 checker: remove mod_file_cacher exception 2020-06-01 17:43:03 +03:00
Alexander Medvednikov 3d83934caf checker: check mutating methods; generics fixes 2020-06-01 15:44:10 +02:00
Delyan Angelov 945439dab6 cgen: print actual values on a failed assert (when possible) 2020-06-01 14:43:38 +03:00
Alexander Medvednikov 9bcbb3868f gg: migrate to sokol; examples: update tetris 2020-06-01 12:57:08 +02:00
Don Alfons Nisnoni 37e3cc0e72
mysql: simplify, add more functionality & documentation 2020-06-01 11:26:39 +02:00
Delyan Angelov 97b9ce04a4 crypto.rand: cleanup test, make it less likely to fail in CI 2020-06-01 07:49:52 +03:00
spaceface777 11e6734912
jsgen: more fixes and improvements 2020-05-31 20:48:31 +02:00
pancake 304258162c
cgen: when building a shared library, make vinit() a constructor 2020-05-31 17:27:23 +02:00
Mike 'Fuzzy' Partin 411868a43a
util: add gdiff to the list of diff utilities to support bsd systems 2020-05-31 17:01:31 +02:00
Alexander Medvednikov a5ddb613fb builder: linux cross compilation 2020-05-31 15:09:07 +02:00
Delyan Angelov f1f6fb1a9f json: fix `f32 is not struct` 2020-05-31 14:17:20 +03:00
Uwe Krüger faf3248e98
checker: check types for bitwise right shift 2020-05-31 12:58:13 +02:00
Emily Hudson 75eac291ac
all: variable sized options 2020-05-31 12:57:26 +02:00
Alexander Medvednikov f87e872fa2 checker/cgen: interface match 2020-05-31 10:22:21 +02:00
Delyan Angelov bb9d268bd9 fmt: add struct init keep test, fix another &&Foo bug 2020-05-30 22:34:57 +03:00
Alexander Medvednikov 905f844b16 cgen: return interface fix 2020-05-30 20:18:03 +02:00
Alexander Medvednikov 1ca7a607d3 checker/cgen: return interfaces 2020-05-30 19:54:16 +02:00
Uwe Krüger b74e1bb05d
checker: fix type mismatch in function argument for struct reference init 2020-05-30 15:42:12 +02:00
Emily Hudson a4de507c6d
cgen: panic on assertion failed outside tests 2020-05-30 13:19:52 +02:00
Alexander Medvednikov dd34e65398 gg: sokol fixes and text rendering benchmark 2020-05-30 12:52:27 +02:00
Delyan Angelov f9cb0d443b builder: improve suggestion on a w64 cross compile fail on linux 2020-05-30 13:49:03 +03:00
Delyan Angelov d148920b54 v.util: prepare CI for the external markdown module (needed for vdoc) 2020-05-30 11:06:16 +03:00
JalonSolov b7dc5b2f7b
stopwatch: auto_start option, make pause cumulative 2020-05-30 10:20:54 +03:00
Delyan Angelov 077e06b44e fmt: fix struct field default expressions and tags 2020-05-29 21:22:27 +03:00
yuyi 1e504fb388
parser: check undefined variable of assign_expr 2020-05-29 17:38:40 +02:00
Delyan Angelov f3c5f36317 parser: allow for `struct Abc { f [skip] = -1 }` 2020-05-29 12:45:54 +03:00
Delyan Angelov 0970e61350 repl: fix exiting raw mode by reverting da9b3d8
This reverts commit da9b3d82d2.
2020-05-29 09:03:55 +03:00
Alexander Medvednikov 1c11ac9fdf checker: make sure `is` is only used with interfaces and sum types 2020-05-29 06:46:01 +02:00
yuyi 3a340cbffc
checker: fix array_init cast type error 2020-05-29 06:39:46 +02:00
Alexander Medvednikov bec3e07635 interfaces: fix `is` 2020-05-29 05:54:53 +02:00
pancake b3f2c629c6
builder: use .dylib for -shared builds in macOS 2020-05-29 04:52:19 +02:00
Alexander Medvednikov 39925b8dac live: simplify elog() 2020-05-29 04:42:02 +02:00
Alexander Medvednikov 96fb7901b3 live: fix reloader.v 2020-05-29 04:36:08 +02:00
Alexander Medvednikov 81b44dc2c9 generics: generic call inside generic call; checker: check mut args at call 2020-05-29 04:30:00 +02:00
Emily Hudson f0a9b88ac4
all: add stdcall attribute, unhandled exception handler, get_raw_stdin, v_realloc 2020-05-29 03:06:27 +02:00
Tim Basel 7e538d7401
utils: add args to launch_tool 2020-05-28 19:40:09 +03:00
yuyi 28ffe2a6ee
checker: add error for struct fields of type []unknown 2020-05-28 19:38:53 +03:00
spaceface777 60716bba29
parser: fix nested array_init syntax 2020-05-28 19:36:57 +03:00
pancake 1d78914a8f
parser: support @VROOT in #include too, make it use absolute paths 2020-05-28 19:36:04 +03:00
Delyan Angelov 75b8822f06 scanner: prevent infinite looping, when reaching .eof due to parser bugs 2020-05-28 19:22:11 +03:00
Delyan Angelov d70cd81875 v.pref: remove 'setting pref.path to ...' when given -v 2020-05-28 18:41:26 +03:00
Matt Baulch da9b3d82d2
readline: fix stack memory leak on Linux 2020-05-28 15:38:20 +02:00
Alexander Medvednikov 9609b3a9c8 checker: make the method warning an error 2020-05-28 15:30:54 +02:00
Alexander Medvednikov 01dbb25a37 checker: do not allow defining methods on types from other modules 2020-05-28 15:23:20 +02:00
Leah Lundqvist 1d0ebfb691
jsgen: add hash statement 2020-05-28 14:38:10 +02:00
pancake 2943bdc1f6
cgen: add support for $if (mach|darwin|hpux|gnu|qnx|bsd) 2020-05-28 13:33:12 +02:00
Tim Basel d688d356a7
cli: assign parent by default; add disable_flag 2020-05-28 13:32:43 +02:00
yuyi 977eb895e8
checker: check array init's element type 2020-05-28 13:32:12 +02:00
Ethan Reynolds 6da1d3aff8
gx: convert Color values from int to byte and expand operators 2020-05-28 13:21:20 +02:00
Matt Baulch c7501e2d3d
os: fix build issue caused by fileno on *BSD 2020-05-28 11:08:59 +02:00
Delyan Angelov a3bd8d3e4c cgen: add trace info about auto str generation 2020-05-28 10:36:29 +03:00
Delyan Angelov 55ef117531 cgen: fix for V structs fields (auto str and json_decode) 2020-05-28 09:55:37 +03:00
Ned Palacios 94f23d96e9
vfmt: fix generation on C idents, fixed arrays 2020-05-28 08:06:20 +02:00
Alexander Medvednikov d6037cbcf2 generics: fix method calls 2020-05-28 05:58:19 +02:00
Delyan Angelov ae8cc2f433 live: fix -live compilation && make live_test.v not swallow segfault errors 2020-05-28 03:21:49 +03:00
yuyi 9cbd9db4e7
cgen: fix swap assign of prefix and postfix expr 2020-05-28 02:22:09 +03:00
div72 cecb7d29c7
Prevent vfmt from appending the module name to FnTypeDecl inside the same module (#5080) 2020-05-28 02:19:24 +03:00
Alexander Medvednikov 4988d340b1 generics: fix method calls 2020-05-28 01:19:08 +02:00
Hungry Blue Dev e89ae7e194
rand: refactor rand.v and random_numbers_test.v 2020-05-28 02:16:17 +03:00
Delyan Angelov 04ca7efc0c websocket: fix compilation of client.v 2020-05-28 01:38:54 +03:00
Delyan Angelov f6bdb3ae81 v.vmod: cleanup vmod.mod_file_cacher API 2020-05-28 01:38:11 +03:00
Delyan Angelov 2046ae78df builder: improve `redefinition of function` messages 2020-05-28 00:56:28 +03:00
Delyan Angelov 0292666ac1 builder: use verror instead of panic when a _test.v file does not exist 2020-05-27 21:38:09 +03:00
div72 48cc8dd86b
rand: cleanup of rand_f32xxx and rand_f64xxx functions 2020-05-27 20:13:57 +03:00
yuyi 84edbd83da
all: fix struct names error 2020-05-27 19:12:34 +03:00
Alexander Medvednikov 670820cc59 parser: do not allow 1 char struct names 2020-05-27 16:00:00 +02:00
Alexander Medvednikov 5423a15f46 generics: more fixes 2020-05-27 15:56:30 +02:00
Larpon 8c753ddf8d
rand: add random functions for f32 and f64, [0,max] and [min,max] versions 2020-05-27 16:41:37 +03:00
Ned Palacios e0db880791
fmt: simplify map_init 2020-05-27 16:26:45 +03:00
Delyan Angelov a4af4f9fe7 http_test.v: comment yahoo test urls for now 2020-05-27 15:53:57 +03:00
Emily Hudson 0b64e2190f
checker,cgen: unpack multi returns in return statements 2020-05-27 15:47:38 +03:00
x0r19x91 72ed673566
builtin: array: fix slice cloning 2020-05-27 14:07:03 +02:00
Larpon 6ca53d7b39 scanner: improve @FN substitution for anon functions 2020-05-27 12:05:50 +03:00
Delyan Angelov 481f103dc9 checker: make an error using non `pub` fns from other modules 2020-05-27 12:00:19 +03:00
Delyan Angelov ebbf42dadb tests: add a commented test_generic_fn_with_variadics, which worked with old v 2020-05-27 08:41:12 +03:00
Alexander Medvednikov 59711d9c55 generics: test `T{}` 2020-05-27 06:53:52 +02:00
Uwe Krüger 013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost 2020-05-27 05:42:48 +02:00
Alexander Medvednikov fc67046bac checker: fix pub fn check 2020-05-27 03:38:21 +02:00
Alexander Medvednikov 7c9279c447 vfmt: make work with comptime 2020-05-27 03:33:40 +02:00
yuyi 23c0bb600c
scanner: fix vmod_file on windows 2020-05-27 03:32:39 +02:00
Alexander Medvednikov 6f7628cb67 parser: comptime call fixes 2020-05-27 03:20:25 +02:00
Ned Palacios b02ec8cbf9
vfmt: fix raw string support 2020-05-27 03:10:47 +02:00
Delyan Angelov 3cfdd2a4cd scanner: add support for @VMOD_FILE 2020-05-26 23:39:15 +03:00
yuyi bb48851092
cgen: fix mutliple_assign swap 2020-05-26 18:00:51 +02:00
ka-weihe 64173c792f
builtin: map: fix memory leak 2020-05-26 17:59:52 +02:00
Larpon 31ba64b409
scanner: add support for `@STRUCT` compile time substitution 2020-05-26 15:35:11 +02:00
Julia K 285e04393e
cgen: fix missing space, remove unnecessary comment 2020-05-26 16:22:28 +03:00
pancake 8d10adf886
flag: fix a typo 2020-05-26 14:27:01 +02:00
Julia K 2b27072fac
compiler: new attributes, prelude customization 2020-05-26 14:12:18 +02:00
Emily Hudson 748b1d3381
cgen: use typ() for array type 2020-05-26 14:11:59 +02:00
Enzo Baldisserri 145b125155
websocket: make compile 2020-05-26 12:50:37 +02:00
Julia K b4eadb9030
cmd/v: reimplement -path flag 2020-05-26 03:17:52 +02:00
Alexander Medvednikov b4d88ee4af checker: handle map.clone() 2020-05-26 02:09:26 +02:00
ka-weihe 8ea0c812a2
builtin: map.clone() 2020-05-26 01:52:06 +02:00
Alexander Medvednikov 0f92800921 cgen: string buffer fix 2020-05-26 00:04:13 +02:00
Delyan Angelov b0cfd3fa67
parser: reimplement [flag] enum support. Add p.vcodegen too 2020-05-26 00:00:48 +03:00
Delyan Angelov 5825e467b8 checker: fix appending an .enum_val to a struct field of []Enum 2020-05-25 21:48:43 +03:00
spaceface777 f8b237433f
jsgen: fix array push operator 2020-05-25 19:34:42 +03:00
Larpon 09dc2eed82
scanner: add support for '@MOD' 2020-05-25 19:33:41 +03:00
Alexander Medvednikov bc3e29e77b cgen: fix a bug with tmp strings/free 2020-05-25 11:01:21 +00:00
Alexander Medvednikov 53a10eb312 cgen: use STR_TMP with -autofree 2020-05-25 12:46:18 +02:00
pancake fe249cd1f8
pref: fix crash in 'v run' without arguments 2020-05-25 12:30:12 +02:00
Enzo Baldisserri d22609051a
checker: CallExpr with handled optional returns plain type 2020-05-25 11:32:14 +02:00
yuyi 30ca08aaa3
parser: fix self-referenced error 2020-05-25 11:31:04 +02:00
Delyan Angelov 96808a0e2a cgen: generalize _vcleanup of array/string consts + valgrind with tcc 2020-05-25 10:24:19 +03:00
Delyan Angelov ae03aab03e cgen: autofree math.bits and strconv.ftoa constants 2020-05-25 09:53:30 +03:00
Delyan Angelov 6683f98eba cgen: add support for `-printfn _vcleanup` and `-printfn _vinit` 2020-05-25 09:47:00 +03:00
Alexander Medvednikov 656bc6b6c8 tests: valgrind: strings are freed now! 2020-05-25 06:23:50 +00:00
Alexander Medvednikov f41e2c0a4b string: make replace() clone for now; parser: comptime method 2020-05-25 08:17:36 +02:00
Alexander Medvednikov 1b36d7a037 cgen: handle c++ keyword 2020-05-25 05:46:58 +02:00
Alexander Medvednikov 99ce3d456b jsgen: handle ComptimeCall 2020-05-25 05:38:47 +02:00
Alexander Medvednikov 1ef8eacd6e checker/gen: more generics fixes; ComptimeCall 2020-05-25 05:32:36 +02:00
yuyi ec7863d174
cgen: fix array_init of struct error 2020-05-25 04:45:16 +02:00
spaceface777 4189190bb8
jsgen: start implementing remaining `expr`s and `stmt`s 2020-05-24 22:49:01 +02:00
Uwe Krüger fd4d28b7b6
tests: update for stricter type checks 2020-05-24 21:07:32 +02:00
penguindark 4e66c12557
strconv: minor fixes 2020-05-24 21:06:35 +02:00
Delyan Angelov a0f8005352 checker: support tests/run/ folder, checks many warns/errors/output 2020-05-24 21:13:09 +03:00
Delyan Angelov 23e8c8ecda checker: prevent infinite recursion on a:=b b:=a 2020-05-24 20:55:04 +03:00
yuyi 641fe5c864
checker: fix unresolved variables error on assignments 2020-05-24 20:33:53 +03:00
Delyan Angelov 1754ba19d8 live: cleanup live_test.v output, remove 1s delay 2020-05-24 18:38:43 +03:00
Delyan Angelov d16485c29e live: make live_test.v more robust 2020-05-24 17:45:53 +03:00
Uwe Krüger 7c4f2b535b
cgen: prepare any_in, any_float on v side 2020-05-24 15:26:43 +03:00
Delyan Angelov ddcb5f7da3 gen: fix autogenerated print methods for vargs 2020-05-24 15:05:19 +03:00
Uwe Krüger c4fbae3edc
cgen: add definitions of any_float and any_int types to cheader 2020-05-24 11:28:25 +02:00
Delyan Angelov 2adfbfc830 builtin: fix a bug in array_delete 2020-05-24 11:10:41 +03:00
Alexander Medvednikov 7963e48ca1 tests: valgrind: disable string.replace() test for now 2020-05-24 07:33:33 +00:00
Alexander Medvednikov 494f4fe986 tests: valgrind: string.replace() 2020-05-24 07:19:58 +00:00
Delyan Angelov 06540f0e91 net: fix warnings due to uppercase consts 2020-05-24 07:39:47 +03:00
Alexander Medvednikov 85d19dd253 cmd/v: error-limit 2020-05-24 04:47:51 +02:00
Alexander Medvednikov 67750c91d7 generics: lots of fixes 2020-05-24 04:43:03 +02:00
yuyi 4608898bcd
checker: fix multiple assign immutable error 2020-05-23 17:30:28 +02:00
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