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

4435 Commits

Author SHA1 Message Date
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