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

4457 Commits

Author SHA1 Message Date
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 drop 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 exprs and stmts 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
Alexander Medvednikov
473ffb5489 builtin: fix a leak in array_str 2020-05-05 18:04:43 +00:00
Sandro Martini
50351eded8
tests: interface: minor fixes 2020-05-05 19:56:11 +02:00
Alexander Medvednikov
fd0f8d06f8 tests: valgrind: use correct flag 2020-05-05 17:55:11 +00:00
Delyan Angelov
9e715b8701 cgen: use c_name() while generating code for or {} 2020-05-05 19:28:25 +03:00
Alexander Medvednikov
ff88906e9a cgen: add new to reserved words 2020-05-05 16:50:59 +02:00
Delyan Angelov
ddb5a8e6e4 time: add specialized vpc_now_darwin to fix -os cross 2020-05-05 17:31:21 +03:00
Sandro Martini
dd2a1455dc
tests: add another function to the Animal interface 2020-05-05 16:27:05 +02:00
Tanel Liiv
b16281d6e4
cgen: pass around functions 2020-05-05 16:21:21 +02:00
Alexander Medvednikov
7e71799980 checker: check none properly 2020-05-05 15:29:52 +02:00
Alexander Medvednikov
a0ca68ce3f checker: do not allow string(int) 2020-05-05 15:26:42 +02:00
Alexander Medvednikov
c5d295c378 fmt: move struct init logic to a separate fn 2020-05-05 15:06:51 +02:00
Alexander Medvednikov
148661ead6 json: wrap up: encode_array() 2020-05-05 14:54:12 +02:00
Alexander Medvednikov
b3d7b0205a json: handle field attributes 2020-05-05 14:41:27 +02:00
Delyan Angelov
a3bc32f3e0 builder: use time.new_stopwatch instead of benchmark.new_benchmark (reduces exe size) 2020-05-05 15:31:38 +03:00
Alexander Medvednikov
ee92060d4d json: decode_array fix 2020-05-05 14:19:31 +02:00
Alexander Medvednikov
ef6c418eb6 json: decode arrays 2020-05-05 13:23:44 +02:00
Steve Phillips
84fc587ec2
cgen: use a temp var in map() 2020-05-05 10:29:23 +02:00
yuyi
6aca3be474
cgen: fix []map[string]string.str() error 2020-05-05 08:46:19 +03:00
Ned Palacios
507e457c0a
builtin: add parenthesis around frame_addr as a workaround 2020-05-05 08:35:26 +03:00
Delyan Angelov
f9fe5b60a7 v doc: skip _x.c.v when not on x, i.e. filter files like v itself 2020-05-05 08:08:03 +03:00
Alexander Medvednikov
621cb7b914 parser: short struct init syntax 2020-05-05 02:12:51 +02:00
Uwe Krüger
a4b6c3fa5d
cgen: hex representation of signed and pointers 2020-05-05 00:24:33 +02:00
Steve Phillips
081338b8bf
checker.v: suggest []Type{}, not []Type 2020-05-05 00:20:32 +02:00
Delyan Angelov
1c945faa15 cgen: fix _to_Interface_INAME conversion fns generation 2020-05-05 00:01:54 +03:00
Delyan Angelov
b5fda6e410 cgen: skip interface outside methods, while generating _interface_methods struct 2020-05-04 22:56:58 +03:00
Alexander Medvednikov
32a7bd3a48 parser/checker: do not allow using private types from other modules 2020-05-04 21:56:41 +02:00
Alexander Medvednikov
9aa1a65489 checker: check match condition 2020-05-04 21:03:18 +02:00
Alexander Medvednikov
9823d80e0c json: minor fixes + bring back the test 2020-05-04 20:43:22 +02:00
Delyan Angelov
6e1825b417 cgen: prefix with v_ keyword C fn args too 2020-05-04 19:55:21 +03:00
joe-conigliaro
c9798d3918
table: fix check for fn with no args 2020-05-05 02:44:10 +10:00
joe-conigliaro
2bb995274e
table: make table.check ret false & update fn args check 2020-05-05 02:34:11 +10:00
Delyan Angelov
d7e7113047 cgen: fix for char in nums {} 2020-05-04 18:57:33 +03:00
joe-conigliaro
b2157388d9
checker: check method args 2020-05-05 01:32:40 +10:00
Delyan Angelov
36bf99ed5a parser: remove forgotten ----- line 2020-05-04 18:28:55 +03:00
Delyan Angelov
d30eefc3be fmt: improve handling of map[k]v and []map[k]v types 2020-05-04 18:27:07 +03:00
Alexander Medvednikov
fd8a194df0 json: wrap up decode() 2020-05-04 16:46:39 +02:00
Delyan Angelov
5eb71c4a13 fmt: initial support for -debug 2020-05-04 17:27:41 +03:00
Don Alfons Nisnoni
23df9b052e
mysql: update code & add a feature to get value as map 2020-05-04 14:58:24 +02:00
ka-weihe
f27fd63f8c
builtin: map: one voidptr for all values 2020-05-04 14:56:19 +02:00
Enzo Baldisserri
8fd69e845f
cgen: fix using pointer as interface receiver 2020-05-04 14:21:03 +02:00
Delyan Angelov
0e241162d9 panic: distinguish between builtin and main modules 2020-05-04 14:51:30 +03:00
Delyan Angelov
cdf70c070b tests: add panic_with_cg.vv/.out 2020-05-04 14:34:51 +03:00
joe-conigliaro
57903247e3
parser: add back struct field removed by accident 2020-05-04 21:27:54 +10:00
yuyi
90fc23ccfb
checker: fix array init []type{cap: x.len} error 2020-05-04 13:22:09 +02:00
Uwe Krüger
f831910c5c
utf: fix string length calculation for combining characters 2020-05-04 13:21:11 +02:00
ka-weihe
a72f3ed0c7
builtin: voidptr.str() and byteptr.str() 2020-05-04 13:20:18 +02:00
joe-conigliaro
d75f286230
parser: store FnDecl body position and use for scope 2020-05-04 20:31:34 +10:00
joe-conigliaro
4571a5eb83
gen: use middle of fn pos to load correct scope for free 2020-05-04 20:08:37 +10:00
yuyi
c112b3aec5
tests: fix cleanup of compiler_test.v on windows 2020-05-04 11:33:54 +02:00
Delyan Angelov
068da2ea0f builtin: fix warning about unused skipframes 2020-05-04 12:05:08 +03:00
Alexander Medvednikov
eca24c5d11 tests: interface: rename Speaker to Animal 2020-05-04 10:58:42 +02:00
Delyan Angelov
acd80f052b
tests: improve diagnostic output on failure 2020-05-04 11:21:25 +03:00
yuyi
e0e064ff08
scanner: fix string slash line breaks error 2020-05-04 10:19:23 +02:00
yuyi
cd5dccd855
gen: fix compilter_test.v error on windows 2020-05-04 10:09:49 +02:00
Enzo Baldisserri
4b3ce79e84
interface: support arguments in methods and simplify 2020-05-04 00:14:59 +02:00
Delyan Angelov
71a92eb87b tests: fix CI failing for builtin __as_cast 2020-05-03 22:25:38 +03:00
Delyan Angelov
242670a33d compiler: add support for panic_debug with -cg 2020-05-03 22:13:59 +03:00
Delyan Angelov
0b750a234f repl: fix for single lines ending with // comment 2020-05-03 20:48:46 +03:00
Delyan Angelov
845ffb59a6 live: use mostly pure V code for reloading, eases customization 2020-05-03 20:22:24 +03:00
Uwe Krüger
4a096bd133
parser: fix string interpolation for default conversion 2020-05-03 18:12:59 +02:00
Alexander Medvednikov
de749e9d3b parser/cgen: interface <<; any type 2020-05-03 18:08:45 +02:00
Alexander Medvednikov
2a016d03ac checker: use []int instead of array_int in errors 2020-05-03 16:49:05 +02:00
Alexander Medvednikov
2a5421133d clipboard: Linux fixes 2020-05-03 16:39:26 +02:00
Alexander Medvednikov
361fad9231 tests: disable valgrind test until fn scopes are fixed 2020-05-03 16:29:15 +02:00
Alexander Medvednikov
16fe8103ba tests: bring back valgrind test 2020-05-03 13:12:05 +02:00
joe-conigliaro
8df7637853
checker: dont re match/cast with position() when already cast to sum type 2020-05-03 14:22:41 +10:00
Delyan Angelov
7e4e3abc2c compiler: circuimvent the dependency cycle v.ast <-> v.table 2020-05-02 22:52:10 +03:00
Delyan Angelov
dbbfb04e7c docs: change obsolete -show_c_cmd to -showcc and -keepc 2020-05-02 19:01:53 +03:00
yuyi
02807aab43
interpolation: fix error on windows_gcc 2020-05-02 18:22:34 +03:00
Alexander Medvednikov
b0018ed594 checker: better << error 2020-05-02 16:48:52 +02:00
joe-conigliaro
483f0f408c
ast: allow scope var shadowing 2020-05-02 23:46:53 +10:00
Tanel Liiv
68ca8ab8a4
array: nested map() 2020-05-02 15:26:58 +02:00
Alexander Medvednikov
44c00199b6 cgen: fix fixed array consts and pointer interfaces 2020-05-02 15:18:58 +02:00
joe-conigliaro
a9a8539e41
checker: small fix in assign_stmt 2020-05-02 20:21:28 +10:00
joe-conigliaro
fd925fbd05
checker: simplify assign_stmt & add better checks 2020-05-02 19:45:08 +10:00
Alexander Medvednikov
06d533b0c1 cgen: clean up _STR 2020-05-02 11:11:32 +02:00
eyelash
716d867f25
cgen: generate static C functions 2020-05-02 10:42:38 +02:00
Alexander Medvednikov
06173834c0 cgen: interface_call() 2020-05-02 10:10:52 +02:00
Delyan Angelov
aa9bb6f71a compiler: fix -live compilation of bounce example with gcc-9 & clang 2020-05-02 02:36:29 +03:00
Alexander Medvednikov
7a51d4d796 cgen: revert new 2020-05-02 00:59:06 +02:00
Alexander Medvednikov
7dc98120c0 cgen: vfmt -live fix; add new to c_reserved 2020-05-02 00:45:45 +02:00
Uwe Krüger
170ee4312f
cgen: string interpolation field width support for large integers and utf8 strings 2020-05-02 00:43:59 +02:00
Alexander Medvednikov
2f64594ce0 cgen: more interface fixes 2020-05-02 00:28:46 +02:00
Delyan Angelov
7038f59ca5 compiler: add back support for -live 2020-05-02 01:14:44 +03:00
eyelash
130324df76
compiler: remove debug prints 2020-05-02 00:10:36 +02:00
yuyi
b21be7f670
parser: multiple names error 2020-05-01 18:18:58 +02:00
yuyi
de272654f1
repl: fix import xxx with no fn main error 2020-05-01 18:12:18 +02:00
eyelash
4d04e88679
errors: show line numbers in default color and add a space 2020-05-01 14:46:12 +02:00
eyelash
6b08cbcb7a
compiler: print warnings in magenta 2020-05-01 13:44:15 +03:00
Alexander Medvednikov
0106eb1cf6 cgen: fix thread wrapper 2020-05-01 12:32:10 +02:00
Alexander Medvednikov
0b8a0d1640 checker: fix _ check 2020-05-01 12:22:39 +02:00
joe-conigliaro
fb1c60c53d
checker: add back check struct field fn args 2020-05-01 20:12:21 +10:00
Alexander Medvednikov
c1ee14cc3e json: decode() part 1 2020-05-01 12:02:31 +02:00
joe-conigliaro
a0e662bef9
checker: remove debug println from selector_expr 2020-05-01 19:54:47 +10:00
joe-conigliaro
03904085c4
checker: check fn field exprs 2020-05-01 19:50:32 +10:00
Delyan Angelov
35f56bc4f0 vfmt: fix eating ? in $if x ? {}, missing newline in __global ... 2020-05-01 12:29:23 +03:00
Delyan Angelov
59525c8c93 tests: fix missing ? after v fmt run 2020-05-01 12:01:30 +03:00
Delyan Angelov
84785bbb59 tests: fix msvc transient failures when sleep_ms takes longer 2020-05-01 11:58:56 +03:00
Alexander Medvednikov
51da324465 tests: fix eventbus_test.v 2020-05-01 10:57:19 +02:00
Delyan Angelov
3608c81cb9 time: add stopwatch_test.v 2020-05-01 10:21:15 +03:00
Tanel Liiv
182e7071bf
array: map() function 2020-05-01 00:29:54 +02:00
Alexander Medvednikov
b0c710c985 checker: allow fn == 0 comparison for now 2020-04-30 18:51:33 +02:00
Delyan Angelov
a6dfc6d46b compiler: support ctags with -print_v_files and .ctags.d/v.ctags 2020-04-30 19:45:50 +03:00
Alexander Medvednikov
250dea7bd1 cgen: another imported interface fix 2020-04-30 18:23:17 +02:00
Alexander Medvednikov
f1903f3c1f parser: fix imported interfaces 2020-04-30 18:06:14 +02:00
Alexander Medvednikov
9971c58ca3 all: remove var key 2020-04-30 16:55:33 +02:00
Alexander Medvednikov
20013e4b4b table: interfaces: unique gen_types 2020-04-30 16:48:46 +02:00
Tim Basel
473617f061
cli: add option with default 2020-04-30 12:18:46 +02:00
yuyi
5481c0fc84
parser: uniform handling of enum field format 2020-04-30 12:18:16 +02:00
yuyi
81ed6ad2a1
checker: check duplicate consts 2020-04-30 12:17:31 +02:00
yuyi
4d415e56d6
checker: check enum field name duplicate 2020-04-30 09:34:18 +02:00
Enzo Baldisserri
50491670af
fmt: fix formatting backtick char literal 2020-04-30 09:33:43 +02:00
yuyi
c4f672454f
checker: check import duplicates 2020-04-30 09:33:12 +02:00
Henrixounez
f6d74c8a37
checker: error on ternary if type mismatch 2020-04-30 09:32:29 +02:00
Alexey
54d1a29267
dl: improve module 2020-04-29 21:01:19 +02:00
Delyan Angelov
e5ae4b6454 parser: fix match exprs over C.VALUES (needed for C.GLFW_KEY_UP) 2020-04-29 20:35:57 +03:00
yuyi
b2a076e8b8
csv: fix last-field-empty error 2020-04-29 16:50:02 +02:00
Tim Basel
3e4cd12fd0
.gitignore: ignore all binary files by default 2020-04-29 16:49:13 +02:00
Alexander Medvednikov
03cee3fee0 builder: fix run & is_test check 2020-04-29 16:44:50 +02:00
Alexander Medvednikov
be0e848ae8 builder: do not allow v run _test.v 2020-04-29 14:52:32 +02:00
yuyi
1fabb7d5a6
checker: fix string.str() error 2020-04-29 13:51:42 +02:00
Enzo Baldisserri
390d88f933
parser: fail for section redefinition in struct 2020-04-29 13:32:39 +02:00
joe-conigliaro
98cd013908
cgen: fix interface struct sorting 2020-04-29 21:08:39 +10:00
Alexander Medvednikov
51d0ce0222 tests: more interface tests; checker: handle zero selectorexpr type error 2020-04-29 12:46:09 +02:00
Henrixounez
c500044bae
checker: unreachable code warning 2020-04-29 12:31:18 +02:00
Alexander Medvednikov
2fc05b814c all: interface arrays 2020-04-29 12:21:15 +02:00
Delyan Angelov
3d8853af2b builder: move warning/error printing into print_warnings_and_errors 2020-04-29 13:04:09 +03:00
Delyan Angelov
1e910c6afe tests: add reference_field_must_be_initialized.vv 2020-04-29 12:56:12 +03:00
Delyan Angelov
bf8ed1815c builder: print collected checker warnings too 2020-04-29 12:38:43 +03:00
penguindark
ad46e1b832
strconv: v_printf documentation
* v_printf documentation

