Commit Graph

1779 Commits (195f3f465be616a48816b249b0589d62b0c2636f)

Author SHA1 Message Date
Delyan Angelov b7c477cc18 freestanding: ptr_str, string concat, struct declaration
* compiler: extract c_common_macros from c_headers, and use it in bare_c_headers too. Support for ptr_str and string concatenation in -freestanding mode.

* Add tests for structs and string concatenation in -freestanding mode .

* Move check_string_add_works to string/string.v .
2019-12-16 19:05:33 +03:00
lutherwenxu dadf147382 flag: implement *_opt() and *_multi()
It's very often that someone will need to process values that were not
provided separately (eg. generating a complex default value like in V).

This commit allows the user to call the *_opt() functions instead of
forcing them to provide some magical default values.

* flag: Implement int_multi(), float_multi() and string_multi()

These 3 functions are useful when the application expects a flag to be
repeated more than once.

A sample would be:
v -cflags someflag -cflags secondflag

This feature exposes the raw array that the flag parser internally keeps
and allow the application to parse it however they want instead of
dropping everything except the first element.

* flag: Add documentation

Add comments describing what *_opt() and *_multi() do.
2019-12-16 19:03:38 +03:00
vitalyster d1714c4a2a cc.v: build thirdparty objfiles with msvc when no cc installed 2019-12-16 18:56:37 +03:00
Delyan Angelov 7e0a9fb83a compiler: fix regression for -d option flag 2019-12-16 18:55:10 +03:00
João Victor Oliveira Couto b30f989f44 builder_js: fix mutable error 2019-12-16 18:54:44 +03:00
Kaito Sugimoto 9dd86a2de6 math: fix abs (-0.0) 2019-12-15 19:37:17 +03:00
Delyan Angelov faa04c586f compiler: restore ability to pass -prod option to run and runrepl. (#3095) 2019-12-15 21:21:37 +11:00
joe-conigliaro f2c40bf49d
compiler: fix for -Wl -Wa -Wp dont like spaces (#3091) 2019-12-15 16:24:12 +11:00
joe-conigliaro 717740cfcf simplify cflag parsing 2019-12-15 06:18:14 +03:00
joe-conigliaro be60193588 workaround for -g with default optional value 2019-12-15 06:11:02 +03:00
Alexander Medvednikov 54b0097cee fix repl_test.v 2019-12-15 05:51:00 +03:00
Alexander Medvednikov 68357876ca fix v_command() 2019-12-15 05:44:34 +03:00
Alexander Medvednikov 12ebed0589 error on an incorrect V command 2019-12-15 05:35:17 +03:00
Alexander Medvednikov 48ea136a9a tutorials: vweb: add an article 2019-12-15 00:56:08 +03:00
BigBlack fc33f9d49c type alias check 2019-12-14 22:01:20 +03:00
Alexander Medvednikov 2e23592264 for: check for redefinitions 2019-12-14 20:00:03 +03:00
Alexander Medvednikov 45695543ba tutorial: minor fixes 2019-12-14 18:59:02 +03:00
Delyan Angelov 1cd5fab21d testing: support for internal module testing 2019-12-14 15:57:28 +03:00
joe-conigliaro cb9e9286ef
compiler: fixes issue #3074 - can't call a generic function twice with the same data type 2019-12-14 17:54:34 +11:00
prime31 75c01dec30 cleanup SDL event system 2019-12-14 03:31:07 +03:00
Alexander Medvednikov 8581c11900 update malloc 2019-12-14 02:46:55 +03:00
Alexander Medvednikov 962109e855 parser: verify async functions 2019-12-14 02:33:19 +03:00
Alexander Medvednikov ef562413cd -prealloc 2019-12-14 02:28:15 +03:00
Alexander Medvednikov 88cde6e4e6 orm: skip fields 2019-12-14 02:07:06 +03:00
Alexander Medvednikov 797d4364e7 vweb: fix reading request's body/headers 2019-12-13 23:46:11 +03:00
Alexander Medvednikov fb3da327d6 vweb: fix a cookie bug 2019-12-13 21:11:40 +03:00
Alexander Medvednikov 83b8d642b4 fix csv/writer.v 2019-12-13 20:45:48 +03:00
Alexander Medvednikov c72bf0e1b1 global access modifier 2019-12-13 20:28:28 +03:00
Alexander Medvednikov dc83e30a44 access modifiers: update tests/examples 2019-12-13 20:09:11 +03:00
Alexander Medvednikov 78131e78bc fix sruct access modifiers (pub, pub mut, mut) 2019-12-13 20:00:38 +03:00
Delyan Angelov fc64238a39 testing: allow tests to import the same module with no custom options 2019-12-13 19:28:39 +03:00
Robert Cristof ec36755407 mysql: add mysql.escape_string() 2019-12-13 19:12:42 +03:00
Alexander Medvednikov 569a64068a ui/examples: users: fix button click 2019-12-12 23:42:51 +03:00
Alexander Medvednikov cddfbf7395 parser: allow public types `pub type Foo Bar` 2019-12-12 22:57:47 +03:00
Alexander Medvednikov b8f728590b string: last_index ?int 2019-12-12 21:54:48 +03:00
penguindark 8e1c27d129 utf8: punctuation 2019-12-12 21:08:44 +03:00
Alexander Medvednikov 0eeb607ffd fix fopen definition 2019-12-12 21:03:08 +03:00
Alexander Medvednikov bd833deef3 assoc: verify the field exists and verify the type 2019-12-12 20:38:49 +03:00
Alexander Medvednikov 6982f4a5a2 parser: force {} blocks on new lines 2019-12-12 20:27:05 +03:00
Alexander Medvednikov 02c29624d8 freetype: minor fixes 2019-12-12 14:44:29 +03:00
Alexander Medvednikov 8ba29f968a cc.v: hide "mingw" not found message 2019-12-12 14:27:47 +03:00
Alexander Medvednikov 88ec9c235d sort structs: handle fixed size arrays 2019-12-12 14:21:22 +03:00
Alexander Medvednikov 576618d8cc string cloning; fix `foo.str += 's'` 2019-12-12 05:20:52 +03:00
Alexander Medvednikov e182274fe7 free memory block 2019-12-11 23:58:51 +03:00
Alexander Medvednikov ad250523cd fix parser.fileis() 2019-12-11 21:42:22 +03:00
Alexander Medvednikov 6ffed854cc cgen.prepend_to_statement() 2019-12-11 20:51:58 +03:00
Alexander Medvednikov 47f9c02331 Revert "cgen.prepend_to_statement()"
This reverts commit 507c71ad80.
2019-12-11 20:37:39 +03:00
Alexander Medvednikov 507c71ad80 cgen.prepend_to_statement() 2019-12-11 19:33:54 +03:00
taojy123 28f76f10db vweb: fix empty post request blocking 2019-12-11 19:20:46 +03:00
Alexander Medvednikov 7dcd47369b option to pre-allocate a memory block 2019-12-11 18:41:25 +03:00
Delyan Angelov 13769f440f vweb: continue after bad http client connection; performance fixes
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .

* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.

* Fix -g compilation for urllib.v .

* vweb: println action= only in debug mode.

* vweb: max request headers counting fix.

* Make vweb.html get a 'ctx mut Context' param, just like the other methods.

* vweb: simplify add_header.

* Use a string builder for the most common html case so that the response http text can be send in one go.

* vweb: reduce _STR/string interpolation usage in the most common html response case.

* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov cfeec92826 use -Wunused-function for now 2019-12-11 15:51:12 +03:00
joe-conigliaro 3486118ab7 compiler: force custom struct .str() methods to be defined public 2019-12-11 03:24:26 +03:00
Alexander Medvednikov f286387647 vweb: secure HttpOnly cookies 2019-12-11 03:20:30 +03:00
Alexander Medvednikov cdfbb2978d strings: replace_each([]); orm: update 2019-12-10 23:57:49 +03:00
joe-conigliaro 4e69c40e12 parser: fix use blank ident as value 2019-12-10 21:35:59 +03:00
Alexander Medvednikov 9726e18c0a string: optimize replace() 2019-12-10 18:50:21 +03:00
joe-conigliaro 6d5e9f88f8 parser: allow enums to be used as bitfield flags 2019-12-10 06:16:47 +03:00
Alexander Medvednikov 0650d58818 vweb: readme: list some features of vweb 2019-12-10 00:16:39 +03:00
Alexander Medvednikov 51051cdf92 vweb: enable @ logic in the header + fix the example 2019-12-09 23:34:38 +03:00
Alexander Medvednikov 6f49d4c1d2 orm: bool support; vweb fixes 2019-12-09 23:20:29 +03:00
Delyan Angelov 32b0225079 remove os/time references from live programs, fix warnings 2019-12-09 18:53:17 +03:00
Alexander Medvednikov 8082a5e7f4 fix benchmarking stats 2019-12-09 17:25:56 +03:00
Alexander Medvednikov 75280bb54c fix int.str() memory bug 2019-12-09 16:41:13 +03:00
Delyan Angelov f68d9d1a16 live: always add os and time when compiling -live programs
Fixes fail when -live user programs do not use os and time.
2019-12-09 13:48:41 +03:00
sha0coder 7ffa315566 vlib/http: ssl handshake fix 2019-12-09 13:31:24 +03:00
Delyan Angelov ed5c9a20e5 update brew instructions for sdl dependencies 2019-12-09 03:18:08 +03:00
Alexander Medvednikov b2207c3d28 do not prepend module to external fn name 2019-12-09 00:24:50 +03:00
Alexander Medvednikov 4ebf53c6e9 allow non snake_case fn names in imported fns 2019-12-08 23:56:31 +03:00
prime31 faedebbb4e sdl: separate sdl module into multiple, dependent submodules 2019-12-08 23:30:38 +03:00
penguindark 9730164613 atoi: fix leading zeros in string to int conversion 2019-12-08 23:22:33 +03:00
Alexander Medvednikov 8f9b6ac248 '$foo()' string interpolation 2019-12-08 23:18:11 +03:00
Alexander Medvednikov 874ff42687 temporary fix of "v -g v.v" 2019-12-08 20:58:16 +03:00
Delyan Angelov 1bb38a38bb tooling: add tools/oldv , for use with 'git bisect', or for testing with older V 2019-12-08 20:21:17 +03:00
Alexander Medvednikov 4d1f721558 fix "" string interpolation bug 2019-12-08 20:06:00 +03:00
Alexander Medvednikov d58982a6f6 vweb: fix tests 2019-12-08 18:07:04 +03:00
Alexander Medvednikov 1c6f7180b2 vweb: fix form parsing 2019-12-08 17:37:23 +03:00
Alexander Medvednikov 02eee49d25 fix defer_test 2019-12-08 15:30:14 +03:00
Alexander Medvednikov c9886e6f42 use ++ everywhere 2019-12-08 14:34:51 +03:00
Alexander Medvednikov cc682eafe1 require ++ instead of += 1 2019-12-08 14:11:25 +03:00
Nicolas Sauzede 8bc94947e5 tvintris: fix else cases 2019-12-08 13:45:29 +03:00
bogen85 8178e1f7da freestanding: malloc/free with mm_alloc an mm_free
Added more array support that depends on malloc. Added string clone (that uses malloc). Added test for it. Eliminated stack allocated buffers from most of the unit checks.
2019-12-08 13:44:52 +03:00
Alexander Medvednikov 6ec626c5e9 improve invalid character errorrs 2019-12-08 12:57:40 +03:00
Alexander Medvednikov 8b0de95c0a improve the C struct check 2019-12-08 04:23:22 +03:00
Alexander Medvednikov 6ae51b2cbf handle unknown C types 2019-12-08 04:10:56 +03:00
Alexander Medvednikov 7adda3b71a vweb: fix get_cookie() 2019-12-08 01:48:49 +03:00
Alexander Medvednikov b1174428a5 vweb: fix redirect() 2019-12-08 01:05:57 +03:00
Alexander Medvednikov 30fc29fa6d fix csv test 2019-12-08 01:03:35 +03:00
Alexander Medvednikov 7069cd6ab5 a separate scope for x := opt, part 2 2019-12-08 00:45:42 +03:00
Alexander Medvednikov b26a0bde38 a separate scope for x := opt, part 1 2019-12-08 00:34:04 +03:00
Alexander Medvednikov 06a0f39f7b a separate scope for 2019-12-08 00:30:06 +03:00
Alexander Medvednikov dc2da1de98 fix V build 2019-12-08 00:27:24 +03:00
Alexander Medvednikov 8ebc2fe601 do not allow redefinition in `x := opt() {` 2019-12-07 23:09:48 +03:00
Alexander Medvednikov b79588dc69 handle bad value in `if x := opt() {` 2019-12-07 23:05:54 +03:00
Alexander Medvednikov 49f960aea5 fix some windows cast warnings 2019-12-07 22:42:20 +03:00
Alexander Medvednikov c019dd6f98 test assert in functions that return values 2019-12-07 22:42:20 +03:00
bogen85 751ba48bf5 freestanding improvements (exit, function checks)
Fixed exit for freestanding (as assert now uses it).
Running each function check now in a forked process so they can be killed or return other exit codes (and so each function runs, even if others crash)
2019-12-07 22:25:19 +03:00
Alexander Medvednikov d73586743b fix assert in functions that return values 2019-12-07 19:33:59 +03:00
Alexander Medvednikov b9a24e3b51 Revert "use stdint.h with msvc"
This reverts commit 93529031de.
2019-12-07 19:25:17 +03:00
Alexander Medvednikov 93529031de use stdint.h with msvc 2019-12-07 19:20:53 +03:00
Alexander Medvednikov 63ec3c0486 fix a wrong "0 character in a string literal" error 2019-12-07 18:19:48 +03:00
Alexander Medvednikov 7b0e378947 fix clipboard_linux.v 2019-12-07 18:16:19 +03:00
Alexander Medvednikov e1ad1794e3 fix readline_linux.v 2019-12-07 17:46:01 +03:00
Alexander Medvednikov 9cba3bdf78 windows: WideCharToMultiByte() returns an int 2019-12-07 17:31:07 +03:00
Alexander Medvednikov ad6adf327e vlib: fix missing `else{}` in match statements 2019-12-07 17:23:37 +03:00
Alexander Medvednikov 2fb7fba856 require `else` in `match` statements 2019-12-07 17:01:44 +03:00
Alexander Medvednikov a594e009f2 test high order function 2019-12-07 16:13:25 +03:00
Alexander Medvednikov f51784ee01 remove unnecessary casts everywhere 2019-12-07 15:51:00 +03:00
Alexander Medvednikov d7ccbba2c9 do not allow casting a type to itself 2019-12-07 15:31:56 +03:00
Alexander Medvednikov a854d396ff clipboard: fix mutability on macOS and Windows 2019-12-07 15:22:28 +03:00
Alexander Medvednikov c2814c1ada vlib: fix remaining mutability errors 2019-12-07 15:13:23 +03:00
Alexander Medvednikov 329485d4b6 vweb: fix headers and cookies 2019-12-07 15:04:05 +03:00
Alexander Medvednikov cc834dd7a7 parser: `x in []` is always false 2019-12-07 03:05:19 +03:00
João Victor Oliveira Couto 5a8c07dcf5 strings: builder: write_b() 2019-12-06 23:02:09 +03:00
Alexander Medvednikov 55f32fc413 more mutability fixes 2019-12-06 19:23:24 +03:00
Alexander Medvednikov e3b5d7fd7c rename if_st to if_statement 2019-12-06 19:21:26 +03:00
Alexander Medvednikov bf1b751f47 cli: update mutability 2019-12-06 19:12:01 +03:00
Alexander Medvednikov c8d111924d check unused and unmodified vars in all modules, not just main 2019-12-06 18:43:56 +03:00
Delyan Angelov 353805e170 os: test is_link() 2019-12-06 12:09:35 +03:00
Alexander Medvednikov aed22a57e3 fixed size array with const length (`[N]int`) 2019-12-06 02:41:03 +03:00
Alexander Medvednikov be323e2fb6 ci: set up pg database to test ORM 2019-12-06 02:11:39 +03:00
Alexander Medvednikov 71c0c4803f ORM fixes 2019-12-06 02:00:37 +03:00
Alexander Medvednikov 79b26b1654 use get_type2 in struct.v 2019-12-05 19:02:33 +03:00
Alexander Medvednikov cca650c655 better `foo must return (int, int)` error 2019-12-05 18:55:27 +03:00
Alexander Medvednikov cb46bf314e get_type.v 2019-12-05 18:48:39 +03:00
BilligsterUser 0a38b307cd os_test: use rmdir() to del dirs 2019-12-05 17:08:55 +03:00
Delyan Angelov 98374ea6fe CI: fix msvc (temporary work around dialogs poping up) 2019-12-05 17:08:18 +03:00
Alexander Medvednikov 4888d27b71 fix v -live on macOS 2019-12-05 14:40:14 +03:00
Alexander Medvednikov 2a1b0a8cae rename table.register_type2() 2019-12-05 14:24:25 +03:00
Nicolas Sauzede 2e30e1453d sdl: fix old vsdl2 references 2019-12-05 12:58:48 +03:00
Alexander Medvednikov 90e3ab8c1e debugging v -live message.v 2019-12-05 12:48:23 +03:00
Nicolas Sauzede 9d854c5df0 vlib: sdl module + tVintris example 2019-12-05 11:25:55 +03:00
Alexander Medvednikov 6dd1270539 builtin: remove an unnecessary malloc() call 2019-12-05 11:08:41 +03:00
Alexander Medvednikov 867f952d6b for: ranging through fixed size arrays 2019-12-05 02:17:17 +03:00
Alexander Medvednikov fb546f376e set max module depth to 5 2019-12-05 01:27:04 +03:00
Alexander Medvednikov e707ac4f28 test v -live message.v 2019-12-05 00:17:38 +03:00
Alexander Medvednikov 2144c162c4 os: is_link() 2019-12-04 23:53:11 +03:00
Alexander Medvednikov a57e29dfc5 os: replace dir_exists with is_dir; file_exists() => exists() 2019-12-04 23:17:45 +03:00
Alexander Medvednikov fb237b9e53 parser: check types in `a in b` expressions 2019-12-04 22:17:24 +03:00
Alexander Medvednikov d9248e8d52 parser: fix a wrong index in an error 2019-12-04 13:36:35 +03:00
Delyan Angelov 9a6711fa1b compiler: c'str' now has type charptr 2019-12-04 13:34:06 +03:00
Alexander Medvednikov 40df0644ca fix all Foo{!} 2019-12-04 13:08:28 +03:00
Alexander Medvednikov e32cbfcca7 error on C.Foo{!} 2019-12-04 12:56:59 +03:00
Alexander Medvednikov b2b34e18e4 use the new &C.Foo(0) cast 2019-12-04 12:19:32 +03:00
Alexander Medvednikov 2bafd41183 `&C.Foo(0)` cast to replace `&C.Foo{!}` hack 2019-12-04 12:13:17 +03:00
bogen85 a9aaa13a09 freestanding: sys_getuid, sys_waitid; minimal fork check; remove bare.S 2019-12-04 11:46:09 +03:00
Alexander Medvednikov 47f5e1178f -output-cross-platform-c for creating a single x-platform C file 2019-12-04 02:02:52 +03:00
Delyan Angelov eb20dd39b1 freestanding: init consts 2019-12-04 01:40:26 +03:00
Alexander Medvednikov c4a43633da i8, i18, u16 str() 2019-12-03 21:14:17 +03:00
Alexander Medvednikov 66f271f100 fix a string interpolation bug 2019-12-03 20:41:49 +03:00
Alexander Medvednikov f192429c8a $if mac => $if macos 2019-12-03 16:29:37 +03:00
Alexander Medvednikov ff80e3a5fa i8 print test + $if mac => $if macos 2019-12-03 16:09:43 +03:00
Delyan Angelov b907cf2179 sync/waitgroup: force sleeping for 1ms
fixes issues #2874 and #2961
2019-12-03 15:05:08 +03:00
Delyan Angelov 0a8d2d5dc7 compiler: guess cc kind for -prod builds, to know when to add -flto 2019-12-03 13:58:24 +03:00
Ulises Jeremias Cornejo Fandos b31ec4ca9a math: add factorial function (via factorial table) 2019-12-03 11:34:26 +03:00
Enrico Lefass 6d28a80bf8 haiku support (part 2) 2019-12-03 11:26:47 +03:00
Don Alfons Nisnoni f806e0f9e5 mysql: add error handling 2019-12-03 11:18:20 +03:00
Don Alfons Nisnoni 33793a869f mysql: make the struct public & update some code 2019-12-02 17:26:58 +03:00
Alexander Medvednikov c0bb88dfb0 allow # in webview module 2019-12-02 12:31:49 +03:00
Alexander Medvednikov 753e926356 debug v symlink error 2019-12-02 12:16:55 +03:00
Don Alfons Nisnoni 254afcb2d0 *C.char => charptr 2019-12-02 11:37:35 +03:00
penguindark 322733d59a encoding.utf8 fixes 2019-12-01 20:41:29 +03:00
radare 5ff387bbe4 strings: split_nth and add tests 2019-12-01 16:10:13 +03:00
Delyan Angelov ec15bfb7d1 v test v => v test-compiler 2019-12-01 12:50:13 +03:00
bogen85 854309a7d8 freestanding: add array support (stack only for now) 2019-12-01 11:27:36 +03:00
Alexander Medvednikov 3fea8f3de5 *char => charptr everywhere 2019-12-01 10:33:26 +03:00
Alexander Medvednikov 698c3823ee charptr fix 2019-12-01 10:11:29 +03:00
Alexander Medvednikov 0999273d32 CReserved => c_reserved; charptr 2019-12-01 09:56:53 +03:00
Alexander Medvednikov a23a4ed98a update all index() uses 2019-11-30 15:27:16 +03:00
Alexander Medvednikov 2651b8957a parser: fix unreachable code error in if a := opt() 2019-11-30 15:17:27 +03:00
Alexander Medvednikov 81d4f66fbb string: make `index()` return `?int` instead of `int`/-1 2019-11-30 13:21:21 +03:00
Alexander Medvednikov cc2bd0bb68 string: make substr private 2019-11-30 12:50:57 +03:00
Alexander Medvednikov 1a0b78ae2f fix the cli module 2019-11-30 12:44:50 +03:00
Alexander Medvednikov 7e4799334f array: make left/right/slice private 2019-11-30 12:37:34 +03:00
Alexander Medvednikov b38283dcf1 string: make left/right private 2019-11-30 12:06:17 +03:00
prime31 ff216e7d50 append module name for module search path 2019-11-30 11:17:37 +03:00
Alexander Medvednikov 68b4dab582 parser: another infinite loop fix 2019-11-30 10:37:28 +03:00
Alexander Medvednikov c00a7f3a5e parser: fix infnite loop with `fn foo(&) {}` 2019-11-30 10:21:58 +03:00
Alexander Medvednikov d71532b64e optimize `for c in str {` 2019-11-30 09:41:35 +03:00
Delyan Angelov c7f8f2175b move vlib/builtin/utf8_util.v to vlib/encoding/utf8/utf8_util.v 2019-11-30 08:52:37 +03:00
Emily Hudson 661ddf3d1e compiler: realpath before trying to basefilename 2019-11-30 08:01:31 +03:00
Alexander Medvednikov 850788c4bb parser: fix a bug with & and == 2019-11-29 23:18:10 +03:00
Alexander Medvednikov 4c11eb5ddc -bare => -freestanding 2019-11-29 22:49:05 +03:00
Alexander Medvednikov f724a956b3 parser: fix `a & b == c` precedence 2019-11-29 22:42:32 +03:00
Alexander Medvednikov 881584d04c V 0.1.23 2019-11-29 20:00:33 +03:00
Alexander Medvednikov 1bfcdaa2cc ci: test the new prebuilt packages 2019-11-29 19:14:26 +03:00
Alexander Medvednikov 71378b8041 parser: better syntax error for unexpected tokens 2019-11-29 17:06:49 +03:00
joe-conigliaro 11aaee685a generics: fix errors & simplify 2019-11-29 16:46:43 +03:00
penguindark 82d4a731f3 utf8 functions (to_lower etc) 2019-11-29 16:25:25 +03:00
Alexander Medvednikov 431568faad x64: fix off by one error in for loops 2019-11-29 12:33:36 +03:00
Alexander Medvednikov 9e19472c33 show an info message if a C compiler is not installed 2019-11-29 12:12:06 +03:00
bogen85 e31d892598 make _V_mret_ unique by putting p.token_idx in it 2019-11-29 11:11:53 +03:00
bogen85 729f9c3391 bare: add mm_alloc, mm_free
also split errno from return value in existing Linux syscall wrappers
update applicable syscall wrapper checks
2019-11-29 10:14:17 +03:00
Alexander Medvednikov 52d25336db x64: function calls; http: download_file() 2019-11-28 13:24:02 +03:00
prime31 208f67132d added -user_mod_path command line option to add a module search path 2019-11-28 13:04:57 +03:00
Delyan Angelov 7545ea709a enable alpine/musl CI tests 2019-11-28 11:46:52 +03:00
bogen85 3b7466a13d ci: rename multiret_with_ptrtype.v 2019-11-28 09:46:52 +03:00
bogen85 f6ec1b29f9 strconv: make string.int() stop parsing on invalid digit 2019-11-28 09:46:10 +03:00
bogen85 9374168b26 compiler: allow function expecting a void* to receive a byteptr 2019-11-28 09:44:43 +03:00
bogen85 e63300e286 temporary fix for issue #2897 2019-11-27 19:55:32 +03:00
sh0f dbaa37ea46 urllib: fix string length in escape() 2019-11-27 12:15:05 +03:00
れもん 584786d87c parser: fix `in` expression 2019-11-27 08:48:04 +03:00
Alexander Medvednikov a3b14e00a2 vweb fixes 2019-11-26 16:08:16 +03:00
Alexander Medvednikov cb8a19efaf vweb: bring back html() test 2019-11-26 09:34:09 +03:00
joe-conigliaro 3107618732 vweb: remove no longer needed special case & fix tmpl 2019-11-26 09:23:11 +03:00
ʇʞʌp 6349bd33d3 compiler: Allow `or` usage when assigning to struct fields. (#2893) 2019-11-26 09:07:35 +03:00
ʇʞʌp 79a02a4c09 parser: make `p.opt()?` work for methods 2019-11-26 09:04:59 +03:00
joe-conigliaro 385c045e5a don't add generic parsers to v.files 2019-11-26 09:04:11 +03:00
Alexander Medvednikov 8d241cc164 vweb fixes; ORM fixes; freeing strings 2019-11-26 07:47:16 +03:00
Ned Palacios bac3c0a63e compiler: add "modules/ " folder for searching local modules 2019-11-26 06:45:26 +03:00
ʇʞʌp 81d552038c parser: allow constant usage in assoc 2019-11-26 06:41:56 +03:00
bogen85 5c217b9e61 fix hexadecimal constants + freestanding fixes 2019-11-26 06:12:37 +03:00
joe-conigliaro 92f920b2b8 make errors from code parsed with statements_from_text show correctly 2019-11-25 22:22:40 +03:00
joe-conigliaro edd4706480 compiler: parser fixes for vweb 2019-11-25 15:29:55 +03:00
M 837af9b230 freebsd: backtrace 2019-11-25 13:54:56 +03:00
Delyan Angelov 30042ab54b cfns: fix some declarations 2019-11-25 13:54:07 +03:00
joe-conigliaro 7158a012c3 compiler: update to get vweb working 2019-11-25 13:48:25 +03:00
joe-conigliaro 475807566d
fix get_last_nl_from_pos when error is last token (#2882) 2019-11-25 20:58:22 +11:00
Delyan Angelov f7c103d5d2 compiler: remove legacy current workdir from module search 2019-11-25 11:32:11 +03:00
_leif ee52b4166f log: enum for logger level 2019-11-25 07:50:59 +03:00
Alexander Medvednikov 9bfea5e60b pg: define all C functions 2019-11-25 06:55:29 +03:00
Alexander Medvednikov feacc2441f socket: fix sizeof 2019-11-25 06:23:09 +03:00
Alexander Medvednikov a4ab7b14c1 wrap up struct default vals + tests 2019-11-25 05:59:58 +03:00
Unknown User 268a6dc6d9 add missing cfns 2019-11-25 04:35:41 +03:00
Delyan Angelov 5794594e19 compiler: fix vpath module search order regression 2019-11-24 19:39:30 +03:00
Enrico Lefass f496c1b27b haiku: adding support to v #1 2019-11-24 19:39:04 +03:00
Alexander Medvednikov 19b4cf66ac Windows should work now 2019-11-24 15:31:51 +03:00
Alexander Medvednikov 748e8b7ce4 more Windows definitions 2019-11-24 15:29:11 +03:00
Alexander Medvednikov b44cbc9b13 define RegQueryValueEx on Windows 2019-11-24 15:21:49 +03:00
Alexander Medvednikov 558024696c lots of C Windows function definitions 2019-11-24 15:16:19 +03:00
Abdullah Atta d4ae39348f eventbus: make it usable and add README 2019-11-24 14:27:50 +03:00
Alexander Medvednikov a74f4a661d fix C.GetStdHandle() on Windows 2019-11-24 14:07:14 +03:00
Alexander Medvednikov 24b40be548 default struct vals 2019-11-24 13:53:59 +03:00
Alexander Medvednikov 7cc21be7de clipboard: make compile on Linux 2019-11-24 13:22:57 +03:00
Alexander Medvednikov 81c17e55a6 more C fn definitions 2019-11-24 13:16:11 +03:00
Alexander Medvednikov f4fe90ea6d C fn definitions on Linux 2019-11-22 19:00:56 +03:00
Alexander Medvednikov e9e931fe4a force C function definitions 2019-11-24 12:14:22 +03:00
Alexander Medvednikov 1f93bb5a9a os: windows fixes 2019-11-23 21:40:32 +03:00
Alexander Medvednikov cfd4f0c69c os: fix fullpath call on windows 2019-11-23 21:05:49 +03:00
Alexander Medvednikov ccb261f00d os: fix unreachable code 2019-11-23 21:00:20 +03:00
Alexander Medvednikov 0aa2196eec os: fix realpath on windows 2019-11-23 20:56:22 +03:00
Alexander Medvednikov 1bd8c465d3 do not allow casting bool to int 2019-11-23 20:40:59 +03:00
Don Alfons Nisnoni 3a6ccf7f31 os: mkdir() error handling 2019-11-23 19:55:18 +03:00
Alexander Medvednikov 0fb0c43c0a pg: minor fixes 2019-11-23 19:48:00 +03:00
Dwight Schauer e724792a67 freestanding: add core linux syscalls and associated tests 2019-11-23 19:35:57 +03:00
joe-conigliaro 666509623e compiler: use token.pos instead of token.col, calculate col when needed 2019-11-23 19:31:28 +03:00
Delyan Angelov f42be0622e examples/game_of_life: add a GUI frontend; compiler: local modules relative to a main module 2019-11-23 16:33:25 +03:00
れもん 3d235169c8 parser: fix if expression 2019-11-23 14:25:57 +03:00
Abdullah Atta 0382331499 vlib: add eventbus module 2019-11-23 14:24:25 +03:00
Delyan Angelov 9b4bc0189b backtraces: cleaner looking backtrace output on linux 2019-11-23 14:22:55 +03:00
joe-conigliaro 9c1107f723 compiler: generics fix byteptr support 2019-11-23 10:06:14 +03:00
Alexander Medvednikov 57fbf0b8a9 map: fix `in` for deleted keys 2019-11-22 20:05:43 +03:00
Alexander Medvednikov 94318b1287 x64: use correct exe name and set +x 2019-11-22 19:09:14 +03:00
joe-conigliaro c11025f01f
compiler: clean up & optimize generics. add comments & support all param types (#2845) 2019-11-23 00:09:53 +11:00
Alexander Medvednikov 9712213f50 x64 machine code generation (ELF) 2019-11-22 14:33:22 +03:00
joe-conigliaro ab91733a28 small optimization with generics and use os.is_dir in vweb again 2019-11-22 10:55:20 +03:00
Dwight Schauer 4edade5067 compiler: fix a deferencing cast was causing a segfault 2019-11-22 09:11:06 +03:00
joe-conigliaro 8fbfceed30 compiler: generics - support across modules/files 2019-11-22 08:22:11 +03:00
Unknown User 7c802f31d3 parser: fix unused variable warning 2019-11-22 05:23:01 +03:00
Delyan Angelov d569f23e1c compiler: fix undeclared errors with [][]u16,u32,u64 2019-11-22 05:22:18 +03:00
gabixdev 76cd70c232 compiler: add -vpath and -vlib_path options 2019-11-21 15:06:19 +03:00
Tim Basel 597a6fead2 vlib: cli module 2019-11-21 15:03:12 +03:00
pfefferminz132 dcea76ff41 fix "v symlink" with relative paths 2019-11-21 04:34:08 +03:00
Alexander Medvednikov 8e32ef382a fix `v symlink` 2019-11-20 18:27:46 +03:00
Alexander Medvednikov 3e564a2506 parser: fix register() bug in interfaces 2019-11-20 18:19:13 +03:00
Alexander Medvednikov 759644ab36 examples: empty gg/freetype project 2019-11-20 07:26:52 +03:00
ʇʞʌp 26fb7e0821 compiler: emit Option_ typedef for fn args and struct fields 2019-11-20 00:58:31 +03:00
kevin70g 5536eb581c time: C.timeval struct member definitions fix 2019-11-19 18:28:29 +03:00
cloudsong 787f49b7a0 interface: enable calling interface with multi-args 2019-11-19 18:27:32 +03:00
joe-conigliaro 4bbed4f910 parser: fix default optional value 2019-11-19 17:47:49 +03:00
Alexander Medvednikov ddcff7e9c5 rand/pcg32: make the struct public 2019-11-19 14:26:18 +03:00
Delyan Angelov a620e66af5 compiler: add os.mv_by_cp and use it for the temporary files 2019-11-19 12:55:02 +03:00
Alexander Medvednikov 0cf232d692 parser: a better [] error message 2019-11-19 11:13:19 +03:00
PoLLeN fe81ccab20 asm.v: fix a small typo 2019-11-19 09:43:02 +03:00
Silvan Büdenbender 94b36250a1 bitfield: fix bit order 2019-11-19 03:32:44 +03:00
Alexander Medvednikov 20d6492775 os: make read_lines() return ?[]string 2019-11-19 02:25:55 +03:00
Alexander Medvednikov 52e3586be3 os: use mkdir() on Linux for now 2019-11-19 00:33:43 +03:00
Alexander Medvednikov c98db8c437 array: fix sort() for ints 2019-11-19 00:27:35 +03:00
Delyan Angelov c73f34cc5f net: make net.socket.write, net.socket.read_line more robust 2019-11-19 00:13:14 +03:00
Alexander Medvednikov 1ccd1979a4 vfmt: line comments fixes 2019-11-18 15:12:35 +03:00
Alexander Medvednikov 439bb0c5de foo()? test 2019-11-18 12:11:25 +03:00
Alexander Medvednikov 4c0269597d fix repl tests; change asm syntax a bit 2019-11-18 11:59:13 +03:00
Alexander Medvednikov f7c7ffecb3 makefile: pre-build builtin modules 2019-11-18 03:51:14 +03:00
Alexander Medvednikov e081791eaf fix repl tests 2019-11-18 02:34:49 +03:00
Jiten Palaparthi 32fbc2bdf3 remove pub for a private function in array.v 2019-11-18 00:43:23 +03:00
Don Alfons Nisnoni 78c2f8cab3 http: add some docs 2019-11-18 00:42:25 +03:00
Alexander Medvednikov 4fb0b49806 parser: fix the no fn main error in script mode 2019-11-18 00:40:59 +03:00
Alexander Medvednikov ffb72e855a vhelp: compress option 2019-11-17 15:35:05 +03:00
joe-conigliaro 6d7fe1f83c fix vtool used with paths w/spaces (win/nix) 2019-11-17 14:36:05 +03:00
Alexander Medvednikov 6ae8457f35 fix strings.Builder.str() 2019-11-17 07:05:13 +03:00
Delyan Angelov be7cf3e812 compiler: support storing temporary files under TMPDIR/v/
Fix for filepath.join not \0 terminating its result
2019-11-17 06:45:20 +03:00
Abdullah Atta 200fcd41ce vlib: add a clipboard module (Windows, macOS, X) 2019-11-17 05:40:03 +03:00
Alexander Medvednikov 2391c72e4b tcc: 64 bit by default 2019-11-17 01:14:05 +03:00
Alexander Medvednikov 6c51d0bb78 another inline asm test + disable on msvc 2019-11-17 01:07:21 +03:00
Alexander Medvednikov 2964bf9e23 inline assembly 2019-11-17 00:59:49 +03:00
Alexander Medvednikov 5a1de13e10 bare: fix str[idx] 2019-11-16 23:22:40 +03:00
Alexander Medvednikov 0c5854e371 add a c/raw string interpolation test 2019-11-16 22:17:01 +03:00
Swastik Baranwal 5d5268a53d expression: add a check for raw strings 2019-11-16 22:15:22 +03:00
Alexander Medvednikov 8d1eb759f7 fix v -o foo.c build module foo 2019-11-16 21:49:58 +03:00
Michiel Vlootman 328ccebf06 readme: fix link to vweb example 2019-11-16 19:58:55 +03:00
Alexander Medvednikov dc50ed69cf bare: fix str[idx] 2019-11-16 11:33:04 +03:00
Alexander Medvednikov a545ccb740 bare: stdint.h 2019-11-16 11:24:25 +03:00
Alexander Medvednikov 56fee6835a http: remove confusing comments and dead code 2019-11-16 10:32:17 +03:00
Alexander Medvednikov d1b8d34dd5 os_linux.v 2019-11-16 09:16:51 +03:00
Nicolas Sauzede 1dadf9d966 fix Windows warnings 2019-11-16 02:30:50 +03:00
Delyan Angelov e577b40743 compiler: add support for $if x32, x64, big_endian, little_endian 2019-11-15 16:14:28 +03:00
Alexander Medvednikov 96cde10696 C string literals (c'str'); bare builtin module; bare println() 2019-11-15 02:29:20 +03:00
Alexander Medvednikov bd97dc0134 os: realpath potential fix 2019-11-15 01:07:38 +03:00
Alexander Medvednikov a04c3bac83 CI: ubuntu-musl target 2019-11-15 00:46:40 +03:00
Alexander Medvednikov 9499275180 os: mkdir syscall on linux 2019-11-15 00:15:23 +03:00
Alexander Medvednikov 2dcb8b3bb0 bare: ArchLinux fix? 2019-11-14 22:18:22 +03:00
Alexander Medvednikov a8b5c00939 parser: allow << >> with enums 2019-11-14 22:14:14 +03:00
Delyan Angelov a329104dcb compiler: remove dead code (a tcc bug fix) 2019-11-14 11:57:28 +03:00
Alexander Medvednikov 34c4565f7c wrap up -bare 2019-11-14 11:11:52 +03:00
Alexander Medvednikov 6eaa2db533 fix V.js 2019-11-14 10:05:41 +03:00
Alexander Medvednikov 7d924679a6 []: update all examples and tests 2019-11-14 10:00:22 +03:00
Alexander Medvednikov 96b530cf85 update [] 2019-11-14 09:53:05 +03:00
Alexander Medvednikov 4a833d8151 parser: clean up all [] 2019-11-14 09:21:20 +03:00
Alexander Medvednikov 5df5f97daf parser: allow `arr = []` instead of `arr = []string` 2019-11-14 07:15:17 +03:00
Alexander Medvednikov 8d4ef822b6 1 2019-11-14 07:08:11 +03:00
Alexander Medvednikov 1d460c4d49 -bare option 2019-11-14 06:50:21 +03:00
Alexander Medvednikov b1fa0d25f0 foo()? syntax 2019-11-14 06:15:45 +03:00
BigBlack 72249ce889 fix duplicate #define generation 2019-11-13 23:35:14 +03:00
Alexander Medvednikov 861f2d4bc0 parser: skip $if windows etc blocks on a different os 2019-11-13 21:14:37 +03:00
Alexander Medvednikov 3b929cdd03 update repls tests 2019-11-13 20:40:01 +03:00
Silvan Büdenbender f30b0f1017 bitfield: add from_bytes() function 2019-11-13 19:48:00 +03:00
Alexander Medvednikov ffa6bcfff5 vfmt: handle comments 2019-11-13 11:54:22 +03:00
Steven Gay 51663520c8 MSVC backtrace 2019-11-13 11:05:06 +03:00
Alexander Medvednikov 10b0432eca parser: fix mutable map args 2019-11-12 22:35:53 +03:00
Don Alfons Nisnoni d732be64f6 array: update docs 2019-11-12 19:26:04 +03:00
Delyan Angelov 3643dcbf4b sqlite: use in-memory database in examples and tests 2019-11-12 19:25:30 +03:00
Delyan Angelov 32473eeafe net and http: more consistent error messages 2019-11-12 19:23:53 +03:00
BigBlack 99169ae4ff parser: ptr++,*(ptr+1) 2019-11-11 23:39:16 +03:00
Daren Liang bd34524a1c fractions: panic when reciprocal produces invalid fraction 2019-11-11 23:37:32 +03:00
Delyan Angelov cc81e9adfa v test v: cleanup more temporary files 2019-11-11 18:45:11 +03:00
BigBlack 0ab09a57f7 parser: multi-level pointers 2019-11-11 18:43:22 +03:00
Delyan Angelov de5b4f0497 fix tests for tcc, extract failing stuff to separate simpler files to ease debugging
* Fix compiling vlib/compiler/tests/fn_test.v with tcc.

* Extract failing tests from fn_test.v so that they are more readable and easier to debug.
2019-11-11 17:59:59 +03:00
Alexander Medvednikov e6775913aa simplify vfmt 2019-11-11 17:04:47 +03:00
Alexander Medvednikov d9b29bfb4e fix a bug in strings.Builder and wrap up vfmt 2019-11-11 08:24:28 +03:00
Alexander Medvednikov f2b1a8cb16 fix option_test.v 2019-11-11 07:09:07 +03:00
Alexander Medvednikov 8947717e3e fix the build 2019-11-11 06:19:18 +03:00
Alexander Medvednikov 0ad0a61db2 remove unnecessary empty lines in cgen 2019-11-11 06:02:01 +03:00
Alexander Medvednikov 730ef96398 another tcc fix 2019-11-11 05:33:19 +03:00
Alexander Medvednikov bf98eb55ee remove a test until a tcc bug is fixed 2019-11-11 05:27:30 +03:00
Alexander Medvednikov b3143bb559 parser: remove start_tmp() entirely 2019-11-11 05:22:38 +03:00
Daren Liang 91896af877 math: digits panic for invalid base 2019-11-11 05:21:47 +03:00
Alexander Medvednikov 887c94d9ba parser: second batch of start_tmp() 2019-11-11 05:14:54 +03:00
Alexander Medvednikov 00b3557ce1 parser: start removing start_tmp() 2019-11-11 05:06:24 +03:00
Alexander Medvednikov f30d0ce667 parser: fix a bug with complex ref fn args 2019-11-11 04:56:13 +03:00
Henrixounez 76c27c0b03 cli: create project helper 2019-11-11 00:48:56 +03:00
Alexander Medvednikov 3c4bb16ce9 disable dereferencing error for now 2019-11-10 20:32:11 +03:00
Alexander Medvednikov aea5b2e3b6 make unsafe dereferncing warning an error 2019-11-10 20:14:57 +03:00
Alexander Medvednikov ffa9646749 Revert "print_backtrace_skipping_top_frames: Implementation for MSVC "
This reverts commit d1e7a54f3a.
2019-11-10 20:01:19 +03:00
Alexander Medvednikov fdf6682254 require `unsafe` for dereferencing 2019-11-10 19:57:17 +03:00
Alexander Medvednikov c7f3413d70 more vfmt fixes 2019-11-10 19:49:19 +03:00
Don Alfons Nisnoni b9728c7af0 string: update split() method 2019-11-10 19:37:36 +03:00
Steven Gay d1e7a54f3a print_backtrace_skipping_top_frames: Implementation for MSVC 2019-11-10 19:34:53 +03:00
Henrixounez f8ab629986 readline: fix cursor position with prompt including ansi escape sequences 2019-11-10 19:33:21 +03:00
Alexander Medvednikov 3d4f85069f more vfmt fixes 2019-11-10 02:44:26 +03:00
kdmult 30481a36dc fix broken doc on windows
* replace hardcoded slash with os.path_separator

* compile only, no link, if building a module
2019-11-09 23:49:15 +03:00
Daren Liang e6c9c7d571 parser: check type for all integer only assignment operators 2019-11-09 21:57:36 +03:00
Alexander Medvednikov b1d2c6c730 lots of vfmt fixes 2019-11-09 20:42:29 +03:00
ylluminate aef02f61e1 V UI readme: Add web (JS/WASM) to platform list 2019-11-09 20:37:31 +03:00
Daren Liang c607246218 parser: add xor type check 2019-11-09 20:36:56 +03:00
Toby Webb ab37081f02 add production mode tests
Due to the inability to detect warnings in REPL tests, I implemented running something very similar, but with the -prod flag enabled.
(See https://github.com/vlang/v/pull/2536)

There is also a minor change in os.walk_ext to not add duplicated path separators:
/path//file.ext -> /path/file.ext
2019-11-09 19:35:26 +03:00
Alexander Medvednikov f33d8bd596 do not generate interface tables for unused interfaces 2019-11-09 18:13:51 +03:00
Alexander Medvednikov 32fec2c26c fix interfaces on msvc 2019-11-08 23:28:32 +03:00
Alexander Medvednikov cac719c078 []interface 2019-11-08 22:08:02 +03:00
Alexander Medvednikov 6f95be60a1 cc.v: use msvc on Windows by default if gcc is not installed 2019-11-08 21:15:26 +03:00
Daren Liang c4ff0d565b parser: check mul and div operations on str variables 2019-11-08 20:26:08 +03:00
Delyan Angelov bc826173cc fix $if msvc conditional define 2019-11-08 16:00:55 +03:00
Alexander Medvednikov 7a8e7b4db8 fix interface methods that return a value 2019-11-08 07:43:44 +03:00
Alexander Medvednikov 985fb91ee8 rewrite interfaces 2019-11-08 07:16:53 +03:00
Daren Liang f5438477df parser: check mul and div operations on strings 2019-11-08 04:32:25 +03:00
Nicolas Sauzede db4a7edf3a fix threads to actually return a voidptr 2019-11-08 03:09:02 +03:00
Nicolas Sauzede 5a8c3daba3 os: fix stat mode signedness warning 2019-11-08 03:02:02 +03:00
Alexander Medvednikov 27f6b2dd73 table: fix float/integer cast bug 2019-11-08 02:04:00 +03:00
Alexander Medvednikov f579376638 table: improve check_types() 2019-11-08 01:48:36 +03:00
Nicolas Sauzede 2f5de11c22 fix byteptr warning 2019-11-08 01:30:07 +03:00
Nicolas Sauzede 3a99217592 fix pthread 3rd arg voidptr warning 2019-11-08 00:58:49 +03:00
Delyan Angelov a44ba0b8a2 bignum module wrapper for kokke/tiny-bignum-c 2019-11-07 22:04:18 +03:00
pfefferminz132 b9e7d02462 math: make ceil return an f64 2019-11-07 19:54:51 +03:00
lorenzo pirro 6bcd0fd9cc optimize reserved type check 2019-11-07 18:45:38 +03:00
Alexander Medvednikov 6d98203572 fix "undefined" error 2019-11-07 17:57:54 +03:00
Daren Liang df6bdf59e6 parser: fix mod assign type check 2019-11-07 17:49:40 +03:00
Alexander Medvednikov fbd71e1539 expression.v 2019-11-07 17:48:48 +03:00
vitalyster 2d3944250f tools: show C output when tool can not be compiled 2019-11-07 16:17:32 +03:00
vitalyster 86447c1301 windows: use CreateProcess for os.exec 2019-11-07 16:01:17 +03:00
lorenzo pirro d57c0cfde0 parser: fix builtin as name not allowed 2019-11-07 06:00:48 +03:00
Nicolas Sauzede c8de2c0bd4 fix i64 overflow warning 2019-11-07 06:00:00 +03:00
Alexander Medvednikov c9d0bd7404 print true and false instead of 1 and 0 2019-11-07 00:07:50 +03:00
Alexander Medvednikov fdd4afa392 for.v and match.v; do not allow arrays in `match` 2019-11-06 23:30:08 +03:00
lorenzo pirro bd18f50c8a os: cp_r fn to copy files recursively 2019-11-06 23:05:35 +03:00
vitalyster 8dbeab9a7b make V work on Windows 7 2019-11-06 23:04:40 +03:00
Alexander Medvednikov e266c8a750 urllib: test str() 2019-11-06 22:35:59 +03:00
Abdullah Atta c4e9f09f0f urllib: crash when converting URL to str 2019-11-06 22:34:33 +03:00
Alexander Medvednikov 7c70f3df93 parser: & and | type check 2019-11-06 21:20:37 +03:00
Alexander Medvednikov 0f0bef2d33 parser: more typing checks 2019-11-06 20:47:03 +03:00
Alexander Medvednikov 75510e2ea1 remove `last` test 2019-11-06 18:19:03 +03:00
Alexander Medvednikov 73134035a9 parser: remove `last` 2019-11-06 18:17:14 +03:00
Alexander Medvednikov 6a812f7293 mod operator tests 2019-11-06 18:04:48 +03:00
Alexander Medvednikov 6afd7d50a6 parser: fix mod type check 2019-11-06 17:52:35 +03:00
Alexander Medvednikov ca259331e4 parser: fix % type check 2019-11-06 17:35:32 +03:00
Alexander Medvednikov f6d06fcda2 update tests and examples after the mutability fix 2019-11-06 06:57:04 +03:00
Alexander Medvednikov b720bb2e77 parser: mark var as changed only if the receiver is mutable 2019-11-06 06:48:57 +03:00
Alexander Medvednikov 8dd335295e new enum step 2 2019-11-06 06:26:04 +03:00
Alexander Medvednikov 4d876d1980 new enum step 1 2019-11-06 06:16:12 +03:00
Alexander Medvednikov 855a736a2c parser: C enums + another enum simplification 2019-11-06 05:14:34 +03:00
Daren Liang 91bb969ed1 stats: use c style for loop 2019-11-06 04:45:05 +03:00
Alvydas Vitkauskas af81b02ef0 parser: fix shift-assign to work with all integer types 2019-11-06 03:37:31 +03:00
Alvydas Vitkauskas 3080959084 parser: make let shift operators work with all types 2019-11-06 01:02:50 +03:00
Alexander Medvednikov 1b5f724df0 #include warning 2019-11-06 00:32:15 +03:00
Alexander Medvednikov 7fc7c05e9d parser: do not all string casts 2019-11-05 20:41:02 +03:00
Alexander Medvednikov b91a537c35 it's better to do this locally and update v.c manually 2019-11-05 20:27:53 +03:00
Alexander Medvednikov 1687afba9f remove locale.h and unistd.h 2019-11-05 20:05:25 +03:00
Alexander Medvednikov b929543782 remove string.h 2019-11-05 20:00:00 +03:00
Alexander Medvednikov 62f54d9d65 remove signal.h 2019-11-05 19:57:53 +03:00
Alexander Medvednikov dc1ca31071 enable temporary fns.h with C defs 2019-11-05 19:34:56 +03:00
vitalyster eb069833a8 compiler: detect Cygwin and show error message 2019-11-05 19:33:24 +03:00
Alexander Medvednikov c5d868c928 start the C header removal process 2019-11-05 19:24:00 +03:00
Alexander Medvednikov 5306c14d78 parser: nothing can be cast to bool 2019-11-05 18:58:42 +03:00
Alexander Medvednikov 07e3699700 parser: do not allow number => bool casts 2019-11-05 18:56:19 +03:00
Alexander Medvednikov 883041fbcc os: replace FILE with voidptr to remove stdlib.h dep 2019-11-05 18:42:10 +03:00
vitalyster 67f68df8a8 compiler: display error when MinGW configuration is outdated 2019-11-05 18:39:44 +03:00
Alexander Medvednikov b2f8944b1f fix V.js 2019-11-05 18:18:10 +03:00
Alexander Medvednikov 425c9ce401 a special `last` variable in for loops (experimental) 2019-11-05 17:17:55 +03:00
aliczin 53981c8747 compiler: supress windows (MSVC) warnings 2019-11-05 14:09:33 +03:00
Alexander Medvednikov f60d44eda9 --enable-globals 2019-11-05 02:43:52 +03:00
Alexander Medvednikov f8d14a216b parser: print backtrace only in debug mode 2019-11-05 02:30:51 +03:00
Alexander Medvednikov 0a6840b6a6 improve a minor info message 2019-11-05 01:32:21 +03:00
Alexander Medvednikov ee4db9f96d parser: $if clang, $if msvc, $if mingw 2019-11-04 20:14:34 +03:00
joe-conigliaro b8b72580a7 compiler: typo detection - fix error & slightly optimize function 2019-11-04 14:35:28 +03:00
joe-conigliaro 5d16f30a3d parser: add error when trying to assign from a function that does not return a value 2019-11-04 14:35:10 +03:00
Henrixounez b5d457b5ce readline: catch siguser signal to reset tty 2019-11-04 05:05:12 +03:00
joe-conigliaro 5f1e634d82 compiler: improve typo detection, support all types and fn definitions 2019-11-04 04:59:28 +03:00
joe-conigliaro a6a233df6b
compiler: remove unneeded blank ident assignment (#2634) 2019-11-04 10:59:18 +11:00
Daren Liang e3d8ab5849 os: do not allow || and \n in system/exec 2019-11-04 02:41:15 +03:00
joe-conigliaro df5faf35e5 compiler: optionals default value 2019-11-04 02:38:49 +03:00
Alexander Medvednikov 4e64a58ac1 scanner: fix string interpolation in raw strings 2019-11-03 23:57:26 +03:00
Alexander Medvednikov 3449a8bc4d os: do not allow ; and && in system/exec 2019-11-03 23:13:56 +03:00
Trivaxy 8de2f00294 os: add windows cp 2019-11-02 22:37:29 +03:00
Alexander Medvednikov 56e1dac03a Revert "vtools: add an info message". This broke repl tests.
This reverts commit 3b3f0eb507.
2019-11-02 14:52:12 +03:00
Alexander Medvednikov 3b3f0eb507 vtools: add an info message 2019-11-02 13:27:09 +03:00
Alexander Medvednikov 3097ba93d7 vtools: do not use -prod, it slows things down too much 2019-11-02 13:26:03 +03:00
joe-conigliaro 4120982da1 compiler: add varg str method & varg / parser optimizations 2019-11-02 13:17:56 +03:00
joe-conigliaro 7b1993b1e4 vlib: filepath module 2019-11-01 19:29:51 +03:00
joe-conigliaro fe9d884d90 parser: fix forwarding vargs & multiple call varg len fix 2019-11-01 19:14:16 +03:00
Alexander Medvednikov de8297c983 examples/users.v: fix imports 2019-11-01 19:02:38 +03:00
Alexander Medvednikov 80ba8f07b8 more ui vh fixes 2019-11-01 18:03:24 +03:00
Delyan Angelov 59efd42483 tools/vget => tools/v , search, install, etc
* compiler: rename vget to tools/vpm, implement draft support for v vpm search, v vpm update, v vpm install, v vpm remove, v vpm help .

* compiler: use "v pm" instead of "v vpm" to reduce the redundancy of typing, as suggested by slapden


* Use 'v install modulename', 'v search keywords', 'v update modulename', 'v remove modulename' instead of the longer 'v pm install modulename' etc.
2019-11-01 15:19:04 +03:00
Alexander Medvednikov a83e233dea building modules can now be done from any directory 2019-11-01 14:16:58 +03:00
Delyan Angelov 15d4f68af6 compiler: pass -no-pie in debug builds so that backtraces work 2019-11-01 13:20:26 +03:00
Delyan Angelov e15abb3de0 compiler: move `v up` implementation to tools/vup.v 2019-11-01 13:14:59 +03:00
Danil-Lapirow 15f971ece7 parser: fix broken methods with vargs 2019-11-01 13:03:14 +03:00
Delyan Angelov bfe039fcba compiler: extract testing to tools/vtest.v 2019-11-01 02:15:03 +03:00
Enrico Lefass a691cc857e time: add new public functions for formatting 2019-11-01 02:13:03 +03:00
Alexander Medvednikov f8f7881f89 thirdparty/ui for macOS (temporary) 2019-11-01 01:14:08 +03:00
Nicolas Sauzede 71450828bd fix missing protos for popen and backtrace_symbols 2019-11-01 00:52:08 +03:00
Alexander Medvednikov e07d3c7827 ui vh hack 2019-11-01 00:47:11 +03:00
Alexander Medvednikov 91df08f56d cc: experimental -fast option for tcc/codegen in the future 2019-11-01 00:37:24 +03:00
Alexander Medvednikov 987f5fd2a1 string: bring back strconv 2019-11-01 00:28:52 +03:00
Alexander Medvednikov ae696e7ccb Revert "Revert "array: fix and document array functions""
This reverts commit b1eb9d6b15.
2019-10-31 21:50:20 +03:00
Alexander Medvednikov 4c96ca4e62 string: remove strconv dep 2019-10-31 21:50:11 +03:00
Alexander Medvednikov 128d37c671 vh fixes for the UI module 2019-10-31 21:26:12 +03:00
Alexander Medvednikov 5be8b47e1c cc.v: disable tcc on android 2019-10-31 20:32:34 +03:00
Alexander Medvednikov b1eb9d6b15 Revert "array: fix and document array functions"
This reverts commit 7fa33fc250.
2019-10-31 20:29:58 +03:00
Henrixounez 55f6e810cf repl: moved as a tool and using readline 2019-10-31 19:01:04 +03:00
ytakahashi 114953f28d match: fix typo and remove arrows 2019-10-31 18:58:19 +03:00
Alvydas Vitkauskas 7fa33fc250 array: fix and document array functions 2019-10-31 15:46:50 +03:00
Don Alfons Nisnoni 0c229aacdd readline: use new enum syntax 2019-10-31 14:06:48 +03:00
joe-conigliaro 5acdf425ab parser: move duplicate code into single function 2019-10-31 13:49:57 +03:00
Alexander Medvednikov b1730b768d remove a println() 2019-10-31 12:15:45 +03:00
Alexander Medvednikov d5cf4d6fd5 compiler: -o dir/file: create a new directory if it doesn't exist 2019-10-30 20:53:34 +03:00
Amal Shaji e8d34002e1 map: fixed deletion of non-existent keys 2019-10-30 20:19:59 +03:00
Alexander Medvednikov 5da3c49497 json: rename jsgen.v to json_gen.v 2019-10-30 19:45:33 +03:00
Alexander Medvednikov 6b4dcb916b ci: bring back Vid build 2019-10-30 19:36:54 +03:00
Alexander Medvednikov 316cf025ae arrays: fix range 2019-10-30 17:30:49 +03:00
Alexander Medvednikov a9ca9f45af fix enum/match combo in sync_windows.v 2019-10-30 17:29:05 +03:00
Alexander Medvednikov 9044f1437c v doc 2019-10-30 17:07:41 +03:00
Alexander Medvednikov 08c1f408d3 fix sync_windows.v 2019-10-30 16:43:40 +03:00
Alexander Medvednikov 2bd2501dc0 fix new enums in tests 2019-10-30 16:38:47 +03:00
Alexander Medvednikov aa39451c8b arrays.range(min, max) 2019-10-30 16:21:57 +03:00
Alexander Medvednikov 96f7620628 instead of `Enum.foo` require `.foo` if it's enough + some UI fixes 2019-10-30 15:48:33 +03:00
Delyan Angelov ba6cc5df2a compiler: print asserted source line on failure 2019-10-30 12:15:33 +03:00
Don Alfons Nisnoni ee6ec3faf3 crypto: fix a typo 2019-10-29 19:59:55 +03:00
sunnylcw 79279e01f5 sqlite: add flags for FreeBSD to pass sqlite test 2019-10-29 17:13:56 +03:00
lorenzo pirro d42c53346d array: eq() for builtins (byte, string, int, i64, f32) 2019-10-29 14:26:00 +03:00
Danil-Lapirow f161ff9db5 parser: fix tmp is already started issue 2019-10-28 23:50:58 +03:00
ytakahashi 6a609cb046 log: make const/struct public 2019-10-28 18:53:02 +03:00
Delyan Angelov 3950b10d2a compiler: make Fn struct public 2019-10-28 16:37:18 +03:00
Alexander Medvednikov 9e9935acbc math: make consts and structs public 2019-10-28 16:33:36 +03:00
Alexander Medvednikov 33b5afa893 V 0.1.22 2019-10-28 13:12:44 +03:00
Delyan Angelov 15deaa7eb6 compiler: improve errors when building thirdparty .o files 2019-10-28 12:43:57 +03:00
Alexander Medvednikov 44b99bc299 ci: don't run sqlite test on windows for now 2019-10-28 12:32:03 +03:00
Alexander Medvednikov a7568ea54b ci: install libsqlite package 2019-10-28 11:45:27 +03:00
Alexander Medvednikov 373873d71f fix sqlite test 2019-10-28 10:40:48 +03:00
Danil-Lapirow a2bafaa254 parser: add error on array comparison 2019-10-28 10:26:42 +03:00
Alexander Medvednikov c5fa99c66c darwin not supported yet 2019-10-28 10:25:56 +03:00
Alexander Medvednikov d54bbc8737 fix sqlite test 2019-10-28 10:21:32 +03:00
Alexander Medvednikov 1ac1626357 sqlite example 2019-10-28 00:10:58 +03:00