Commit Graph

834 Commits (5d606000b93d8f2e0419034d72641dc41e0460e4)

Author SHA1 Message Date
Toby Webb 5d606000b9 scanner: fix Scanner.debug_tokens skipping first char 2019-10-12 21:33:53 +03:00
Simon Heuser 85c05b6822 parser: disallow or{} block for non-optionals 2019-10-12 17:53:53 +03:00
Swastik Baranwal 336e82d162 parser: _ warning => error 2019-10-12 14:21:06 +03:00
joe-conigliaro a06e2298f0 compiler: detect and error on public init function & remove empty init functions 2019-10-12 13:54:58 +03:00
Delyan Angelov 065ce39577 compiler: -g and -debug should always add -g at least in the C compiler by default
* compiler: -g and -debug should always add -g at least in the C compiler by default.

* Set first the C backend debug_options, so that the optimization_options can override them later.

* Implement cleaner named is_debug, is_vlines, is_keep_c and is_cache options (i.e. -g/-cg, -keep_c, -cache v flags).

* Check and reset file/line numbers in the generated main program, only if v.pref.is_vlines is true.
2019-10-12 13:54:01 +03:00
joe-conigliaro 342e6a14a2
compiler: better detection of module path supplied to `build module` command (#2305)
compiler: better detection of module path supplied to `build module` command (#2305)
2019-10-12 20:48:57 +11:00
joe-conigliaro 1e121d36a4
compiler: module cache. const init - fix implicit declaration of function warning (#2303)
compiler: module cache. const init - fix implicit declaration of function warning (#2303)
2019-10-12 17:53:42 +11:00
joe-conigliaro 40156392f8
compiler: cached modules - windows fixes & organise cached module path (#2302)
compiler: cached modules - windows fixes & organise cached module path (#2302)
2019-10-12 16:41:41 +11:00
Alexander Medvednikov b107b4f1e5 modules: create the modules directory if it's missing, use cache/ 2019-10-12 05:04:59 +03:00
Toby Webb acbca7584b parser: fix multiline strings with CRLF endings for Linux 2019-10-12 04:48:26 +03:00
joe-conigliaro baeb2e3c0e
compiler: module init, add init fn definition (#2298)
* test

* only call existing module init

* add back comment

* add def
2019-10-12 12:35:33 +11:00
Alexander Medvednikov 155d692959 fix alias generation 2019-10-12 04:11:07 +03:00
Alexander Medvednikov 4c91a5c94b module caching: generate type aliases 2019-10-12 04:09:37 +03:00
Alexander Medvednikov 4cd9099f74 disable $if for headers for now 2019-10-12 03:49:36 +03:00
Alexander Medvednikov 6db7518189 make $if work with includes: skip the body if the target is different 2019-10-12 03:48:32 +03:00
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 52c2fa44b8 runtime: nr_cpus() 2019-10-11 13:47:56 +03:00
Alexander Medvednikov 726aaecc46 compiler: make V compilable wit the tcc backend 2019-10-11 06:49:53 +03:00
Alexander Medvednikov c3787e17fd Revert "compiler: remove math dependency"
This reverts commit 67ae167013.
2019-10-11 05:37:26 +03:00
Alexander Medvednikov 67ae167013 compiler: remove math dependency 2019-10-11 03:12:34 +03:00
Alexander Medvednikov 25ef0ee593 parser: remove an unnecessary line 2019-10-11 03:00:06 +03:00
Alexander Medvednikov e7e0514379 no longer download vlib if it's missing 2019-10-10 23:20:41 +03:00
Alexander Medvednikov e1dd4c19b5 compiler: cache modules if they are not built yet 2019-10-10 22:53:59 +03:00
vitalyster a5ccc4673b http: handle and print socket errors 2019-10-10 20:24:36 +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
lhmwzy de36b61931 compiler: fix symbol error in DragonFlyBSD 2019-10-10 20:05:22 +03:00
Delyan Angelov f3abb9e682 fix 'v -debug examples/hello_world.v' 2019-10-10 20:02:32 +03:00
joe-conigliaro 1b79964827
compiler: allow -debug to work with no prebuilt modules. only use when prebuilt files exist (#2283)
* only use prebuilt modules if they exist (builtin)
2019-10-10 23:00:18 +11:00
Alexander Medvednikov 7423b21429 cc: fix -g 2019-10-10 04:05:27 +03:00
Alexander Medvednikov 48e13a3362 a small cached modules fix 2019-10-10 03:48:11 +03:00
Alexander Medvednikov 4d941b5fdb make V compile itself using cached modules: ~0.3s speed-up 2019-10-10 03:36:27 +03:00
Alexander Medvednikov 2ee252be5f fix vid compilation 2019-10-10 01:46:05 +03:00
Alexander Medvednikov cdfb7428c8 array/map: use get() instead of _get() etc 2019-10-10 01:07:00 +03:00
Alexander Medvednikov 52168d0781 fix table.v 2019-10-10 00:56:33 +03:00
Alexander Medvednikov 2411b8d1e7 module cache fixes; do not allow function names starting with _ 2019-10-10 00:44:26 +03:00
joe-conigliaro febd532c4a parser: allow multi returns in high order fns 2019-10-09 20:55:36 +03:00
joe-conigliaro 236b34c009 parser: fix single decl/assign bug & update error msg 2019-10-09 20:54:52 +03:00
Alexander Medvednikov b1da59845e array: fix initialization of empty fixed size arrays 2019-10-09 15:26:30 +03:00
sunnylcw 2403abe1ee compiler: Add C headers to avoid undefined symbol error in FreeBSD 2019-10-09 14:28:30 +03:00
joe-conigliaro 909d3eed0a parser: allow all return types when fn used as param ) 2019-10-09 14:27:23 +03:00
Alexander Medvednikov 80a6d78595 fix msvc build 2019-10-09 07:22:33 +03:00
Alexander Medvednikov 3f1d7e1260 fix msvc build 2019-10-09 07:15:42 +03:00
Alexander Medvednikov d8622dd3e5 fix msvc build 2019-10-09 07:10:33 +03:00
Alexander Medvednikov 29f578d172 cc: bring back os.rm() 2019-10-09 07:02:45 +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
Anders Busch c620da9089 compiler: rename Tok/Token to Token/TokenKind 2019-10-09 01:05:34 +03:00