Commit Graph

746 Commits (374133086d2792408d45f484cf532f19a2eae2bb)

Author SHA1 Message Date
Alexander Medvednikov 368e8e85a8 compiler: info message when trying to use an old command 2019-10-18 09:56:57 +03:00
joe-conigliaro 6dea2359ab strconv: optimize functions
also make it the responsibility if the caller to properly trim whitespace
2019-10-18 08:20:03 +03:00
Alexander Medvednikov c355e967ad move array filter codegen to comptime.v 2019-10-18 07:58:54 +03:00
Alexander Medvednikov d501dc4c11 compiler: first step to validate cmd flags 2019-10-18 07:48:46 +03:00
Alexander Medvednikov 80e79a3966 array: optimized generic filter() 2019-10-18 07:30:39 +03:00
pfefferminz132 eda0c73bef compiler: use eprintln for cache diagnostic messages 2019-10-18 06:16:33 +03:00
joe-conigliaro 8d16762f03 strconv module + use it in builtin/string instead of C functions 2019-10-17 19:37:55 +03:00
Simon Ernst 270934441c os: make ls() return an optional 2019-10-17 14:30:05 +03:00
joe-conigliaro 4932a32d91 compiler: fix os import by default in v scripts 2019-10-17 11:52:46 +03:00
Unknown User f46b58b09d int: i64 hex() use PRIx64 2019-10-17 11:06:54 +03:00
joe-conigliaro b32a462b2e math: new consts + helpers funcs for string to int / float 2019-10-17 09:04:57 +03:00
Alexander Medvednikov 5cd38ec91b V shell scripts 2019-10-17 08:27:27 +03:00
Vinicius Rangel 96152510e5 parser: interpolation calling twice fix
if string interpolation needs to call a function, it will cache the
return to .len & .str usage in the generated code
2019-10-17 07:02:02 +03:00
Vinicius Rangel 5481f226dd parser: Infinite multi-dimensional array 2019-10-17 06:52:58 +03:00
Alexander Medvednikov 5faa7e7861 Revert "repl: add readline for user input "
This reverts commit 83732642ac.
2019-10-17 03:37:30 +03:00
Henrixounez 83732642ac repl: add readline for user input 2019-10-16 18:38:07 +03:00
Henrixounez 99e07718da readline: fix reading on linux, crash on mac 2019-10-16 12:46:24 +03:00
joe-conigliaro 280ccfa177 math: fns for gettng bit repr of float & vice versa 2019-10-16 11:19:03 +03:00
Alexander Medvednikov 66f36be7d0 Revert "repl: readline line editing "
This reverts commit 1956c6f906.
2019-10-16 03:31:48 +03:00
Alexander Medvednikov 00fd1abf82 readline: fix macos 2019-10-16 03:20:40 +03:00
Alexander Medvednikov 526f1a3172 Revert "Revert "parser: fix programs without fn main""
This reverts commit 61af044316.
2019-10-16 03:20:16 +03:00
vitalyster 9b38f59184 msvc: detect x86 host and use x86 build tools 2019-10-16 02:54:35 +03:00
Henrixounez 1956c6f906 repl: readline line editing 2019-10-16 02:50:48 +03:00
vitalyster 0e0f0ae5ea escape os.exec('"$vexec"') to support directories with spaces 2019-10-16 02:49:51 +03:00
Simon Heuser a5d61f6da0 math.complex: make fields public 2019-10-15 12:43:28 +03:00
Alexander Medvednikov 49d6c26da4 parser: do not allow str[i++]; update contributing.md 2019-10-15 11:06:22 +03:00
Henrixounez bb1eca3564 readline: basic mac and windows version using os.getline 2019-10-15 09:04:22 +03:00
Alexander Medvednikov 75e2a29cb5 string: bring back strtoul for now 2019-10-15 08:53:35 +03:00
Alexander Medvednikov f9593bd857 builtin: float.v + remove #include <math.h> 2019-10-15 08:41:45 +03:00
Alexander Medvednikov 4b176ba855 string: test i64() and u64() 2019-10-15 04:26:19 +03:00
Alexander Medvednikov 10ed65bc12 fix float.eq() 2019-10-15 03:45:11 +03:00
Alexander Medvednikov 91690a1b54 fix f64 tcc eq crash 2019-10-13 04:27:57 +03:00
joe-conigliaro ae3ec380f8
add notice about msvc compilation (#2340) 2019-10-14 18:36:29 +11:00
Nicolas Sauzede eb031b6800 compiler: enhance non-pub struct fields error message 2019-10-14 10:15:21 +03:00
Alexander Medvednikov 2d127cb694 tcc windows fixes 2019-10-14 09:03:11 +03:00
Alexander Medvednikov a68222b55b comptime: fix tcc check 2019-10-14 08:53:03 +03:00
joe-conigliaro 9a2b8a0814
compiler: move msvc compiler to -cc flag instead of -os (#2338)
* move msvc to -cc flag instead of -os

* undo unrelated change

* do first build without msvc

* remvove flags temp

* fix comment
2019-10-14 16:41:46 +11:00
Alexander Medvednikov 093d8a2b00 compiler: remove math dependency 2019-10-14 08:34:48 +03:00
joe-conigliaro 7dc740d084
CI: fis vjs build failure (#2337)
* fix ci building v

* fix v.js

* more js fix

* test

* fix

* remove testing
2019-10-14 15:42:27 +11:00
joe-conigliaro de10a529b0 CI: fix building v 2019-10-14 07:08:02 +03:00
Alexander Medvednikov e2bca190a9 compiler: v.v fixes 2019-10-14 05:18:48 +03:00
joe-conigliaro e5b0478e19
compiler: optimize, don't rescan module directory for files (#2334)
* optimize, don't rescan module directory for files
* move from table to v
2019-10-14 12:07:59 +11:00
Alexander Medvednikov 6a951751f7 compiler: fix building_v 2019-10-14 03:56:53 +03:00
Alexander Medvednikov b237ffcf09 Revert "move compiler/main.v to v.v"
This reverts commit 3748de8736.
2019-10-14 03:48:36 +03:00
Alexander Medvednikov 3748de8736 move compiler/main.v to v.v 2019-10-14 03:38:06 +03:00
Alexander Medvednikov 61af044316 Revert "parser: fix programs without fn main"
This reverts commit bf21108fdb.
2019-10-13 17:55:12 +03:00
Alexander Medvednikov b1806b57d8 tests: no main fn 2019-10-13 17:50:55 +03:00
joe-conigliaro a90427a663 parser: fix variadic function unused var C error 2019-10-13 16:58:54 +03:00
Delyan Angelov 53c64abdeb compiler: make compiler an ordinary vlib/compiler module
* Move compiler/ under vlib/compiler/ .

* Add a minimal compiler/main.v driver program.

* Cleanup compiler/main.v .

* Make most compiler tests pass again.

* Apply the fix by @joe-conigliaro , so that the rest of the compiler tests are fixed too.

* Thanks to @avitkauskas, now the vlib/vcompiler/tests/str_gen_test.v test does not need to be special cased anymore.

* Reapply @joe-conigliaro fix for vgen.
2019-10-13 16:37:43 +03:00
Alexander Medvednikov ae2af4c36d parser: a small immutable field fix 2019-10-13 01:50:19 +03:00
Nicolas Sauzede 1292163637 runtime: add windows support for nr_cpus() 2019-10-13 01:01:15 +03:00
Alexander Medvednikov 432e074b4e fix complex_test.v 2019-10-12 22:39:18 +03:00
Alexander Medvednikov a76165828b snake_case consts 2019-10-12 22:36:14 +03:00
Alexander Medvednikov 81f8b26127 os.path_separator 2019-10-12 22:18:19 +03:00
Vitalie Ciubotaru ae6a426689 bitfield: remove workaround in assignment operations 2019-10-12 22:03:18 +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
Don Alfons Nisnoni 5ef2c947f7 szip: use `&zip` instead of `*zip` (#2301) 2019-10-12 12:46:33 +03: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
joe-conigliaro dd053d79b0 vlib/examples: fix gl/glfw/gg examples. rename init functions 2019-10-12 06:03:15 +03:00
Alexander Medvednikov b107b4f1e5 modules: create the modules directory if it's missing, use cache/ 2019-10-12 05:04:59 +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 51388fea75 compiler: module init function & init consts for cached modules 2019-10-12 01:17:37 +03:00
Don Alfons Nisnoni c7e47e6884 array: minor clean up 2019-10-12 00:06:30 +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 9193242a76 fix runtime module test 2019-10-11 14:16:02 +03:00
Alexander Medvednikov af46bf515f glfw: bring back 64 bit glfw3.dll 2019-10-11 13:47:56 +03:00
Alexander Medvednikov 52c2fa44b8 runtime: nr_cpus() 2019-10-11 13:47:56 +03:00
Alexander Medvednikov a280e98d7f fix the build 2019-10-11 06:57:08 +03:00
Alexander Medvednikov 726aaecc46 compiler: make V compilable wit the tcc backend 2019-10-11 06:49:53 +03:00
Don Alfons Nisnoni 942c56ca95 array: add reduce() method 2019-10-11 04:12:40 +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 f86a52aae6 socket: reuse socket parameters in addrinfo hints 2019-10-10 20:09:43 +03:00
Delyan Angelov e61dce6441 freetype: fix compiler warning about ctx._draw_text 2019-10-10 20:09:19 +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
joe-conigliaro f8fefd5a60 urllib: rem underscore methods from; add strings index_bytes 2019-10-10 20:04:11 +03:00
Delyan Angelov f3abb9e682 fix 'v -debug examples/hello_world.v' 2019-10-10 20:02:32 +03:00
Alexander Medvednikov 9385ed27ae fix v.js 2019-10-10 01:27:16 +03:00
Alexander Medvednikov 1f6535afb0 array/map: remove _get(), _push() etc 2019-10-10 01:15:19 +03:00
Alexander Medvednikov 2411b8d1e7 module cache fixes; do not allow function names starting with _ 2019-10-10 00:44:26 +03:00
vitalyster 0796e1dd69 socket: no need to initialize WinSock on each request 2019-10-09 21:01:31 +03:00
Alexander Medvednikov b1da59845e array: fix initialization of empty fixed size arrays 2019-10-09 15:26:30 +03:00
Alexander Medvednikov 29f578d172 cc: bring back os.rm() 2019-10-09 07:02:45 +03:00
Alexander Medvednikov 7690b58691 remove experimental os2 test 2019-10-09 06:41:55 +03:00
Alexander Medvednikov a9a73d9315 caching modules: almost there 2019-10-09 06:35:58 +03:00
Unknown User c1eb714a7f bitfield: change `[0;n]` to `[0].repeat(n)` 2019-10-08 13:24:02 +03:00
Unknown User 6edc25f512 pg: remove unused imports 2019-10-08 13:23:39 +03:00
Don Alfons Nisnoni fecf3f19c3 array: add filter() method 2019-10-08 13:23:17 +03:00
vitalyster e10848e0d5 windows: read console with ReadConsole when it is not redirected 2019-10-08 12:29:09 +03:00
Delyan Angelov 60d4f47f7a improve crash diagnosis/detection when a test segfaults 2019-10-08 02:34:55 +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
Alexander Medvednikov f1923d454c parser: make verbose mode less verbose 2019-10-07 01:25:53 +03:00
Henrixounez 5acadbab32 readline: optional return, automatic raw mode and standalone functions 2019-10-06 16:28:41 +03:00
Enrico Lefass b0573bd4e4 time: add new public format function ddmmy() 2019-10-06 16:24:37 +03:00
Alexander Medvednikov b242e8d7ff optimize `a in [1,2,3]` to `a == 1 || a == 2 || a == 3` 2019-10-06 06:07:38 +03:00
Alexander Medvednikov 65aafb3cf1 3d arrays are not supported yet 2019-10-06 04:18:55 +03:00
Alexander Medvednikov 6a0599b5f4 raw strings with r'raw' 2019-10-06 04:11:08 +03:00
Alexander Medvednikov 735336e569 array: 2d and 3d test 2019-10-05 16:03:19 +03:00