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

1423 Commits

Author SHA1 Message Date
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