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

332 Commits

Author SHA1 Message Date
joe-conigliaro
9faefe85e1
compiler: cached module - cleanup, remove unneeded code (#2297)
* test

* only call existing module init

* add back comment
2019-10-12 11:38:56 +11:00
Toby Webb
f461a21a50 compiler: fix v command to accept '.v' as valid file 2019-10-12 03:03:37 +03:00
joe-conigliaro
51388fea75 compiler: module init function & init consts for cached modules 2019-10-12 01:17:37 +03:00
Delyan Angelov
2b087dbf95 backtraces: add source line numbers too on linux
* Add source line numbers to backtraces on linux.

* Fix -g (broken after token caching).

* reset the #line directives after all the v code is compiled

* cleanup p.cgen.line setting inside p.next() .

* Support windows filepaths like "C:\Users\travis\build\vlang\v\v.exe.tmp.c" inside generated #line directives.

* Try to diagnose better windows-gcc failing.

* Revert "Try to diagnose better windows-gcc failing."

* implement and use cescaped_path/1 .

* Use cescaped_path/1 consistently throughout compiler/ .
2019-10-12 00:04:42 +03:00
Alexander Medvednikov
e7e0514379 no longer download vlib if it's missing 2019-10-10 23:20:41 +03:00
vitalyster
e64609387d term: colors on Windows console
* isConsole moved to builtin is_atty function
* Windows console initialization moved to builtin.init
2019-10-10 20:08:36 +03:00
Alexander Medvednikov
2411b8d1e7 module cache fixes; do not allow function names starting with _ 2019-10-10 00:44:26 +03:00
Alexander Medvednikov
a9a73d9315 caching modules: almost there 2019-10-09 06:35:58 +03:00
Delyan Angelov
dbd72ee828 v test: add ability to test a folder or a set of _test.v files
* v test: support for running 'v test folder/' .

* Support passing multiple folders and also single _test.v files to 'v test' .

* Update vhelp too, with descriptions of v test folder/ and v -stats .

* Fix running `v test v` from outside the root of the v tree.
2019-10-09 06:01:43 +03:00
vitalyster
0963328aed windows: make redirected console detection available to other modules 2019-10-08 03:11:26 +03:00
Delyan Angelov
60d4f47f7a improve crash diagnosis/detection when a test segfaults 2019-10-08 02:34:55 +03:00
joe-conigliaro
9defbf989d compiler: improve module import error messages 2019-10-08 02:32:12 +03:00
Delyan Angelov
ac5241b5bd compiler: implement -stats option for running a _test.v file
* Draft implementation of `v -stats file_test.v` .

* compiler: call stuff in vlib/benchmark/tests/always_imported.v, when doing `v -stats file_test.v`

* Nicer looking output from 'v -stats file_test.v' .

* Tweak colors and layout of -stats file_test.v .

* Fix a hardcoded path in compiler/main.v .

* Show colorized OK/FAIL for the examples in 'v test v' too.

* Add some comments about the purpose of the methods inside vlib/benchmark/tests/always_imported.v .

* when fails are 0, do not colorize their number at all.
2019-10-07 08:51:26 +03:00
joe-conigliaro
72ae12877e
remvoe dupe in main & fix js string.builder (#2233) 2019-10-05 18:07:10 +10:00
joe-conigliaro
a62dec2053
compiler: remove unneeded field & manually add parser to v.parsers (#2232)
compiler: remove unneeded field & manually add parser to v.parsers (#2232)
2019-10-05 16:52:50 +10:00
joe-conigliaro
24136ab88b compiler: get existing parser using path 2019-10-05 07:10:28 +03:00
Alexander Medvednikov
52f4f4026b
compiler: cache modules 2019-10-04 15:48:09 +03:00
Alexander Medvednikov
f45d3f07ed fix 3 last C warnings and make sure no new warnings are introduced 2019-10-04 05:49:41 +03:00
Alexander Medvednikov
841d824216 builtin: a very early version of the hashmap 2019-10-01 06:20:50 +03:00
Alexander Medvednikov
aaba7fdb29 download vlib if it is missing 2019-09-30 23:56:53 +03:00
Alexander Medvednikov
223032f0ce V 0.1.21 2019-09-30 22:39:52 +03:00
Alexander Medvednikov
fa7e0ce58a make v test v work in any directory 2019-09-30 21:58:02 +03:00
joe-conigliaro
a5b4ed2909 compiler: typo in module name erroneously reports "import cycle" 2019-09-30 13:40:19 +03:00
Alexander Medvednikov
ee8ff39454 rename ModPath to v_modules_path; do not allow long variable names without _ 2019-09-29 05:34:17 +03:00
Alexander Medvednikov
d482b1f824 struct capitalization: fix the rest of tests 2019-09-28 22:26:44 +03:00
Alexander Medvednikov
9eac16b976 parser: struct names must be capitalized 2019-09-28 22:20:34 +03:00
Delyan Angelov
a4cbe78d97 compiler: streamline main function handling
* compiler: streamline C main function generation

* fix most tests

* compiler: fix for 'go update()' in graph.v . More precise parser error messages.

* Fix temporarily examples/hot_reload/message.v by using os inside it (os.clear).

* Make graph.v easier to quickly modify by defining y outside the loop.

* Fix failure of /v/nv/compiler/tests/defer_test.v when run with 'v -g' (#line directive was not on its own line, but right after } ).

* Do not pass the os.args to tests, even if the tests import os (they are more stable when run in a controlled environment).

* fix declared and not used in the js backend.

* fix js main => main__main too.
2019-09-28 20:42:29 +03:00
Delyan Angelov
0160c7a89d compiler: change s.line_nr in just one place in tandem with s.last_nl_pos
* compiler: change s.line_nr in just one place, so that s.last_nl_pos will be updated in tandem too.

* v test v: run repl tests again

* Show gcc version in both windows gcc cases in a) github actions, and b) travis .

* adding inline to is_name_char is_nl and contains_capital does not help actually, just increases slightly binary size.

* Cleanup spurious spaces.
2019-09-28 20:41:11 +03:00
Alexander Medvednikov
d59d921e84 disable the vget test for now 2019-09-28 15:18:48 +03:00
Alexander Medvednikov
e19b630ab1 disable the vget test for now 2019-09-28 15:00:51 +03:00
Alexander Medvednikov
0bfb88e2e6 fix the vget test 2019-09-28 14:58:24 +03:00
Alexander Medvednikov
dc28c787d1 travis: re-write the vget test in V 2019-09-28 14:40:09 +03:00
joe-conigliaro
802da8f31d compiler: clean up. remove new_parser_string_id (#2140)
* clean up

* fix comment

* fix comment
2019-09-28 04:56:05 +03:00
Alexander Medvednikov
1821dac795 compiler: remove old generics hack; disable generics and repl tests for
now
2019-09-28 02:29:04 +03:00
joe-conigliaro
ad99b82930 compiler: make vgen use strings.Builder & allow parser creation from string 2019-09-27 14:02:01 +03:00
Alexander Medvednikov
da43267e09 parser: cached tokens (second step) 2019-09-27 04:01:12 +03:00
Alexander Medvednikov
a45255337d bring back "parser: cache tokens (first step)"
This reverts commit 0fcdd7db35.
2019-09-27 04:00:48 +03:00
Alexander Medvednikov
74bbf592d1 solaris: another fix 2019-09-27 00:30:41 +03:00
Alexander Medvednikov
107e9107c8 solaris support 2019-09-27 00:23:27 +03:00
Alexander Medvednikov
0fcdd7db35 Revert "parser: cache tokens (first step)"
This reverts commit 8992707fbb.
2019-09-26 06:05:18 +03:00
Alexander Medvednikov
8992707fbb parser: cache tokens (first step) 2019-09-26 05:20:08 +03:00
Alexander Medvednikov
04e4018228 compiler: small fixes + some logic for freeing strings 2019-09-26 03:24:58 +03:00
Delyan Angelov
ab291902d8 compiler: remove special case for http__init_module call
tmp fix until `fn init()` is supported
2019-09-25 23:28:51 +03:00
joe-conigliaro
d4bae356ba compiler/vlib: add error for no new vars in loop ("_,_") & remove "." from errors 2019-09-25 17:59:50 +03:00
Alexander Medvednikov
55d09d23b4 compiler: rename cerror() to verror(); some small optimizations 2019-09-24 19:38:04 +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
joe-conigliaro
23c84516e2 compiler: error on unused imports 2019-09-23 13:42:20 +03:00
Delyan Angelov
049e228003 compiler: pass -cflags to thirdparty building stage too 2019-09-22 10:56:02 +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