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

839 Commits

Author SHA1 Message Date
joe-conigliaro
3317d7fd7c compiler: clean up multiple returns and verify number of returned values 2019-09-24 13:14:04 +03:00
joe-conigliaro
a44a03f9a5 compiler: fix mark_var_used() 2019-09-24 06:18:06 +03:00
Alexander Medvednikov
d74c91616f remove all p.log()'s 2019-09-23 23:18:55 +03:00
Alexander Medvednikov
d2d75f3824 parser: do not allow "int?", only "?int" 2019-09-23 23:17:06 +03:00
Alexander Medvednikov
f27f3515ae compiler: optimize mark_var_used() etc 2019-09-23 23:06:40 +03:00
Alexander Medvednikov
8d52d877fb compiler: free local_vars 2019-09-23 22:16:52 +03:00
Alexander Medvednikov
bf1ee28194 ui: Objective-C @interface support for Cocoa; minor clean-ups 2019-09-23 15:54:17 +03:00
joe-conigliaro
fbc19311b5 compiler: clean up get_file_import_table 2019-09-23 15:12:23 +03:00
joe-conigliaro
422ba3a3ce compiler: unused module check always 2019-09-23 15:11:05 +03:00
joe-conigliaro
23c84516e2 compiler: error on unused imports 2019-09-23 13:42:20 +03:00
joe-conigliaro
090ca27b15 compiler: improve module typo error message 2019-09-23 13:40:18 +03:00
joe-conigliaro
23e30962b9 compiler: multiple returns - add test & fix use with array/map 2019-09-23 13:39:35 +03:00
joe-conigliaro
60d932e57d compiler: functions with multiple returns 2019-09-23 05:45:19 +03:00
Alexander Medvednikov
b4207e1be7 compiler: allow "u64_var == 0" without casting the const literal 2019-09-23 02:14:10 +03:00
Delyan Angelov
a585c8c22c compiler: compile thirdparty object files using module specific flags 2019-09-23 00:51:59 +03:00
Delyan Angelov
7421781150 CI: split jobs into more steps; compiler: fix "v test v" with tcc 2019-09-22 17:24:15 +03:00
Delyan Angelov
049e228003 compiler: pass -cflags to thirdparty building stage too 2019-09-22 10:56:02 +03:00
Alexander Medvednikov
cec2173381 array: fix memory bug with mutable array args 2019-09-22 10:33:47 +03:00
Alexander Medvednikov
6a788bb364 testing: do not allow fn main in tests and make sure there is at least one test fn 2019-09-22 09:49:33 +03:00
luoheng
f1d5f8e2bf parser: allow ! only with bools 2019-09-21 18:21:45 +03:00
Alexander Medvednikov
a232b215a7 double quotes for denoting strings 2019-09-21 17:18:02 +03:00
joe-conigliaro
b1e1536d56 compiler: fix live reload on win with auto completed filename .\file.v 2019-09-21 17:08:48 +03:00
Nicolas Sauzede
56e880117e fix windows printf output to match standard unix line buffering 2019-09-21 01:29:11 +03:00
Alexander Medvednikov
90e26a34c5 scanner: better interpolation names + disable vweb html test for now 2019-09-21 01:27:13 +03:00
Alexander Medvednikov
6ebd62020a double quote 2019-09-21 01:23:53 +03:00
Alexander Medvednikov
ecc8728643 vweb: allow running vweb apps from a different directory 2019-09-21 01:17:52 +03:00
Alexander Medvednikov
79abc0c16f vweb: fix html example 2019-09-21 01:10:37 +03:00
Henrixounez
ffcff9ebd4 builtins: ustring comparisons, concatenation and other functions 2019-09-20 19:07:38 +03:00
vitalyster
f1bb25bfaf windows: Unicode input in REPL 2019-09-20 17:03:13 +03:00
Delyan Angelov
f042dfb861 compiler: fix line numbers in unused variable error messages 2019-09-20 13:42:37 +03:00
joe-conigliaro
f657d70a67 typo detection: only check fn variables in same or higher scope 2019-09-20 12:23:42 +03:00
Alexander Medvednikov
9a7fface7d make the unused variable error a warning in non-production builds 2019-09-19 19:50:43 +03:00
Alexander Medvednikov
b6bb6a5a60 do not allow go print() 2019-09-19 18:02:31 +03:00
Alexander Medvednikov
c8a781bf77 disable -compress on windows 2019-09-19 16:05:17 +03:00
Alexander Medvednikov
afb372bbdf -compress option 2019-09-19 15:52:38 +03:00
Alexander Medvednikov
ad6ab39287 table: use ?Var in find_const() 2019-09-19 14:19:44 +03:00
Alexander Medvednikov
f629069572 autofree: free strings 2019-09-19 14:04:27 +03:00
joe-conigliaro
153c6d5416 compiler: fix v up when run from dir with space in name 2019-09-19 13:11:25 +03:00
Alexander Medvednikov
a94c1556ce array: remove temporary repeat2() 2019-09-19 05:22:24 +03:00
Alexander Medvednikov
cb31eeec55 compiler: first step to require explicit definition of imported C fns 2019-09-19 05:16:25 +03:00
Alexander Medvednikov
13e4c79f58 table: use optional in find_method() 2019-09-19 04:56:22 +03:00
vitalyster
377956e969 js: no need to generate ES6 classes 2019-09-19 00:03:54 +03:00
Alexander Medvednikov
74b82b688c table: simplify find_method() 2019-09-18 19:48:28 +03:00
Danil-Lapirow
b0092235fc parser: fix a more complicated "in" usage 2019-09-18 16:13:22 +03:00
joe-conigliaro
695d4018ea compiler: let attributes work with pub functions 2019-09-18 15:32:55 +03:00
Alexander Medvednikov
040d03912b table: use an optional for find_fn() 2019-09-18 15:06:34 +03:00
Alexander Medvednikov
1c6cbdace5 make sure "v test v" is run in the V repo 2019-09-18 14:43:44 +03:00
Alexander Medvednikov
d180324413 find_field: use optional 2019-09-18 14:28:11 +03:00
Alexander Medvednikov
d1500511e6 "none" keyword for optionals + more memory fixes 2019-09-18 14:15:10 +03:00
Alexander Medvednikov
ecffa8e1d9 v.js: fix for .. 2019-09-17 22:21:44 +03:00
Alexander Medvednikov
1796869da7 V 0.1.20 2019-09-17 21:48:24 +03:00
vitalyster
52c5f0172e compiler: always define _UNICODE and UNICODE on Windows 2019-09-17 14:56:32 +03:00
Alexander Medvednikov
0a2f7a6ba7 fix tests 2019-09-17 13:37:25 +03:00
Alexander Medvednikov
1397d532c6 compiler: check if mutable receivers are modified 2019-09-17 13:10:43 +03:00
Alexander Medvednikov
19b04d5427 math: fix const warnings 2019-09-16 22:49:18 +03:00
Delyan Angelov
083d747302 V.js: on linux -lm is needed 2019-09-16 22:00:59 +03:00
Alexander Medvednikov
a81656568b travis: test JS backend 2019-09-16 19:02:16 +03:00
Alexander Medvednikov
c76d09f9a5 make V.js compile 2019-09-16 18:31:13 +03:00
BigBlack
3e52984e88 compiler: another C function call fix 2019-09-16 18:28:20 +03:00
Delyan Angelov
7cf7215557 testing: always show benchmarks 2019-09-16 18:27:55 +03:00
Delyan Angelov
a45895a3af new benchmark module + make the tests use it 2019-09-16 17:29:06 +03:00
hazohelet
3325775944 compiler: add android to supported platforms 2019-09-16 17:16:24 +03:00
joe-conigliaro
155fecadb7 compiler: fix empty structs 2019-09-16 14:44:12 +03:00
Alexander Medvednikov
57cfdeeaf0 Revert "os: fix get_line in windows"
This reverts commit 279f7d57cb.
2019-09-16 13:54:30 +03:00
BigBlack
279f7d57cb os: fix get_line in windows 2019-09-16 13:43:59 +03:00
joe-conigliaro
cbd4478b5e compiler: fix msvc empty struct & enable travis msvc 2019-09-16 13:01:07 +03:00
Delyan Angelov
854de4e7e0 repl: add more stats and tests; compiler: tcc fixes 2019-09-16 00:41:12 +03:00
Alvydas Vitkauskas
ff4ef337da compiler: remove unreachable code 2019-09-16 00:40:31 +03:00
joe-conigliaro
5db25352e5 compiler: fix module typo detection 2019-09-15 20:39:48 +03:00
joe-conigliaro
075a8e5ccb compiler: improve typo detection 2019-09-15 20:07:12 +03:00
Alexander Medvednikov
0b81c5a3cb bring back assert outside of tests 2019-09-15 19:43:35 +03:00
Alexander Medvednikov
3db4d66824 operator | not defined on bool 2019-09-15 19:35:48 +03:00
Alexander Medvednikov
48c05b5a45 cgen: use *char in all functions with *char args to avoid warnings 2019-09-15 18:56:33 +03:00
Delyan Angelov
35f927e64e repl: add some timing statistics when running REPL test files 2019-09-15 18:08:16 +03:00
Alexander Medvednikov
849bef987c more C warnings fixed 2019-09-15 15:53:57 +03:00
Delyan Angelov
e3bd72e8e2 travis: spawn 2 separate windows instances 2019-09-15 15:52:12 +03:00
Alexander Medvednikov
3e923871cf compiler: use *char() cast in C functions to afix warnings 2019-09-15 15:19:18 +03:00
Alexander Medvednikov
897db23203 fix vhelp.v 2019-09-15 14:15:31 +03:00
Alexander Medvednikov
bcf3dbf974 improve vhelp.v a bit 2019-09-15 14:08:40 +03:00
joe-conigliaro
b71bb95f7d msvc: empty struct decl fix 2019-09-15 12:27:28 +03:00
joe-conigliaro
f077fbd32d vlib: change [0;n] to [0].repeat(n) 2019-09-15 12:26:05 +03:00
Delyan Angelov
1d7b9a3b0b v up: on windows delete existing v_old.exe before renaming the new v.exe to it 2019-09-15 04:33:08 +03:00
Alexander Medvednikov
4a43c2fa1a Revert "compiler: pass -l flags without space (needed for tcc)"
This reverts commit 982a162fbf.
2019-09-15 03:55:56 +03:00
Alexander Medvednikov
5cc81b91cb JavaSript backend (early stage) 2019-09-15 03:49:57 +03:00
Delyan Angelov
982a162fbf compiler: pass -l flags without space (needed for tcc) 2019-09-14 23:55:12 +03:00
Alexander Medvednikov
3d2c266980 compiler: -autofree flag 2019-09-14 18:54:55 +03:00
Alexander Medvednikov
682eedce59 compiler: remove the temporary windows check 2019-09-14 18:34:59 +03:00
Henrixounez
c604a5c02f compiler: no free on stack allocated array 2019-09-14 13:40:59 +03:00
joe-conigliaro
b96cbe2177 compiler: temporary memory fix on windows 2019-09-14 13:09:25 +03:00
unknown-v
3dc4abddec cc.v: build_module mode fix
Create the modules directory if it's not there.
2019-09-13 20:47:17 +03:00
joe-conigliaro
c614639e7b compiler: use os.PathSeparator 2019-09-13 18:59:17 +03:00
Alexander Medvednikov
21f3b9eccc compiler: do not free memory on Windows for now 2019-09-13 16:27:09 +03:00
Nicolas Sauzede
7f3cfea02b compiler: improve the help message 2019-09-13 16:19:41 +03:00
joe-conigliaro
5aaa794519 compiler: clean up the typo check 2019-09-13 16:15:30 +03:00
Alexander Medvednikov
9dd86f6fb8 compiler: more memory logic + replace "cur_fn &Fn" with "cur_fn Fn" 2019-09-13 15:47:31 +03:00
Vitor Oliveira
f3a74e7d80 compiler: fix typo in main.v 2019-09-13 14:25:05 +03:00
joe-conigliaro
41734affb3 compiler: detect typos in function/variable/module names 2019-09-13 14:10:24 +03:00
BigBlack
8fe46d5db5 compiler: call string method in C funtion parameter 2019-09-13 02:41:51 +03:00
Alexander Medvednikov
a555b1fcff V 0.1.19 2019-09-12 03:59:34 +03:00
Vitor Oliveira
c66fbd9bff compile: fix typos in vhelp.v 2019-09-11 23:54:36 +03:00
unknown-v
26edb7d797 scanner: @FILE escape \ 2019-09-11 20:16:42 +03:00
BigBlack
f8d4d6cdc7 compiler: 32-bit option 2019-09-11 19:26:35 +03:00
Henrixounez
af60f9ead4 compiler: escapes quote on literals 2019-09-11 15:48:08 +03:00
Alexander Medvednikov
9853323157 array: make ".contains()" private, use "in" everywhere 2019-09-11 15:12:13 +03:00
Delyan Angelov
63f2f2b294 compiler: improve v --help . Move help descriptions to compiler/vhelp.v 2019-09-11 13:35:03 +03:00
BigBlack
e6354567e5 compiler: fix sizeof and cc 2019-09-11 13:34:19 +03:00
Delyan Angelov
3588c3363d backtraces: on android (bionic), there is no execinfo.h 2019-09-11 13:31:29 +03:00
Vitor Oliveira
797b35cdcb compiler: add vfmt() to reduce complexity 2019-09-11 01:49:56 +03:00
Delyan Angelov
bc606415c3 compiler: stage 2 of vhash support 2019-09-11 01:12:46 +03:00
Delyan Angelov
a53c69de38 os: use path separator more consistently 2019-09-11 01:08:23 +03:00
Delyan Angelov
08262b5c43 compiler: stage 1 of printing shortened commit on v --version 2019-09-10 23:08:48 +03:00
Alexander Medvednikov
03b3278369 compiler: replace the rest of .build with .build_module 2019-09-10 18:19:29 +03:00
Vitor Oliveira
edd8528049 compiler: rename build to build_module 2019-09-10 17:36:14 +03:00
Vitor Oliveira
cd47f09f86 Isolate install_v to reduce complexity 2019-09-10 13:09:36 +03:00
Delyan Angelov
0ade45db08 compiler: print the offending source line on error 2019-09-10 13:08:43 +03:00
Alexander Medvednikov
7fc678c961 fix urllib_test.v 2019-09-09 14:21:18 +03:00
Alexander Medvednikov
00687de43b memory: clean up all arrays in the V compiler 2019-09-09 13:55:47 +03:00
Alexander Medvednikov
a6ec6e23bc bf: minor clean up 2019-09-09 02:31:43 +03:00
Alexander Medvednikov
71224ad17c compiler: fix building_v 2019-09-08 17:19:42 +03:00
Alexander Medvednikov
a6f927a6e9 bring back automatic array_free() 2019-09-08 14:50:18 +03:00
joe-conigliaro
cb6fadf917 remove freetype submodule accidentally added in #1890 2019-09-08 12:02:03 +03:00
joe-conigliaro
e78e284380 compiler: tidy flag order 2019-09-07 19:19:17 +03:00
Delyan Angelov
d5665997e0 compiler: @FILE, @LINE, @FN, @COLUMN 2019-09-07 13:44:41 +03:00
Alexander Medvednikov
76a89c832e parser: small optimizations 2019-08-26 01:19:39 +03:00
Joe Conigliaro
794cd561cd fix libpath issue 2019-09-07 12:04:52 +03:00
joe-conigliaro
b7361d00aa compiler: fix v test v on paths with spaces 2019-09-06 19:30:55 +03:00
Joe Conigliaro
6de1f14a56 fix comments & rearrange method 2019-09-06 16:00:46 +03:00
Henrixounez
bfdab586e3 compiler: allow to declare C function with pointers with & 2019-09-06 15:13:38 +03:00
joe-conigliaro
8ac0a2b2dd compiler: rework flags & support win path spaces + more 2019-09-06 15:12:04 +03:00
Henrixounez
3de99d365e compiler: allows dir spelling with slash at the end 2019-09-06 13:23:19 +03:00
Alexander Medvednikov
c12d4d1bd2 make "build module" generate an object file 2019-09-05 13:01:30 +03:00
BigBlack
7cf058feac parser: function pointers 2019-09-05 12:09:41 +03:00
Henrixounez
726fcb5eec compiler: check if-expressions returning only one type 2019-09-05 12:08:40 +03:00
Joe Conigliaro
96e959342a compiler/msvc: support paths with hyphen 2019-09-05 04:06:13 +03:00
Delyan Angelov
ec61821bf7 compiler: support explicit runrepl argument, so that the v repl can be launched with options like -debug and so on. 2019-09-04 19:50:51 +03:00
joe-conigliaro
d1210b9e9f compiler/cgen: fix github username in error message 2019-09-04 19:49:53 +03:00
Danil-Lapirow
c6f7479a72 parser: add return dropping to false to check whether statements return 2019-09-04 19:48:01 +03:00
Danil-Lapirow
5c43bfbf13 parser: add additional paren for multi case branch 2019-09-04 19:47:37 +03:00
Joe Conigliaro
dd670fb4a3 workaround msvc 0 struct field bug 2019-09-04 19:47:13 +03:00
Henrixounez
540602fab6 main: updated help on building a module 2019-09-04 19:46:42 +03:00
Joe Conigliaro
afde6f582d workaround for fn_test on windows 2019-09-04 18:24:41 +03:00
joe-conigliaro
8e25019634 simplify & optimize cgen sort_structs 2019-09-04 11:41:21 +03:00
joe-conigliaro
b4d033ff54 compiler: generalize mod dag & use for sorting structs also 2019-09-03 19:11:21 +03:00
joe-conigliaro
6921c15b7b compiler: fix repl chained_fields test (windows) 2019-09-03 18:42:40 +03:00
Delyan Angelov
c9a39dfdb5 compiler: build tetris executable on windows with both msvc and mingw gcc 2019-09-03 16:09:43 +03:00
Joe Conigliaro
1f67d9edd8 fix bugs breaking tests 2019-09-03 15:21:52 +03:00
Delyan Angelov
d681e1cae3 compiler: fix deprecation message for u8. 2019-09-02 21:04:27 +03:00
F1ssi0N
892c948a44 Make sure to actually generate the empty struct declaration 2019-09-02 15:33:03 +03:00
Alexander Medvednikov
1c6d51f271 remove u8 and i32 from tests and examples 2019-09-02 15:02:25 +03:00
Alexander Medvednikov
0db1eaa55a parser: get_type2() for the upcoming type system refactoring 2019-09-02 14:55:26 +03:00
Alexander Medvednikov
b667940c68 parser: fix a +1 bug when skipping function body 2019-09-02 13:57:00 +03:00
Alexander Medvednikov
0e2c41e0f9 replace *Foo with &Foo everywhere 2019-09-01 22:51:16 +03:00
Alexander Medvednikov
aaab24dcf8 use &Foo instead of *Foo warning 2019-09-01 22:45:06 +03:00
Alexander Medvednikov
59ba551d3b u8 + i32 warnings 2019-09-01 22:41:29 +03:00
Alexander Medvednikov
3bd7bcfac3 remove u8 and i32 aliases 2019-09-01 22:37:22 +03:00
Alexander Medvednikov
d078aa360b parser: use map[string]Type instead of []Type 2019-09-01 22:30:49 +03:00
Alexander Medvednikov
24fdefe152 v test: print all fails 2019-09-01 14:14:46 +03:00
Delyan Angelov
011afeb2ea compiler: fix building v with tcc on linux 2019-09-01 14:12:37 +03:00
Alexander Medvednikov
bfa6505636 compiler: replace &Type with Type 2019-09-01 14:05:03 +03:00
Alexander Medvednikov
961e778ed1 map_test.v: format + ref test 2019-09-01 14:05:03 +03:00
teggot
c04cca1ae4 Allow use FP without calling it 2019-09-01 02:20:35 +03:00
Alexander Medvednikov
0a4a1ca36c compiler: simplify a[index] = val 2019-08-31 13:30:08 +03:00
teggot
b6ecbd8bc3 Check for type, not name 2019-08-31 11:47:55 +03:00
Alexander Medvednikov
72363ada84 array: make .set() private + format 2019-08-31 02:35:05 +03:00
Alexander Medvednikov
29b4114bc0 compiler: simplify [0; n] 2019-08-31 01:34:43 +03:00
Emily Hudson
04a200d3d8 compiler: fix array initialisation generation for msvc 2019-08-31 00:59:21 +03:00
kawa-yoiko
4f0f99e663 parser: fix mutability with chained fields 2019-08-30 20:19:06 +03:00
Alexander Medvednikov
13f3f79eb8
linguist test 2019-08-30 13:01:20 +03:00
kawa-yoiko
6d35f68242 parser: restore outer variable in index exprs 2019-08-30 12:16:39 +03:00
Alexander Medvednikov
d5d1b74f90 time: do not include <unistd.h> on windows 2019-08-30 01:10:29 +03:00
Alexander Medvednikov
3c5087902d fix msvc build 2019-08-30 01:06:10 +03:00
Henrixounez
87ed442d9e compiler: nested structure print error fix 2019-08-30 00:55:59 +03:00
Alexander Medvednikov
0c31172fb0 make print() generic, just like println() 2019-08-30 00:41:25 +03:00
Emily Hudson
7fc899dfd6 bootstrap: single make.bat, default msvc option for forcing gcc 2019-08-30 00:13:53 +03:00
Alexander Medvednikov
b17bf5843c compiler: fix v_win.c generation 2019-08-30 00:07:54 +03:00
Alexander Medvednikov
2fe20cd092 compiler: fix struct order bug 2019-08-29 23:46:12 +03:00
Henrixounez
c6b79dfd24 compiler: check for reserved names during struct declaration 2019-08-29 22:41:21 +03:00
Henrixounez
2507735596 compiler: stricter non-allocation condition for print optimization 2019-08-29 22:19:30 +03:00
Henrixounez
29e0396eca compiler: adds handling of two variables for loop on string 2019-08-29 21:41:16 +03:00
Shiqing
519028e263 Fix incorrect string open/close check in REPL 2019-08-29 21:40:49 +03:00
Henrixounez
52c2763ee3 compiler: prompt error if trying to use f for floats 2019-08-29 21:39:58 +03:00
Henrixounez
4b9cc1246e compiler: allow functions return without main function 2019-08-29 21:39:39 +03:00
Delyan Angelov
4f62e8235f repl: add a test for naked strings. 2019-08-29 12:30:33 +03:00
Delyan Angelov
83954acfd4 compiler: use cerror instead of panic. 2019-08-29 11:50:18 +03:00
Joe Conigliaro
4a506b0566 fix issue #1777 2019-08-29 11:46:05 +03:00
Alexander Medvednikov
91ece782af compiler: move Var back to table.v now that the struct bug is fixed 2019-08-28 21:23:46 +03:00
Alexander Medvednikov
5b1700e52a compiler: fix struct order bug 2019-08-28 21:19:34 +03:00
Alexander Medvednikov
f29079daac better winroot.zip info message 2019-08-28 21:19:34 +03:00
Delyan Angelov
c92654a044 fix building v on alpine with musl libc 2019-08-28 19:26:18 +03:00
unknown-v
fed9f01b2d use -rdynamic only if host os is not windows 2019-08-28 16:23:53 +03:00
Vitaly Takmazov
5124eae47d msvc: check exit code 2019-08-28 13:26:27 +03:00
Delyan Angelov
73c6bae480 print backtraces on panic on mac and linux 2019-08-27 23:29:13 +03:00
joe-conigliaro
02fc7e14cd make trim use cutset like trim_right/trim_left 2019-08-27 22:53:32 +03:00
Delyan Angelov
2d87fea074 compiler: allow passing options to v run 2019-08-27 21:08:54 +03:00
Alexander Medvednikov
e2c7d3b2d9 v symlink 2019-08-27 19:35:48 +03:00
Alexander Medvednikov
f6147b7ac7 Revert "switch deprecation notice"
This reverts commit a43b831965.
2019-08-27 13:10:18 +03:00
Alexander Medvednikov
b48b076dac remove is_play 2019-08-27 13:10:18 +03:00
Sunny Lam
a5b44b3bc5 disable implicit-function-declaration for FreeBSD 2019-08-27 12:53:50 +03:00
Alexander Medvednikov
cca85566d3 parser: fix duplicate enum generation 2019-08-27 02:48:55 +03:00
Alexander Medvednikov
a43b831965 switch deprecation notice 2019-08-27 02:47:49 +03:00