Commit Graph

6752 Commits (b6d089b6053e44115b286329f1f63477d5c27815)

Author SHA1 Message Date
Delyan Angelov 5a231326d7
parser: improve syntax errors in module declarations 2021-03-11 10:42:36 +02:00
StunxFS 6a7ef4f5b2
v.scanner: fix position of hash statements (#9222) 2021-03-10 20:23:17 +02:00
penguindark c554e0b33d
gg.m4: fix a bug on translate, remove abs fn (#9224) 2021-03-10 20:20:17 +02:00
zakuro f280a5c230
checker: extract into call_array_builtin_method to cleanup (#9225) 2021-03-10 20:19:39 +02:00
zakuro ef73e07e62
checker: split fn_decl into functions to cleanup (#9226) 2021-03-10 20:18:48 +02:00
zakuro 791dec7b01
v: support `$if prod` (#9228) 2021-03-10 19:26:34 +02:00
Enzo 99abd46ac9
os: add `(read|write)_raw[_at]` to File (#9171) 2021-03-10 18:45:12 +02:00
Swastik Baranwal 8d84206a8c
cgen: fix match for one branch (#9234) 2021-03-10 18:44:32 +02:00
spaceface eefdad21c7
cgen: cleanup interface/sumtype casts (#9221) 2021-03-10 18:41:11 +02:00
Larpon 0a39c2b9ea
gg: expand C.ANativeActivity struct definition (#9231) 2021-03-10 18:38:20 +02:00
yuyi a187a4abb3
checker: check non-optional fn return or_block (#9227) 2021-03-10 12:53:23 +01:00
Delyan Angelov 0d2bb714bc
checker: disallow `x := [13]SumType{}` too 2021-03-10 11:07:36 +02:00
Delyan Angelov f5ebfefdc9
ci: use a smaller fixed size array for the const eval test (fixes failing windows job) 2021-03-10 10:40:41 +02:00
Joe Conigliaro fd2845e955
v.util: change naming behaviour for modules relative to working dir. closes #9138 2021-03-10 16:28:06 +11:00
Delyan Angelov 96a9e16e64
checker: allow `a := [5*kb]byte{}` where `kb` is a compile time known const too 2021-03-09 20:21:36 +02:00
Delyan Angelov 26cfd0eda9
checker: eval `const a = 1024 * 1024` and other simple integer expressions at compile time 2021-03-09 20:07:08 +02:00
spaceface f1469a8761
checker: allow accessing fields common to all sumtype members (#9201) 2021-03-09 19:16:18 +02:00
yuyi c4b0fdcbaf
cgen: fix for_in fixed_array of fixed_array literal (#9206) 2021-03-09 16:18:07 +02:00
yuyi e67ce5ea7b
cgen: fix error of alias interpolation (#9209) 2021-03-09 13:25:31 +02:00
Ned Palacios 114a7db6e5
vdoc: fix symbol filtering (#9210) 2021-03-09 13:05:50 +02:00
zakuro 00399b49ab
v.util: add util.tabs() (#9211) 2021-03-09 13:03:25 +02:00
yuyi fbc02cbc54
csv: fix reader_test.v (#9204) 2021-03-09 03:53:02 +01:00
Vassilis Panagiotopoulos b893373e63
cgen: make .alias fields in structs use their proper string format, instead of the default %d (#9197) 2021-03-08 23:36:59 +02:00
Delyan Angelov d7049ae2da
os: deprecate os.exec (returning ?os.Result), in favour of os.execute, which returns os.Result (#8974) 2021-03-08 20:52:13 +02:00
yuyi 10c9f61d61
checker: check empty map invalid syntax (fix #9162) (#9186) 2021-03-08 19:48:17 +02:00
StunxFS 9a7d9e047b
dl: move 'example' to 'examples/dynamic_library_loading' (#9187) 2021-03-08 18:21:43 +02:00
Taegon Kim 4d24cb0158
darwin: fix the C. function declarations (#9194) 2021-03-08 17:18:26 +02:00
yuyi b64d781a20
csv: fix error of read() (#9193) 2021-03-08 16:57:02 +02:00
yuyi 568faeed77
cgen: add `expr_string() and remove redundant codes (#9188) 2021-03-08 12:46:39 +02:00
yuyi f2e570d63c
tests: add `for` tests of labelled continue and break (#9189) 2021-03-08 12:45:12 +02:00
Delyan Angelov 33bd22eda9
vlib/v/gen/tests: remove obsolete generation tests (used during the AST migration from v1 to v2) 2021-03-07 18:47:58 +02:00
pancake ed9ca0b7bd
build: add address sanitizer make target (#9044) 2021-03-07 16:44:54 +01:00
zakuro 4c3ce97763
parser: fix Enum.value when Enum is an imported symbol (#9046) 2021-03-07 16:44:38 +01:00
Miccah a1e0f2bc46
gen: add argument names to compile-time method struct (#9174) 2021-03-07 14:28:43 +01:00
yuyi 1b47e2953d
checker: check undefined ident of struct (#9164) 2021-03-07 14:09:38 +01:00
Delyan Angelov f1c4e962f4
tests: add tests for `-d debug`, `-cg`, `-g` in combination for `[if debug]fn` etc 2021-03-07 12:42:30 +02:00
Delyan Angelov 64bc2fb40a
v: fix `[if debug] fn abc(){} ... abc()` 2021-03-07 12:05:07 +02:00
Delyan Angelov c15de57f0f
tests: simplify the profile_test.v example program to not use `net`
(avoids unrelated openssl dependency)
2021-03-07 12:05:06 +02:00
Delyan Angelov d0b89c5675
tests: rename for_c_multi_vars.v to for_c_multi_vars_test.v 2021-03-07 12:05:06 +02:00
nyx-litenite a902178fdb
arrays: implement python-inspired array zip function and test (#8667) 2021-03-07 11:58:13 +02:00
yuyi 82085b0140
cgen: fix for_in map of fixed_array (#9133) 2021-03-07 11:41:08 +02:00
zakuro 45d51c76da
v.util: add an iabs(x) helper (#9172) 2021-03-07 11:24:05 +02:00
Lukas Neubert 6048d0e974
fmt: fix backslash doubling in attribute string args (#9175) 2021-03-07 09:44:58 +02:00
Lukas Neubert 053d6870d2
fmt: respect user choice of empty lines between type declarations (#9135) 2021-03-06 21:05:55 +02:00
Lukas Neubert fdcfe397d4
fmt: write empty or blocks the same as empty fn bodies, empty structs, etc (#9136) 2021-03-06 21:04:51 +02:00
Lukas Neubert 043c29cf95
fmt: fix string interpolation with CastExpr (#9137) 2021-03-06 20:47:19 +02:00
Bartimus ce92bf8da0
os.File: add .read_struct_at and .write_struct_at (#9114) 2021-03-06 20:44:53 +02:00
zakuro 7333b1706c
checker: minor cleanup: clear_flag(.optional) in check_expr_opt_call (#9139) 2021-03-06 20:42:34 +02:00
zakuro b83530e0ed
fmt: extract part of fmt.v into struct.v (#9141) 2021-03-06 20:40:44 +02:00
Lukas Neubert 7f7f9dca6b
parser,fmt: fix regression with non-void arrays in if conditions (#9161) 2021-03-06 20:39:38 +02:00
Delyan Angelov 849cde245c
v: support dump(expr) (#9160) 2021-03-06 18:09:28 +01:00
penguindark 270df58057
gg.m4: fixed some bugs, added ortho projection (#9140) 2021-03-06 12:14:43 +02:00
yuyi c802515e71
cgen: minor optimization in gen_code buffer init (#9143) 2021-03-06 12:03:38 +02:00
R cqls 204f57d227
os: update C apis used in os_android.c.v (#9134) 2021-03-05 19:20:11 +02:00
Larpon 07a1a9b84d
builtin: use fprintf to print to stderr on Android (#9130) 2021-03-05 19:12:42 +02:00
Delyan Angelov fa530683c7
v: fix warnings for `v self` 2021-03-05 17:24:00 +02:00
Alexander Medvednikov 845e8decce x64: basic mach-o and arm64 support 2021-03-05 17:52:39 +03:00
Joe Conigliaro 818be80581
parser: fix [] in if expr. closes #9131 2021-03-06 01:43:34 +11:00
joe-conigliaro 2d73411396
checker: define missing C fn args & check C & JS args (#8770) 2021-03-05 17:41:11 +03:00
Lukas Neubert ead2ba6004
fmt: proper single line check for ConcatExpr (#9121) 2021-03-05 15:36:49 +03:00
yuyi cbbfb460a7
cgen: fix for_in fixed_array (#9129) 2021-03-05 15:35:09 +03:00
zakuro 9ba312066e
fmt: extract type decls code into functions to cleanup (#9126) 2021-03-05 15:34:51 +03:00
Delyan Angelov 0f042124cb
tests: support `fn test_fn() ? { opt()? }` 2021-03-05 14:18:21 +02:00
yuyi f4c03e8ed8
cgen: minor optimization in for_in_array (#9127) 2021-03-05 07:58:09 +02:00
Lukas Neubert 80356edd8c
fmt: combine simple attributes into a single line (#9120) 2021-03-05 07:17:57 +02:00
Gal Pasternak 208cabc994
checker: fix generic type ignores implemented interface (#9124) 2021-03-05 06:59:18 +02:00
Alexander Medvednikov 7446d8dc44 strings: test Builder's cut_last on windows 2021-03-04 20:35:17 +03:00
Miccah 709d7460de
vweb: refactor form parsing and add tests (#9051) 2021-03-04 18:00:03 +02:00
Delyan Angelov 6da66226e5
vfmt: keep `mut:` in interface declarations (#9053) 2021-03-04 15:30:30 +02:00
zakuro 4f02da00ba
checker: check arguments count of sort (#9105) 2021-03-04 15:22:47 +02:00
Leah Lundqvist 65e888230a
jsgen: object equality checks, optimise casting and start builtin implementation (#9068) 2021-03-04 14:02:16 +01:00
Delyan Angelov 5e0e44eb69
os: move file methods to vlib/os/file.c.v, document them, add new file.read_struct and file.write_struct and tests 2021-03-04 14:54:39 +02:00
yuyi 6097045b46
cgen: minor cleanup of cgen.v (#9108) 2021-03-04 14:40:57 +02:00
pancake c65d65a3f5
v: use dash instead of lowerdash for -print-v-files (#9111) 2021-03-04 14:38:05 +02:00
Delyan Angelov eb1e1afbc1
ci: fix failing fn_trailing_arg_syntax_keep.vv 2021-03-04 13:05:14 +02:00
yuyi 7c893895d8
cgen: minor cleanup in infix_expr() (#9086) 2021-03-04 12:50:18 +02:00
zakuro 6b2c7fd53e
fmt: remove tail space when using multiline short arg (#9110) 2021-03-04 12:44:50 +02:00
Lukas Neubert 8ce53b8b55
fmt: prevent code corruption with struct update syntax as trailing function arg (#9091) 2021-03-04 12:44:17 +02:00
Lukas Neubert 28fc91acb7
fmt: minor cleanups (#9090) 2021-03-04 12:43:11 +02:00
spaceface 7663f826e5
cgen: add auto str method generation for interfaces (#9095) 2021-03-04 12:41:42 +02:00
yuyi 5f9af3f594
cgen: fix for_in array of fixed_array (fix #9098) (#9099) 2021-03-04 12:39:39 +02:00
zakuro 5b041db442
fmt: don't prepend mod when cast with selective imported types (#9109) 2021-03-04 12:33:52 +02:00
James Addison a64d9b3e12
termui: add show_cursor() and hide_cursor() (#9087) 2021-03-04 12:31:26 +02:00
zakuro 9bb073580e
checker: replace checking type exists with c.ensure_type_exists (#9100) 2021-03-04 12:28:48 +02:00
yuyi 2870a5a63a
vrepl: fix array_filter (#9104) 2021-03-04 12:24:14 +02:00
yuyi 2b9ffbda42
cgen: fix array_sort by different order of a/b (#9106) 2021-03-04 11:19:02 +01:00
Larpon d08f994e19
clipboard: ensure public method access after #9062. Fixes #9089 (#9107) 2021-03-04 10:49:40 +02:00
Delyan Angelov 2bfa6dfe2f
io: fix not reading the last byte of a stream with `.read(mut buf)` 2021-03-04 08:59:48 +02:00
Lukas Neubert 0f8f8bd90d
fmt: force empty lines after struct declarations and most functions (#9096) 2021-03-03 23:56:40 +01:00
Enzo 3e5a0dfc94
time: minor cleanup of operators (#9097) 2021-03-03 23:56:14 +01:00
yuyi 822d20d2cc
cgen: minor simplification of struct zero init (#9085) 2021-03-03 16:03:50 +01:00
Patrick Hintermayer 38495da07e
docs: add a basic vweb getting started example (#9073) 2021-03-03 14:39:04 +02:00
yuyi 6825b4cb30
cgen: format if_expr generated c codes (#9084) 2021-03-03 14:33:00 +02:00
Subhomoy Haldar a5dd7faf3c
rand: add PRNG interface and unit-tests (#9083) 2021-03-03 13:41:00 +02:00
Nick Treleaven 412c17ccda
checker: check private built-in methods are not accessible (#9062) 2021-03-03 11:12:50 +02:00
Nick Treleaven bd6693efb8
gg/m4: fix unnecessary uses of [direct_array_access], add [unsafe] (#9059) 2021-03-03 10:20:13 +02:00
Lukas Neubert 460e06b9ff
fmt: do not insert a newline before returned $vweb.html() (#9063) 2021-03-03 10:14:05 +02:00
yuyi 97f9abcf82
cgen: fix anon_fn in containers (#9077) 2021-03-03 10:12:08 +02:00
Uwe Krüger dd475f4e37
checker/cgen: enable `IfGuardExpr` for `a[k]` and `<-ch` (#9065) 2021-03-03 10:10:38 +02:00
StunxFS dad7c40306
checker: minor cleanup in `call_method` (#9066) 2021-03-03 10:07:16 +02:00