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

1270 Commits

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