* syntax fix
2020-04-29 12:25:38 +03:00
Delyan Angelov
0e765e34be vfmt: extract v.util.find_working_diff_command, color_compare_files 2020-04-29 11:51:45 +03:00
Delyan Angelov
dd3434598c checker_test: remove generated .v files, when a test is OK 2020-04-29 11:48:51 +03:00
yuyi
117649f40d
checker: check devision by zero (int and float) 2020-04-29 10:07:27 +02:00
yuyi
2b48ce21df
checker: make sure main has no args and doesn't return 2020-04-29 09:19:46 +02:00
yuyi
a9e33e712a
checker: check struct field name duplicate 2020-04-29 09:11:36 +02:00
Henrixounez
0dc7a57e1f
scanner: prevent panic with string starting on first character 2020-04-28 18:57:16 +02:00
Delyan Angelov
8c526ad05b tests: ignore vlib/v/checker/tests/*.v files (only *.vv are sources there) 2020-04-28 16:45:25 +03:00
Henrixounez
0afaef5818
checker: ambiguous function call error
* checker: ambiguous function call error

* checker: ambiguous function call error wording

* checker: ambiguous functions tests newline
2020-04-28 16:27:49 +03:00
Delyan Angelov
8a81aa5c93 errors: disambiguate between variable and fn source_context 2020-04-28 16:20:50 +03:00
Delyan Angelov
7924b4d77c compiler: handle a panic when an error is produced, but source == '' 2020-04-28 16:15:56 +03:00
Delyan Angelov
8ea087f957 vfmt: fix compilation; handle the case when fmt.tabs is not enough 2020-04-28 16:04:37 +03:00
Delyan Angelov
c6a15dba50 compiler: add support for size_t 2020-04-28 15:07:19 +03:00
jm-duro
210b6e36b6
http: mutable request fields 2020-04-28 13:57:48 +02:00
Alexander Medvednikov
1e4e882bc2 cc/cgen: cached modules fixes 2020-04-28 13:15:37 +02:00
Sandro Martini
761fb930ce
dl: add dynamic load module 2020-04-28 11:53:55 +02:00
Enzo Baldisserri
7bf8731778
checker: check variable mutability for postfix exprs 2020-04-28 11:20:19 +02:00
Delyan Angelov
54b71242fe builder: add autofree compatibility; protect against b.str() twice in a row 2020-04-28 11:03:43 +03:00
yuyi
f2060d431e
checker: check division by zero 2020-04-28 09:52:01 +02:00
joe-conigliaro
ef4f4825ac cgen: auto dereference for optional 2020-04-28 15:59:41 +10:00
yuyi
28f5920bb0
cgen: fix map fixed-array .str() error 2020-04-28 07:22:46 +02:00
yuyi
b20777df59
checker: main function called error 2020-04-28 07:21:50 +02:00
Major Taylor
9edbcb823c
cli: Fix off-by-one error in smart-wrap 2020-04-28 00:10:36 +03:00
Enzo Baldisserri
682838a0cf
checker: check array and fields mutability 2020-04-27 22:53:26 +02:00
Alexander Medvednikov
5d073dcce5 x64: # opcodes 2020-04-27 21:38:58 +02:00
joe-conigliaro
9f76a7b250
parser: simplify unused vars & add loop/if vars etc 2020-04-27 23:16:31 +10:00
Delyan Angelov
e67bf674e3 scanner: cleanup, only v.parser now depends on v.scanner 2020-04-27 16:08:04 +03:00
yuyi
e9f764db4f
cgen: uniform string output format 2020-04-27 14:48:28 +02:00
Alexander Medvednikov
eb8973c362 builder: module caching fixes 2020-04-27 14:46:25 +02:00
Alexander Medvednikov
f005079e0b pref: rename keep_c 2020-04-27 13:28:00 +02:00
ka-weihe
18faaefe82
map: get: remove malloc and memcpy 2020-04-27 13:27:33 +02:00
Delyan Angelov
73106b5f5e profile: measure defer{} statements too 2020-04-27 13:18:37 +03:00
Alexander Medvednikov
fde929ee30 cgen: remove tos3() call: part 1 2020-04-27 12:10:08 +02:00
Delyan Angelov
dd1ee39271 profile: produce civilized output 2020-04-27 12:45:19 +03:00
yuyi
99a7b69578
cgen: optimize map_to_string format 2020-04-27 10:52:21 +02:00
Delyan Angelov
c84dee5968 profile: move profiling related logic into vlib/v/gen/profile.v 2020-04-27 09:40:13 +03:00
yuyi
95754f211f
cgen: generate str function when using x.str() 2020-04-27 08:09:37 +02:00
Alexander Medvednikov
3256d060f7 array: inline ensure_cap 2020-04-27 07:39:33 +02:00
Alexander Medvednikov
ef26f27753 builtin: replace isnil calls for perfomance 2020-04-27 07:13:36 +02:00
Delyan Angelov
e523540f3a profile: use specialized time__vpc_now 2020-04-26 22:14:54 +03:00
Alexander Medvednikov
50a83736ff checker: struct init: handle C types 2020-04-26 19:59:03 +02:00
Alexander Medvednikov
8223efe9df checker: check struct field types 2020-04-26 18:38:29 +02:00
Alexander Medvednikov
83552a0d58 array: replace make() with the new init syntax 2020-04-26 17:52:27 +02:00
Alexander Medvednikov
f23948010a parser: new array init syntax 2020-04-26 17:28:48 +02:00
penguindark
d16474442a
strconv: format test fixes 2020-04-26 16:26:33 +02:00
yuyi
2574dce174
all: fix remaining []array warnings 2020-04-26 16:25:54 +02:00
yuyi
9f4d498ff1
all: updateimport () and []array 2020-04-26 13:49:31 +02:00
Larpon
7b39ab6d06
string: fix replace_each edge case error message 2020-04-26 12:40:39 +02:00
Enzo Baldisserri
0f2f97e3e5
checker: reorganize tests to match fmt tests 2020-04-26 12:34:42 +02:00
Alexander Medvednikov
41eb4453e3 parser: do not allow redefinition of fn args 2020-04-26 12:01:10 +02:00
Alexander Medvednikov
153ac230ec tests: use new array init syntax, fix mutability 2020-04-26 11:56:30 +02:00
Alexander Medvednikov
0641a31fe0 parser: allow mutable pointer args 2020-04-26 11:53:41 +02:00
eyelash
b495dac780
fix a few warnings
Good find, @eyelash .
2020-04-26 12:42:44 +03:00
Alexander Medvednikov
270566055f checker: make sure all FnDecl types are valid 2020-04-26 10:39:26 +02:00
Alexander Medvednikov
3c08f655af parser: do not allow mutable simple args 2020-04-26 10:35:10 +02:00
Alexander Medvednikov
a56121c329 checker: check mutability in index exprs; parser: set is_mut for args 2020-04-26 10:25:58 +02:00
Delyan Angelov
ee31339dfd parser: fix error position for use x := []Type{} 2020-04-26 10:42:46 +03:00
Alexander Medvednikov
d844ff1381 builder: fix msvc.v 2020-04-26 09:33:40 +02:00
Alexander Medvednikov
20bcb6b8bb tests: fix lef_shift test 2020-04-26 09:29:29 +02:00
penguindark
b67698888c
strconv: printf and string format utilities 2020-04-26 10:23:10 +03:00
Alexander Medvednikov
7955181c6c tests: [] fixes 2020-04-26 09:18:29 +02:00
Alexander Medvednikov
3ab8dc0092 parser: array init: []string => []string{} 2020-04-26 09:17:17 +02:00
yuyi
3a59f5727c
checker: fix check main function error (#4601) 2020-04-26 08:04:28 +02:00
Alexander Medvednikov
a48080afec parser: deprecate import(); replace remaining import()s 2020-04-26 07:36:02 +02:00
Delyan Angelov
48f9cc1ed7 tests: make alias_type_exists.vv use type Pigeon Bird syntax 2020-04-26 08:23:09 +03:00
Alexander Medvednikov
f7153ca4fa fmt: array_init(); parser: fn_redefinition_error() 2020-04-26 07:17:01 +02:00
Delyan Angelov
620fc962d7 builtin: use single line imports, to make analysis easier 2020-04-26 08:06:39 +03:00
Alexander Medvednikov
3166833471 parser: fix interface method return type parsing 2020-04-26 07:03:26 +02:00
yuyi
9cfb1e3bf7
cgen: fix struct with fixed array error 2020-04-26 06:54:14 +02:00
Enzo Baldisserri
0b3412cdb5
checker: check that type exists in TypeDecl 2020-04-26 06:40:54 +02:00
yuyi
541b058e90
all: use a !in b instead of !(a in b) 2020-04-26 06:39:23 +02:00
Alexander Medvednikov
2b4ac0e63a checker: handle array of interfaces 2020-04-26 06:29:03 +02:00
Alexander Medvednikov
8000eb3656 parser: revert silent _ prefix rule 2020-04-26 05:34:34 +02:00
Alexander Medvednikov
60a0ba5eaa table: minor interface clean up 2020-04-26 05:34:34 +02:00
Delyan Angelov
a77640165e compiler: faster vmod lookup 2020-04-25 23:43:46 +03:00
Delyan Angelov
08799792a7 tests: fix regex test 2020-04-25 23:42:48 +03:00
Delyan Angelov
cd27300d75 cookie: fix a new match error about redundant else 2020-04-25 23:02:04 +03:00
Delyan Angelov
19d7553d67 tests: fix vlib/net/http/cookie_test.v 2020-04-25 22:53:18 +03:00
Enzo Baldisserri
3e68e429b6
checker: avert if else is unnecessary 2020-04-25 21:51:44 +02:00
Alexander Medvednikov
e0f9c042c1 cgen: interface fixes 2020-04-25 21:24:12 +02:00
Delyan Angelov
86ba1645b0 os: add os.input(prompt) 2020-04-25 22:04:12 +03:00
Enzo Baldisserri
c73d91a8fe
fmt: TypeDecl; format more files 2020-04-25 20:58:00 +02:00
Ruofan XU
d86539c4f5
checker: clean up infix_expr 2020-04-25 20:28:49 +02:00
ka-weihe
d72e401378
string: optimize eq 2020-04-25 20:19:53 +02:00
Alexander Medvednikov
b7e5be41f5 checker/cgen: as fixes 2020-04-25 18:41:12 +02:00
yuyi
c26e83f58a
array: fix fixed array errors 2020-04-25 18:26:38 +02:00
yuyi
ec9566988a
cmdline: minor optimizaztion 2020-04-25 17:49:51 +02:00
Enzo Baldisserri
fb54a2635c
fmt: lots of fixes 2020-04-25 17:49:16 +02:00
Delyan Angelov
7c080c5d4a checker: prevent x := voidfn() 2020-04-25 18:06:34 +03:00
Larpon
6a834c0528
checker: use 'mut' instead of 'var' in error message 2020-04-25 17:51:12 +03:00
Delyan Angelov
a20bef65ba fmt: workaround a vfmt limitation preventing formatting of vlib/v/ast/ast.v 2020-04-25 17:34:42 +03:00
Delyan Angelov
9a19531909 compiler: add support for [if myflag] void fn/methods 2020-04-25 16:57:11 +03:00
Delyan Angelov
945f964c0c parser: stay silent about unused variables starting with _ 2020-04-25 15:38:15 +03:00
joe-conigliaro
aacc3c6f7e
cgen: generate str for variadic (#4587) 2020-04-25 22:23:47 +10:00
Delyan Angelov
4bcdf11743 cgen: support -profile - and -profile x.txt 2020-04-25 13:41:49 +03:00
Delyan Angelov
eecf92cdb0 cgen: implement -profile support. 2020-04-25 13:05:49 +03:00
joe-conigliaro
41cc96aaec
revert parser: simplify array push detection 2020-04-25 18:57:12 +10:00
joe-conigliaro
4675656786
parser: simplify array push detection 2020-04-25 18:42:53 +10:00
Delyan Angelov
e0ab318f56 cgen: add support for v -printfn main file.v 2020-04-25 11:15:57 +03:00
joe-conigliaro
900d96c638
parser: allow deref assign without parens pt2 update vlib 2020-04-25 18:14:01 +10:00
joe-conigliaro
7177e71444
revert parser: allow deref assign without parens pt2 update vlib 2020-04-25 18:11:14 +10:00
joe-conigliaro
f92cf69e60
parser: allow deref assign without parens pt2 update vlib 2020-04-25 18:09:52 +10:00
joe-conigliaro
9fff8733a0
parser: allow deref assign without parens pt1 2020-04-25 18:07:30 +10:00
joe-conigliaro
6696e1a6e2
table: move set_nr_muls to method 2020-04-25 17:54:32 +10:00
Alexander Medvednikov
d54b48b300 table: interface cast fix 2020-04-25 09:18:10 +02:00
Alexander Medvednikov
9229a963ed array: use __new_array everywhere 2020-04-25 09:10:54 +02:00
joe-conigliaro
fbcdffbbc8
table: move Type functions to methods 2020-04-25 17:08:53 +10:00
Alexander Medvednikov
6248899d25 compiler_test: handle panics 2020-04-25 09:05:14 +02:00
Delyan Angelov
1c46dabc84 tetris: cleanup unused variable warnings 2020-04-25 09:49:02 +03:00
Alexander Medvednikov
48857090fc runtime as type check: part 2 2020-04-25 08:42:23 +02:00
Alexander Medvednikov
2d187fb951 runtime as type check: part 1 2020-04-25 08:36:53 +02:00
Alexander Medvednikov
f1f9e423c3 interfaces: preparatory fixes 2020-04-25 08:00:44 +02:00
Junya Okuno
5600fd8613
net.http: remove redundant httponly handling 2020-04-25 06:15:05 +02:00
Enzo Baldisserri
a924defb94
checker: check in left type 2020-04-25 06:14:17 +02:00
Enzo Baldisserri
fa4739794f
checker: fix "unnecessary ()" error position 2020-04-24 20:27:18 +02:00
Delyan Angelov
cc4090cc74 vfmt: remove unused variable check for vfmt 2020-04-24 20:25:11 +03:00
Delyan Angelov
8be10ffbd6 vfmt: always walk over all comptime branches 2020-04-24 19:05:55 +03:00
Delyan Angelov
f6f204387d cgen: fix for msvc 2020-04-24 18:44:25 +03:00
Delyan Angelov
c6a829ce82 cgen: support for error('abc').str() and printing errors 2020-04-24 18:35:33 +03:00
Enzo Baldisserri
323ca2b3bb
checker: check duplicates on match with no else
Refactor match duplication test to work even if there is not else, and to include every expression.
Add tests for duplicate expressions in match.
2020-04-24 17:04:39 +03:00
Delyan Angelov
aa15dec660 checker: check default struct field expression types 2020-04-24 16:46:55 +03:00
Delyan Angelov
d6899788dd time: add back vlib/time/time_linux.c.v 2020-04-24 15:28:16 +03:00
yuyi
afa9d42ff0
cgen: fix gen_str_for_array_fixed error 2020-04-24 12:36:45 +02:00
Alexander Medvednikov
a3382a5319 x64: debug opcodes nicely 2020-04-24 09:44:54 +02:00
Delyan Angelov
6bd34a069d benchmark: show xxx.yyy ms, using the new highres timer 2020-04-24 10:26:47 +03:00
Delyan Angelov
117ec722a2 time: remove temporary time__linux.c.v workaround 2020-04-24 09:12:34 +03:00
Delyan Angelov
20637ae54c time: restore building v on linux, till v.c is regenerated with -os cross 2020-04-24 09:00:07 +03:00
Delyan Angelov
863fab0268 comptime: enable again skipping parsing of other platform branches 2020-04-24 08:51:48 +03:00
Delyan Angelov
7a132e5c79 cgen: cleaner comptime ifdefs . 2020-04-24 08:42:31 +03:00
Major Taylor
25f2b171fc
time: Timer -> StopWatch; time.Duration 2020-04-24 07:33:25 +02:00
Leah Lundqvist
f3e3d7e0c5
websocket: update to work with latest V 2020-04-24 07:32:51 +02:00
yuyi
998fc8fc07
cgen: add gen_str_for_array_fixed 2020-04-24 07:32:27 +02:00
Alexander Medvednikov
c30c76c285 tests: fix x64 test 2020-04-24 05:26:29 +00:00
Delyan Angelov
6b31ebe456 Revert "comptime: enable again skipping parsing of other platform branches"
This reverts commit 0f4c5fb1c9.
2020-04-23 22:47:16 +03:00
Alexander Medvednikov
8cb88d5c9a x64: remove fn arg test for now 2020-04-23 20:55:23 +02:00
Delyan Angelov
ebc41375f1 os.executable: fix panic when os.executable_fallback fails (early in startup) 2020-04-23 21:53:18 +03:00
Alexander Medvednikov
1247718cbd x64: pass fn args 2020-04-23 20:27:34 +02:00
Delyan Angelov
0f4c5fb1c9 comptime: enable again skipping parsing of other platform branches 2020-04-23 20:45:16 +03:00
Delyan Angelov
4f4567513e comptime: fix $if debug {} when giving -cg or -d debug 2020-04-23 18:03:07 +03:00
Delyan Angelov
adb8fb1dc6 comptime: fix custom -d flags and $if x? {}. Fixes ftp_test.v . 2020-04-23 17:52:44 +03:00
Delyan Angelov
1a79e5419f tests: fix aes_test.v by manually dereferencing the mut dst parameter 2020-04-23 16:45:25 +03:00
yuyi
2b4f72ef64
parser: fix empty import error 2020-04-23 14:48:05 +02:00
yuyi
f2e505d962
tests: enable compiler_test.v on Windows 2020-04-23 14:15:15 +02:00
Delyan Angelov
8b5573a6f3 errors: use more distinct and detailed name redefinition messages 2020-04-23 13:15:01 +03:00
Enzo Baldisserri
7e400124e8
parser: allow blank ident in nested loops 2020-04-23 12:00:51 +02:00
Delyan Angelov
fb97c2e01e examples: fix path_tracing.v compilation, using (*ptr) = expression 2020-04-23 12:28:16 +03:00
Alexander Medvednikov
7f5e3b36bc x64: for loop 2020-04-23 05:29:07 +02:00
yuyi
5664cbd3d0
enum: check enum name and modify related files 2020-04-23 05:16:10 +02:00
Alexander Medvednikov
45e21085c7 tests: re-enable some old array tests 2020-04-23 04:23:19 +02:00
Alexander Medvednikov
9fe0ca5323 x64: ++ 2020-04-23 01:55:38 +02:00
Kris Cherven
d871595437
all: replace var with mut 2020-04-23 01:16:58 +02:00
yuyi
4e1abc8503
all: remove commas between enum vals 2020-04-23 01:16:16 +02:00
Alexander Medvednikov
d7ee4755c2 parser/cgen: interfaces (part 1) 2020-04-22 20:23:53 +02:00
Kris Cherven
faed178cb1
fmt: fix optional formatting 2020-04-22 20:12:58 +02:00
Enzo Baldisserri
fecf4ddf65
cgen: fix optional pointers 2020-04-22 20:12:30 +02:00
joe-conigliaro
de182d5809
parser: use single scope for fn args/body 2020-04-22 21:15:38 +10:00
joe-conigliaro
80a4fbf0be
parser: anon fn arg scope fix 2020-04-22 21:11:58 +10:00
joe-conigliaro
830b1807c1
test: add comment for assert bug in fn_test 2020-04-22 18:47:46 +10:00
joe-conigliaro
3ca4f5fada
checker/parser: anon fn call & return type fix 2020-04-22 18:41:57 +10:00
Delyan Angelov
4b8ed3f831 cgen: fixes for ustring, makes utf8_util_test.v pass 2020-04-22 10:35:14 +03:00
Alexander Medvednikov
50436a0e4a x64: local variables; if 2020-04-22 07:11:17 +02:00
joe-conigliaro
c35e0e49ce cgen: use gen_varg var in condition 2020-04-22 13:31:24 +10:00
joe-conigliaro
c1e8612624 checker/gen: allow vargs to be forwarded. fix/enable variadic test 2020-04-22 13:28:47 +10:00
Kris Cherven
b288ecb795
cgen: add map string generation 2020-04-22 04:00:38 +02:00
Kris Cherven
5c3742fbd2
parser: check var names in for loops 2020-04-22 03:48:51 +02:00
Kris Cherven
155891a4e0
parser: add unused variable warning 2020-04-22 01:52:56 +02:00
Uwe Krüger
08fac28c52
cgen: fix string interpolation for non-standard integer types 2020-04-22 01:48:53 +02:00
penguindark
34fd148f2f
ftoa: some fixes for rounding, new functions 2020-04-22 01:42:44 +02:00
joe-conigliaro
b9c0d2d362
cgen: fix passing high order function with body 2020-04-21 22:45:20 +10:00
yuyi
bc4a576c54
flag: fix flag_test.v 2020-04-21 14:44:17 +03:00
yuyi
a8dc0ccbcd
checker: add more op checks 2020-04-21 13:26:02 +02:00
Delyan Angelov
7c1d6b60c2 cgen: add g.auto_str_funcs, print &Struct pointers with enum fields 2020-04-21 13:32:17 +03:00
Alexander Medvednikov
baf3bf6778 uiold: make compile (fix vid); x64: mov rbp, rsp 2020-04-21 10:48:52 +02:00
Alexander Medvednikov
4471314291 clipboard: make the Linux version compile 2020-04-21 07:24:23 +00:00
Delyan Angelov
9d107007a1 x64: enhance diagnostic for unhandled nodes 2020-04-21 09:34:00 +03:00
Alexander Medvednikov
ab38605802 tests: disable clipboard on linux; x64: leave() 2020-04-21 06:16:47 +02:00
Alexander Medvednikov
77679d9650 tests: mark more tests as fixed 2020-04-21 05:52:44 +02:00
Alexander Medvednikov
9278a0cfba tests: fix mut_test; x64: sub32() 2020-04-21 05:49:03 +02:00
joe-conigliaro
abf5942433
parser/cgen: anon fn var & calling (#4534) 2020-04-21 13:23:36 +10:00
Alexander Medvednikov
ee2e83fef0 go back to mut. decisions, decisions... 2020-04-21 05:11:50 +02:00
Alexander Medvednikov
1bf094fbca parser: mut in receivers 2020-04-21 05:07:49 +02:00
Alexander Medvednikov
cc0e0ed281 fmt: single line match fix; x64: minor fixes 2020-04-21 04:51:53 +02:00
sambeckingham
4ea4d1c8c4
csv: handle missing line ending 2020-04-21 00:02:55 +02:00
Alexander Medvednikov
67a76cee1e tests: fix x64 output comparison 2020-04-20 22:57:41 +02:00
Alexander Medvednikov
10677c2b0c x64: fn call test 2020-04-20 22:36:12 +02:00
Alexander Medvednikov
871c29ea5d x64: fn calls; return; 2020-04-20 22:21:40 +02:00
sambeckingham
b1459ade69
csv: fix missing last column 2020-04-20 21:49:05 +02:00
Ruofan XU
f725b93019
tests: delete an unused file 2020-04-20 21:48:14 +02:00
Alexey
9c0d97335e
builtin: improve backtrace on Windows 2020-04-20 20:59:08 +02:00
Ruofan XU
cdb1b0344c
checker: improve type check for arithmetic assignment op and fix error pos 2020-04-20 20:56:05 +02:00
Major Taylor
dc8199709f
cli: add smart-wrap for help description 2020-04-20 14:50:15 +02:00
yuyi
717e26b45e
checker: more infix checks 2020-04-20 14:49:26 +02:00
yuyi
07f69fab19
checker: remove dots from error messages 2020-04-20 11:57:07 +02:00
Alexander Medvednikov
2805f8d0cc tests: fix x64_test.v 2020-04-16 14:19:14 +03:00
Alexander Medvednikov
78cbb7746f tests: fix hello.vv output 2020-04-20 09:07:19 +02:00
Alexander Medvednikov
2642f6a0da cgen: remove _PUSH 2020-04-20 09:04:17 +02:00
Alexander Medvednikov
e006da7259 parser: fix a bad comment 2020-04-20 08:44:14 +02:00
Alexander Medvednikov
4b329cb89d tests: fix a typo 2020-04-20 08:32:10 +02:00
Alexander Medvednikov
ee2f1652b5 fmt: add EOL 2020-04-20 08:30:42 +02:00
Alexander Medvednikov
639dc02cc8 x64: test hello world 2020-04-20 08:27:37 +02:00
Alexander Medvednikov
c1fc768c1b fmt: run on cmd/v; cgen: fix anonymous functions 2020-04-20 07:04:31 +02:00
Alexander Medvednikov
efff96d622 x64: make hello world run 2020-04-20 07:02:09 +02:00
Alexander Medvednikov
19a5436118 cgen: use faster array_push instead of _PUSH; re-fmt cgen.v 2020-04-20 03:54:41 +02:00
yuyi
be3bd520f6
checker: fix for in range type mismatch 2020-04-20 00:21:16 +02:00
Ruofan XU
5edd9cdc3a
checker: add type check for bit op 2020-04-19 22:29:45 +02:00
yuyi
dbb81b89fd
checker: fix type mismatch of in array 2020-04-19 22:26:58 +02:00
Daniel Däschle
b62bb22fa6
checker: allow C values in enum 2020-04-19 22:26:04 +02:00
Ruofan XU
6c59b306c7
checker: add type check for arithmetic assignment ops 2020-04-19 22:24:12 +02:00
yuyi
4de16e9f0f
tests: enable checker_error_test on windows 2020-04-19 20:48:13 +02:00
Keito Nagai
57859db07c
readme: fix docs link 2020-04-19 20:47:36 +02:00
Kris Cherven
95ae915c0c
checker/parser: fix outdated error messages 2020-04-19 20:46:48 +02:00
yuyi
27e04748ed
cgen:gen_str_for_array 2020-04-19 10:42:34 +02:00
Alexey
3ee858cd79
cgen: fix struct initialization bugs 2020-04-19 04:44:39 +02:00
Major Taylor
be0a8794c2
time: add Timer; refactor benchmark to use Timer 2020-04-19 03:40:32 +02:00
Enzo Baldisserri
57c142b993
checker: disallow pub in main 2020-04-19 00:07:57 +02:00
Alexander Medvednikov
de9f302412 fmt: array newlines test 2020-04-18 23:58:59 +02:00
Alexey
85c5103ba3
tests: test cflags parsing 2020-04-18 23:45:17 +02:00
Alexey
3d6142064d
tests: remove msvc-test 2020-04-18 23:44:42 +02:00
Alexander Medvednikov
a18201faa7 fmt: save newlines between array elements 2020-04-18 23:09:23 +02:00
Alexey
2ab2a58bc5
string: add more interpolation tests 2020-04-18 18:26:07 +02:00
Ruofan XU
b0e498bf0b
scanner: refactor ident_dec_number 2020-04-18 17:49:27 +02:00
Tim Basel
86df486988
compiler: rename is_so to is_shared 2020-04-18 17:46:23 +02:00
Kris Cherven
3cc7009440
cflag: remove circular dependency 2020-04-18 16:29:43 +02:00
Kris Cherven
eb923b4995
testing: fix count of succeeded tests 2020-04-18 05:49:03 +03:00
yuyi
5374899f29
parser: fix interpolation error 2020-04-18 00:22:03 +02:00
Enzo Baldisserri
0f9322bf36
checker: print error and pos for lacking main or pub main 2020-04-18 00:20:38 +02:00
Enzo Baldisserri
f2be3d7ffb
checker: check that right is type exists 2020-04-18 00:19:33 +02:00
Tim Basel
73073cd954
parser: anonymous functions (part 1) 2020-04-17 21:59:19 +02:00
yuyi
3e324befd0
builder: clean up and simplify some methods 2020-04-17 21:17:19 +02:00
Alexander Medvednikov
515da900e4 fmt: remove \t before same line comments 2020-04-17 20:53:39 +02:00
Alexander Medvednikov
2c778c8849 fmt: single line matches 2020-04-17 20:51:19 +02:00
yuyi
67cd90de6e
parser: fix number parse error 2020-04-17 20:31:32 +02:00
Kris Cherven
84ac634c31
checker: disallow pub fn main() 2020-04-17 20:30:43 +02:00
Alexander Medvednikov
c4b7d7cab3 match: shadow variable instead of it 2020-04-17 19:24:10 +02:00
Alexander Medvednikov
59baef89a0 parser: assign.v, containers.v, for.v, if.v 2020-04-17 18:16:55 +02:00
Alexander Medvednikov
b53fb365a6 parser: move pratt logic to pratt.v 2020-04-17 18:11:04 +02:00
Alexander Medvednikov
16931fd23f parser: move all struct logic to struct.v 2020-04-17 18:01:02 +02:00
Alexander Medvednikov
ed8855c4cd tests: fix struct_unknown_field.v 2020-04-17 17:20:35 +02:00
Alexander Medvednikov
4a556f72bb checker: allow calling private functions in tests 2020-04-17 17:18:40 +02:00
Alexander Medvednikov
06c1b9e95e table/checker: verify private functions/methods 2020-04-17 17:16:14 +02:00
Daniel Däschle
af30bf939e
checker: fix return underlining 2020-04-17 16:16:56 +02:00
Daniel Däschle
c1d9e22ca6
cgen: gen str() from eprintln and eprint as well 2020-04-17 16:15:28 +02:00
yuyi
420ecaf31d
cgen: gen_str_for_array() 2020-04-17 16:10:41 +02:00
Daniel Däschle
402e55d115
ast: expr.Position; struct field refactoring 2020-04-17 02:38:39 +02:00
yuyi
8bb11d9035
cgen: fix string_interpolation_struct_test.v error 2020-04-17 01:45:42 +02:00
Major Taylor
7bfc3ef767
cli: fix issue with long cmd and flag names 2020-04-16 23:01:04 +02:00
Enzo Baldisserri
051cc732bb
cgen: generate typeof for functions 2020-04-16 21:04:27 +02:00
yuyi
dee64347e0
cgen: fix const_embed_test.v error 2020-04-16 19:43:39 +02:00
Alexey
4c8510dfaf
cgen: use wWinMain for Windows GUI applications 2020-04-16 19:42:04 +02:00
Delyan Angelov
aed8370d87 tetris: enable compilation with -prod; cleanup of font loading errors 2020-04-16 19:44:15 +03:00
Kris Cherven
182108faca
fmt fmt.v, vfmt.v 2020-04-16 15:54:17 +02:00
Alexey
54226e74cf
sokol: add missing C prefixes 2020-04-16 15:53:34 +02:00
Alexander Medvednikov
714ff50322 fmt: use the new receiver syntax 2020-04-16 15:42:40 +02:00
Alexander Medvednikov
4b5acfd960 parser: (var x X) receiver syntax 2020-04-16 15:40:21 +02:00
Alexander Medvednikov
8760313ce5 fmt builder.v 2020-04-16 15:35:19 +02:00
Alexander Medvednikov
af224b4933 parser/cgen: is keyword 2020-04-16 15:32:14 +02:00
Delyan Angelov
cc9828b481 checker: fix building of shared .so libs 2020-04-16 16:30:19 +03:00
Enzo Baldisserri
e05f103c41
cli: make compile 2020-04-16 14:50:04 +02:00
Delyan Angelov
1318c27699 tetris: it now works with v2 (on linux) :-) 2020-04-16 13:30:40 +03:00
Daniel Däschle
19723c927b
checker: move more checks from parser 2020-04-16 12:17:15 +02:00
Delyan Angelov
554d87f5b0 tetris: part 1 of fixing compilation with v2 2020-04-16 12:37:59 +03:00
Delyan Angelov
8a1248b2e7 builder: restore module import cycle detection/topological reorder 2020-04-16 12:29:36 +03:00
Daniel Däschle
04db2d02b8
checker: move struct name check from parser to checker 2020-04-16 11:01:18 +02:00
yuyi
54a02996f2
cgen: fix string interpolation float type 2020-04-16 07:30:25 +02:00
Kris Cherven
332d52f459
fmt: stop mangling reference names 2020-04-16 07:28:41 +02:00
joe-conigliaro
c3ddaf16ec cgen: fix sum type casting for array push 2020-04-16 15:18:33 +10:00
Daniel Däschle
a680db44ed
parser: change for error message 2020-04-16 06:01:14 +02:00
yuyi
b15780ae51
parser: better const error 2020-04-16 06:00:05 +02:00
Delyan Angelov
4b3c44cfd7 Revert "tetris: part 1 of fixing building it with v2"
This reverts commit d42725aafe.
2020-04-16 01:16:54 +03:00
Delyan Angelov
d42725aafe tetris: part 1 of fixing building it with v2 2020-04-16 00:35:16 +03:00
Delyan Angelov
92129d760d checker: fix false positives for sumtype kind of matches 2020-04-16 00:32:56 +03:00
Abdullah Atta
6a186e8f11
jsgen: implement js backend 2020-04-15 23:16:49 +02:00
Kris Cherven
a3ab5df2ed
cgen: prepend __ to new_array 2020-04-15 20:12:06 +02:00
Daniel Däschle
27b6f30305
checker: move capital var check from parser to checker 2020-04-15 19:09:51 +02:00
Daniel Däschle
93b942de46
parser: fix a match error 2020-04-15 16:23:03 +02:00
joe-conigliaro
fde83aff0b
checker/cgen: fix calling struct field with fn type 2020-04-15 04:28:18 +02:00
Alexander Medvednikov
da28bc7026 Revert "fmt: (var f Foo)"
This reverts commit 4b110756e0.
2020-04-15 04:15:42 +02:00
Alexander Medvednikov
4b110756e0 fmt: (var f Foo) 2020-04-15 03:56:16 +02:00
Kris Cherven
4dd8796dba
cgen: fix assignment to nested maps 2020-04-15 02:42:00 +02:00
Alexander Medvednikov
f34352faf9 fmt: use var instead of mut 2020-04-15 01:55:51 +02:00
Alexander Medvednikov
efaec8be8e token/parser: var keyword 2020-04-15 01:45:27 +02:00
Daniel Däschle
4068cbc6eb
parser: fix var name check pos 2020-04-14 21:27:17 +02:00
Alexey
e1739549b2
crypto: fix rand module 2020-04-14 21:03:02 +02:00
Alexander Medvednikov
14e1b963f2 parser: do not allow variable names with capital letters 2020-04-14 20:40:00 +02:00
Alexey
91de4e1ece
array: test assignment operators 2020-04-14 20:32:06 +02:00
Enzo Baldisserri
86402204a7
checker: fail if else isn't the last branch of match 2020-04-14 20:31:51 +02:00
Alexey
0c63f5c80d
builtin: test left/right shift precedence 2020-04-14 19:38:11 +02:00
Daniel Däschle
50871d1a92
checker: for in index type error position 2020-04-14 19:37:56 +02:00
Alexander Medvednikov
deab448d93 cgen: fix array[i] &=, |= etc 2020-04-14 19:36:52 +02:00
Alexander Medvednikov
233ae3f772 fmt: use import module syntax 2020-04-14 19:32:23 +02:00
Alexander Medvednikov
2251634743 parser: hide import deprecation warning for now 2020-04-14 18:36:29 +02:00
Alexander Medvednikov
f91d527154 deprecate import module 2020-04-14 18:27:30 +02:00
Alexander Medvednikov
211275ab49 fmt: always use import() syntax 2020-04-14 18:24:19 +02:00
Alexander Medvednikov
ec10831318 parser: []int{cap:cap, len:len} syntax; minor fixes 2020-04-14 18:10:16 +02:00
joe-conigliaro
b33a9fc9e7
parser: fix left shift precedence 2020-04-15 01:41:14 +10:00
Delyan Angelov
2b3204603a parser: add an $if tinyc{} wrapper for the tcc_stack_bug variable 2020-04-14 18:02:55 +03:00
Delyan Angelov
e947d5e8c8 checker: fully exhaustive matches for sumtypes and enums
Also change the vlib/v/checker/tests/inout/match_expr_else.out to reflex the
new error details.
2020-04-14 16:50:43 +03:00
Daniel Däschle
75603beeea
checker: match exhaustive as stmt and with enum 2020-04-14 15:12:26 +02:00
Delyan Angelov
c04c973f84 cgen: use a temp variable for the array part inside 'for x in array{}' 2020-04-14 13:22:58 +03:00
Delyan Angelov
2df4998acc parser: fix v selfcompilation with tcc (tcc bug workaround) 2020-04-14 11:06:19 +03:00
yuyi
956651384c
cgen: fix math/complex_test.v 2020-04-14 07:44:19 +02:00
yuyi
682c619456
array: fix array_byte.str error 2020-04-14 05:55:53 +02:00
Alexander Medvednikov
5f1b88c2c4 checker: do not use !in for now 2020-04-14 04:14:02 +02:00
Alexander Medvednikov
bbc35b1179 checker: check bool and string ops 2020-04-14 04:12:28 +02:00
yuyi
885612afea
ftoa: fix strconv/ftoa/f32_f64_to_string_test.v 2020-04-14 03:53:34 +02:00
Alexander Medvednikov
df37597f00 tests: disable cookie test for now 2020-04-14 03:43:59 +02:00
Chris Watson
c6c2fccb23
net.http: add cookie support 2020-04-14 03:34:05 +02:00
Daniel Däschle
12e48c6fe2
checker: check match for exhaustion 2020-04-14 01:03:31 +02:00
Alexander Medvednikov
1185f04868 json: encode 2020-04-14 00:37:47 +02:00
Alexander Medvednikov
a9a8f8c804 rand: remove duplicate C fn 2020-04-13 20:11:44 +02:00
krischerven
8c0b25a2ab
cgen: fix printing alias types 2020-04-13 20:07:25 +02:00
Alexander Medvednikov
7aacf77262 checker: remove an extra fn check 2020-04-13 20:06:20 +02:00
Alexander Medvednikov
24958df565 parser: do not allow duplicate fns; cgen: move fn code to fn.v 2020-04-13 19:59:57 +02:00
yuyi
fb4cfa72cd
cgen: fix str() for arrays 2020-04-13 19:18:22 +02:00
Daniel Däschle
a6100be8df
parser: fix position of array init
* parser: fix position of array init
* fix checker_error_test.v tests
2020-04-13 19:08:02 +03:00
krischerven
ac67b1ea1b
tests: add new type alias syntax tests 2020-04-13 16:44:21 +02:00
Alexander Medvednikov
c36984cc94 fmt: handle indents 2020-04-13 16:36:32 +02:00
Alexander Medvednikov
2bd22aa4a4 parser: type Foo = Bar 2020-04-13 15:06:02 +02:00
Alexander Medvednikov
77fcd572dc fmt: remove unused imports 2020-04-13 15:05:51 +02:00
Daniel Däschle
8cbdb75dd6
cgen: fix match expr multiline error
* cgen: fix match expr multiline error
* Support for multiple statements in the else part of the match.
* Add a test for the match expression with multiple statements.
2020-04-13 13:05:38 +03:00