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

700 Commits

Author SHA1 Message Date
Henrixounez
540602fab6 main: updated help on building a module 2019-09-04 19:46:42 +03:00
Joe Conigliaro
afde6f582d workaround for fn_test on windows 2019-09-04 18:24:41 +03:00
joe-conigliaro
8e25019634 simplify & optimize cgen sort_structs 2019-09-04 11:41:21 +03:00
joe-conigliaro
b4d033ff54 compiler: generalize mod dag & use for sorting structs also 2019-09-03 19:11:21 +03:00
joe-conigliaro
6921c15b7b compiler: fix repl chained_fields test (windows) 2019-09-03 18:42:40 +03:00
Delyan Angelov
c9a39dfdb5 compiler: build tetris executable on windows with both msvc and mingw gcc 2019-09-03 16:09:43 +03:00
Joe Conigliaro
1f67d9edd8 fix bugs breaking tests 2019-09-03 15:21:52 +03:00
Delyan Angelov
d681e1cae3 compiler: fix deprecation message for u8. 2019-09-02 21:04:27 +03:00
F1ssi0N
892c948a44 Make sure to actually generate the empty struct declaration 2019-09-02 15:33:03 +03:00
Alexander Medvednikov
1c6d51f271 remove u8 and i32 from tests and examples 2019-09-02 15:02:25 +03:00
Alexander Medvednikov
0db1eaa55a parser: get_type2() for the upcoming type system refactoring 2019-09-02 14:55:26 +03:00
Alexander Medvednikov
b667940c68 parser: fix a +1 bug when skipping function body 2019-09-02 13:57:00 +03:00
Alexander Medvednikov
0e2c41e0f9 replace *Foo with &Foo everywhere 2019-09-01 22:51:16 +03:00
Alexander Medvednikov
aaab24dcf8 use &Foo instead of *Foo warning 2019-09-01 22:45:06 +03:00
Alexander Medvednikov
59ba551d3b u8 + i32 warnings 2019-09-01 22:41:29 +03:00
Alexander Medvednikov
3bd7bcfac3 remove u8 and i32 aliases 2019-09-01 22:37:22 +03:00
Alexander Medvednikov
d078aa360b parser: use map[string]Type instead of []Type 2019-09-01 22:30:49 +03:00
Alexander Medvednikov
24fdefe152 v test: print all fails 2019-09-01 14:14:46 +03:00
Delyan Angelov
011afeb2ea compiler: fix building v with tcc on linux 2019-09-01 14:12:37 +03:00
Alexander Medvednikov
bfa6505636 compiler: replace &Type with Type 2019-09-01 14:05:03 +03:00
Alexander Medvednikov
961e778ed1 map_test.v: format + ref test 2019-09-01 14:05:03 +03:00
teggot
c04cca1ae4 Allow use FP without calling it 2019-09-01 02:20:35 +03:00
Alexander Medvednikov
0a4a1ca36c compiler: simplify a[index] = val 2019-08-31 13:30:08 +03:00
teggot
b6ecbd8bc3 Check for type, not name 2019-08-31 11:47:55 +03:00
Alexander Medvednikov
72363ada84 array: make .set() private + format 2019-08-31 02:35:05 +03:00
Alexander Medvednikov
29b4114bc0 compiler: simplify [0; n] 2019-08-31 01:34:43 +03:00
Emily Hudson
04a200d3d8 compiler: fix array initialisation generation for msvc 2019-08-31 00:59:21 +03:00
kawa-yoiko
4f0f99e663 parser: fix mutability with chained fields 2019-08-30 20:19:06 +03:00
Alexander Medvednikov
13f3f79eb8
linguist test 2019-08-30 13:01:20 +03:00
kawa-yoiko
6d35f68242 parser: restore outer variable in index exprs 2019-08-30 12:16:39 +03:00
Alexander Medvednikov
d5d1b74f90 time: do not include <unistd.h> on windows 2019-08-30 01:10:29 +03:00
Alexander Medvednikov
3c5087902d fix msvc build 2019-08-30 01:06:10 +03:00
Henrixounez
87ed442d9e compiler: nested structure print error fix 2019-08-30 00:55:59 +03:00
Alexander Medvednikov
0c31172fb0 make print() generic, just like println() 2019-08-30 00:41:25 +03:00
Emily Hudson
7fc899dfd6 bootstrap: single make.bat, default msvc option for forcing gcc 2019-08-30 00:13:53 +03:00
Alexander Medvednikov
b17bf5843c compiler: fix v_win.c generation 2019-08-30 00:07:54 +03:00
Alexander Medvednikov
2fe20cd092 compiler: fix struct order bug 2019-08-29 23:46:12 +03:00
Henrixounez
c6b79dfd24 compiler: check for reserved names during struct declaration 2019-08-29 22:41:21 +03:00
Henrixounez
2507735596 compiler: stricter non-allocation condition for print optimization 2019-08-29 22:19:30 +03:00
Henrixounez
29e0396eca compiler: adds handling of two variables for loop on string 2019-08-29 21:41:16 +03:00
Shiqing
519028e263 Fix incorrect string open/close check in REPL 2019-08-29 21:40:49 +03:00
Henrixounez
52c2763ee3 compiler: prompt error if trying to use f for floats 2019-08-29 21:39:58 +03:00
Henrixounez
4b9cc1246e compiler: allow functions return without main function 2019-08-29 21:39:39 +03:00
Delyan Angelov
4f62e8235f repl: add a test for naked strings. 2019-08-29 12:30:33 +03:00
Delyan Angelov
83954acfd4 compiler: use cerror instead of panic. 2019-08-29 11:50:18 +03:00
Joe Conigliaro
4a506b0566 fix issue #1777 2019-08-29 11:46:05 +03:00
Alexander Medvednikov
91ece782af compiler: move Var back to table.v now that the struct bug is fixed 2019-08-28 21:23:46 +03:00
Alexander Medvednikov
5b1700e52a compiler: fix struct order bug 2019-08-28 21:19:34 +03:00
Alexander Medvednikov
f29079daac better winroot.zip info message 2019-08-28 21:19:34 +03:00
Delyan Angelov
c92654a044 fix building v on alpine with musl libc 2019-08-28 19:26:18 +03:00
unknown-v
fed9f01b2d use -rdynamic only if host os is not windows 2019-08-28 16:23:53 +03:00
Vitaly Takmazov
5124eae47d msvc: check exit code 2019-08-28 13:26:27 +03:00
Delyan Angelov
73c6bae480 print backtraces on panic on mac and linux 2019-08-27 23:29:13 +03:00
joe-conigliaro
02fc7e14cd make trim use cutset like trim_right/trim_left 2019-08-27 22:53:32 +03:00
Delyan Angelov
2d87fea074 compiler: allow passing options to v run 2019-08-27 21:08:54 +03:00
Alexander Medvednikov
e2c7d3b2d9 v symlink 2019-08-27 19:35:48 +03:00
Alexander Medvednikov
f6147b7ac7 Revert "switch deprecation notice"
This reverts commit a43b831965.
2019-08-27 13:10:18 +03:00
Alexander Medvednikov
b48b076dac remove is_play 2019-08-27 13:10:18 +03:00
Sunny Lam
a5b44b3bc5 disable implicit-function-declaration for FreeBSD 2019-08-27 12:53:50 +03:00
Alexander Medvednikov
cca85566d3 parser: fix duplicate enum generation 2019-08-27 02:48:55 +03:00
Alexander Medvednikov
a43b831965 switch deprecation notice 2019-08-27 02:47:49 +03:00
Danil-Lapirow
7edcbeca1a parser: match expression + match fixes 2019-08-27 00:39:11 +03:00
Alexander Medvednikov
d4b6b6c833 freetype: render all Unicode characters 2019-08-27 00:20:54 +03:00
Delyan Angelov
99c9410cc2 compiler: add all C reserved words to CReserved 2019-08-26 20:04:57 +03:00
Robin Martijn
5df31c16f7 json: fix #1751; support unsigned integers 2019-08-26 20:02:19 +03:00
teggot
f34d14d901 Register map type while declaration 2019-08-26 20:01:34 +03:00
Delyan Angelov
aa438c7c3f os: fix exec() and get_raw_line(); fix Windows tests and examples 2019-08-26 13:51:48 +03:00
Henrixounez
fe50aeb130 compiler: prevent multiple same field initialization 2019-08-26 13:39:45 +03:00
Swastik Baranwal
db525524ee string: title() and small fixes 2019-08-26 13:32:53 +03:00
Henrixounez
ad32a3770b compiler: cast correctly strings between byte* and char* when needed 2019-08-25 01:50:44 +03:00
Henrixounez
0a0d6536c2 compiler: access index when casting array into an array[] for pointer 2019-08-25 01:49:51 +03:00
Alexander Medvednikov
57880aed18 compiler: fix linux crash 2019-08-24 15:04:31 +03:00
Alexander Medvednikov
dfc7c9c00f final tcc fixes 2019-08-24 14:39:27 +03:00
Alexander Medvednikov
cd10890258 minor tcc fixes 2019-07-08 03:44:47 +02:00
Alexander Medvednikov
4c07df6a21 small webassembly fix 2019-08-24 03:09:23 +03:00
Alexander Medvednikov
031e7fe113 os: libproc.h on macos only 2019-08-24 02:53:11 +03:00
Alexander Medvednikov
7fd9827318 all: add missing includes 2019-08-24 02:48:47 +03:00
teggot
2be0777c98 Fix issue of missing code in C 2019-08-24 00:27:48 +03:00
teggot
421b6ce4ac Fix typo 2019-08-24 00:26:30 +03:00
Alexander Medvednikov
d98c20466e cc.v: build with "implicit-function-declaration" and fix declarations
required for the webassembly backend

2
2019-08-24 00:20:53 +03:00
Delyan Angelov
1b3a21f197 compiler: use absolute paths for the c files and clean them up 2019-08-23 20:05:02 +03:00
Alexander Medvednikov
0589decc43 parser: change the new_parser() signature 2019-08-23 13:43:31 +03:00
Alexander Medvednikov
624a932420 compiler: cc.v 2019-08-23 12:06:01 +03:00
Delyan Angelov
d362f73af8 compiler: support passing -cc to specify the desired C compiler 2019-08-23 11:42:48 +03:00
Alexander Medvednikov
df593870ae scanner: fix a string overflow 2019-08-23 03:28:25 +03:00
Alexander Medvednikov
8f1bf6033e compiler: remove module_path() 2019-08-23 03:10:37 +03:00
Alexander Medvednikov
e39cb41d6b json: custom json field names with "[json:field_name]" 2019-08-23 02:54:39 +03:00
Alexander Medvednikov
7086547471 compiler: replace STRUCT_DEFAULT_VALUE with {0} 2019-08-23 02:38:18 +03:00
Alexander Medvednikov
6c6cbe0821 changelog for the upcoming V 0.1.19 2019-08-23 00:26:59 +03:00
Alexander Medvednikov
dcfc9eb1a1 remove from the language 2019-08-22 23:19:31 +03:00
Alexander Medvednikov
eb5fcafa77 table: TypeCategory; freetype: remove C code; [typedef] C structs;
Objective-C interfaces
2019-08-22 22:18:55 +03:00
Henrixounez
780ddaf22b compiler: handles printing of structures and arrays of structures 2019-08-22 14:34:33 +03:00
Henrixounez
232532ba3b repl: clear screen and help menu 2019-08-22 14:24:37 +03:00
Henrixounez
be99a65f2b compiler: comptime generated str methods for arrays are public 2019-08-22 14:22:44 +03:00
Delyan Angelov
77b31de117 compiler: produce errors in C "filepath:line:column:" format 2019-08-22 14:15:11 +03:00
Henrixounez
9b3b22d6b3 compiler: allows compound assignment operators on array 2019-08-22 04:57:43 +03:00
Delyan Angelov
1ddc9dc604 orm: allow variables like q.nr_orders in queries too. 2019-08-20 21:35:13 +03:00
Delyan Angelov
cf06faf09b orm: allow both integer and string arguments in db.select and db.select limit 1 2019-08-20 17:32:39 +03:00
Delyan Angelov
49899c649c orm: fix select .. limit 1 . This case now returns an ?Row. 2019-08-20 16:33:14 +03:00
Emily Hudson
151686501d compiler: fix MSVC flag parsing 2019-08-20 16:32:15 +03:00
Delyan Angelov
9ff8793666 compiler: refactoring - extract cheaders.v and live.v from main.v . 2019-08-20 11:26:50 +03:00
Alexander Medvednikov
707ddba143 examples: rename hot_code_reloading to hot_reload 2019-08-20 00:08:45 +03:00
Delyan Angelov
41efe545f2 repl_test: remove dependance on echo, use stdin redirection instead. 2019-08-18 23:02:32 +03:00
Henrixounez
e1d2c83ff6 repl: functions and conditional blocks support 2019-08-18 22:50:38 +03:00
Henrixounez
14c2319dcc compiler: prevent accessing negative index of arrays 2019-08-18 20:11:47 +03:00
Henrixounez
38db845378 compiler: auto dereference mutable variable upon return 2019-08-18 20:09:01 +03:00
Henrixounez
14f13ff55a tests: v implementation of repl tests 2019-08-18 19:26:55 +03:00
Henrixounez
aae063b9ad repl: dont save line if last compilation errored 2019-08-18 19:25:46 +03:00
Delyan Angelov
f013359a44 compiler: improve error handling for 'v install' 2019-08-18 17:57:57 +03:00
Emily Hudson
d373b331fa ompiler: MSVC related fixes and v test v for windows testing
* MSVC related fixes and v test v for windows testing

* If second stage crashes on windows goto error

* use os.exec instead of system so that the error can be printed

* use -debug for osx vid

* Fix some whitespace to trigger a rebuild
2019-08-18 17:25:33 +03:00
Delyan Angelov
bbc5c14d99 repl: fix compiler/tests/repl/error.repl test case. 2019-08-18 17:24:02 +03:00
Alexander Medvednikov
56fbafe03a cc(): fix -x objective-c; ui.focus_app() 2019-08-18 16:59:36 +03:00
Delyan Angelov
4a27b8f43d compiler: improved error, when c compiler is missing/not found. 2019-08-18 13:03:28 +03:00
S-YOU
329e7bd2c8 add static inline attribute 2019-08-18 13:02:07 +03:00
Alexander Medvednikov
8e1c31e860 cc(): print compilation error correctly 2019-08-18 01:30:48 +03:00
Alexander Medvednikov
fe2d2bd2a3 fmt: remove trailing spaces 2019-08-17 22:21:43 +03:00
Alexander Medvednikov
8a1324c141 os: make exec() return ?Result with exit code and output 2019-08-17 21:11:40 +03:00
teggot
79c727f014 Add support for raw json fields in structs 2019-08-17 16:20:40 +03:00
Alexander Medvednikov
37a607dce5 fix v test v 2019-08-17 01:15:38 +03:00
Alexander Medvednikov
c6e7838a44 V 0.1.18 2019-08-17 00:48:07 +03:00
Alexander Medvednikov
94b900bd0a map: allow array values 2019-08-16 23:28:47 +03:00
Alexander Medvednikov
54b3c4d2c5 json: error if the module is not imported 2019-08-16 18:32:35 +03:00
Marco Böttcher
d6d17fe3f2 scanner: string interpolation with $var at the end 2019-08-16 17:06:27 +03:00
Alexander Medvednikov
b188ecf680 Makefile: re-write make test in V 2019-08-16 16:51:46 +03:00
Delyan Angelov
5ea4b463bb compiler: fix issue #1612 . 2019-08-16 14:05:42 +03:00
Alexander Medvednikov
c156cef972 vweb: fix the test 2019-08-16 09:58:27 +03:00
Alexander Medvednikov
dc9cebe26c orm fixes; glfw: remove C code 2019-08-16 09:10:03 +03:00
Alexander Medvednikov
c0cc4701af $if debug { 2019-08-16 08:50:36 +03:00
Marco Böttcher
87216cff63 compiler: '\$' escape 2019-08-15 12:41:23 +03:00
Joe Conigliaro
5eee980499 auto init struct map fields 2019-08-14 23:54:45 +03:00
Henrixounez
772c0c3f93 compiler: prevent string to byte cast 2019-08-14 09:48:05 +03:00
Henrixounez
437ba14521 compiler: prompts an error when accessing a map with wrong type 2019-08-14 09:46:46 +03:00
Alexander Medvednikov
ef2ab31e88 sql: only accept strings and ints for now 2019-08-12 21:07:03 +03:00
Alexander Medvednikov
cba4d59712 vweb: make app_test.v compile 2019-08-12 17:38:30 +03:00
Alexander Medvednikov
6002511052 pg: remove printf 2019-08-12 16:41:41 +03:00
Henrixounez
2ba1edaa80 repl: default printing fix and test 2019-08-12 16:19:56 +03:00
Emily Hudson
decdd8be9f Prevent people on platforms that arent 'windows' from being able to build with msvc 2019-08-12 15:11:13 +03:00
Alexander Medvednikov
32754e3b4c small sql fix 2019-08-12 14:41:40 +03:00
Henrixounez
872aa536d8 compiler: unsigned number properly printed and converted to string
fix: array accessing now works with unsigned numbers
2019-08-12 09:15:53 +03:00
Alexander Medvednikov
3c6a11eb0b fix mut_test.v 2019-08-11 22:45:21 +03:00
Alexander Medvednikov
8c3475b902 generate .str() for all arrays 2019-08-11 22:39:45 +03:00
Delyan Angelov
7957ec3186 v install: fix installing a single module 2019-08-11 17:35:55 +02:00
Alexander Medvednikov
72a7eb6e35 parser: do not allow 1 % 0 2019-08-11 14:47:34 +03:00
Stefanos Baziotis
02ea168f71 Fix deprecated error 2019-08-11 13:24:31 +02:00
Alexander Medvednikov
8f8e0dfad7 V ORM 2019-08-10 13:35:29 +02:00
iRedMail
c67783bcd1 v install: install multiple modules in one command: 'v install m1 m2 m3 …' 2019-08-10 12:21:31 +02:00
Julian Schurhammer
1864e92ff4 parser: disallow statements after a return, branch check $if, $else, switch, and loops correctly 2019-08-10 10:26:42 +02:00
Alexander Medvednikov
25d97ebbe4 v install: always build vget 2019-08-10 10:14:49 +02:00
Rendims
45766dcb2e main: generate main body on new line
Fix issue #1551
2019-08-10 07:14:44 +02:00
Henrixounez
7879bde8bb repl: enabled back and added automated tests
fixed typos and macos errors
2019-08-10 07:01:40 +02:00
Henrixounez
a81875b24b REPL: checks if EOF
Check if newline to not create empty println
2019-08-10 00:10:42 +02:00
Henrixounez
146a9507c6 REPL: fix repl using older binary on piping
repl: delete binary files when exiting
2019-08-10 00:08:21 +02:00
Henrixounez
81cdda842c compiler: fix panic on open bracket without newline 2019-08-09 22:39:29 +02:00
Delyan Angelov
5c29a7ef7d v run: windows and repl fixes 2019-08-09 22:37:31 +02:00
Delyan Angelov
796b9dab74 compiler: passing -show_c_cmd should always print the C compiler command. 2019-08-09 13:02:25 +02:00
Alexander Medvednikov
ae0e3efb8e scanner: experimental ≠ etc support 2019-08-09 09:32:51 +02:00
Julian Schurhammer
6a9bda806f parser: panic and exit count as returns 2019-08-09 08:17:31 +02:00
Alexander Medvednikov
fbc480fbed ft: rename to freetype 2019-08-08 16:43:11 +02:00
Alexander Medvednikov
5ea1c538b6 fn: fix & argument bug 2019-08-08 16:09:04 +02:00
joe-conigliaro
66ffa764dd compiler: properly add submodule to types 2019-08-08 14:35:53 +02:00
joe-conigliaro
b8d37e0d53 properly add submodule to type 2019-08-08 10:33:47 +02:00
Alexander Medvednikov
27fad0f19b ft: clean up 2019-08-08 10:08:44 +02:00
Julian Schurhammer
61983a6799 parser: check that functions return in all if/else branches 2019-08-08 09:49:56 +02:00
Julian Schurhammer
28147c0930 os.exec: return ?string instead of string 2019-08-08 07:30:05 +02:00
Alexander Medvednikov
1470b3da11 parser: better immutability error messages 2019-08-08 07:00:36 +02:00
Emily Hudson
802ff1d012 compiler: scoped defer + build tests with msvc 2019-08-07 17:51:21 +02:00
Joe Conigliaro
1270e8a9f2 fix error in msvc_win 2019-08-07 16:31:19 +02:00
Alexander Medvednikov
4b69d43f9f fix examples 2019-08-07 14:16:10 +02:00
Alexander Medvednikov
78c20e02ee tmp test fix 2019-08-07 13:50:28 +02:00
Alexander Medvednikov
4b86ba6f6a main.v: fix msvc 2019-08-07 13:41:40 +02:00
Alexander Medvednikov
cebb6cd537 ft: minor fixes 2019-08-07 13:39:54 +02:00
Alexander Medvednikov
ff6e0df0a5 array: minor fixes 2019-08-07 13:39:54 +02:00
joe-conigliaro
511a3d3901 vlib.crypto+other: fix mut args 2019-08-07 13:37:07 +02:00
Alexander Medvednikov
818c4a14e5 compiler: fix a bug with mutable array args 2019-08-07 12:36:45 +02:00
joe-conigliaro
0bcc53c366 vlib: fix mutable args 2019-08-07 09:53:33 +02:00
Alexander Medvednikov
34e0b164eb make function arguments immutable by default 2019-08-07 08:59:00 +02:00
Delyan Angelov
d072178cef v run: recompile and execute changed file.v just once. 2019-08-07 08:04:40 +02:00
Alexander Medvednikov
52f473d1c7 all: fix immutable fn args 2019-08-07 05:28:00 +02:00
Alexander Medvednikov
76def48f01 compiler: make Windows headers work with clang-format 2019-08-07 05:28:00 +02:00
Alexander Medvednikov
8b75f2125a http: init_module() to init openssl once 2019-08-06 14:03:01 +02:00
Alexander Medvednikov
bea8f6d7e5 http: remove libcurl dependency; replace it with a simple OpenSSL backend 2019-08-06 13:32:09 +02:00
Henrixounez
347e59d604 compiler: fix scanner overflowing string on numbers without newline 2019-08-06 11:50:09 +02:00
Alexander Medvednikov
7a7b5040e2 http: fix response headers and status code; clean up ft and gg 2019-08-06 03:06:27 +02:00
Marco Böttcher
aff8d05040 compiler: add a test case to ensure more stable local modules 2019-08-05 10:05:00 +02:00
joe-conigliaro
01c2d25ae5 compiler: rename pkg to mod and auto save file import table 2019-08-05 09:49:52 +02:00
S-YOU
5939238655 add @VMOD to resolve modules path 2019-08-05 09:42:50 +02:00
Joe Conigliaro
2fab73983b add builtin import pass + use builder in map 2019-08-05 06:01:53 +02:00
Alexander Medvednikov
5ed338dc2e bring back map.str() 2019-08-05 04:34:12 +02:00
Alexander Medvednikov
8d3617b3de fix fn_test.v and urllib.v 2019-08-05 03:31:22 +02:00
Alexander Medvednikov
350e13679c force () in complex bool expressions: (a && b) || c instead of a && b || c 2019-08-05 03:22:28 +02:00
Delyan Angelov
0379b9cc69 compiler: conditional guard for platform specific #includes directives in _xxx.v files. 2019-08-05 02:17:49 +02:00
Emily Hudson
59a4c923c4 Fix for jsdecode struct initialisation 2019-08-04 13:42:48 +02:00
ma6174
12dfd5f016 fix Raspberry Pi build 2019-08-04 11:24:23 +02:00
Delyan Angelov
9a3570a5b3 compiler: proper line numbers in debuggers (fixes regression after 207bab5). 2019-08-04 11:05:54 +02:00
Alexander Medvednikov
ee437de8d3 type name check fixes 2019-08-04 09:38:46 +02:00
Alexander Medvednikov
8bce5cb810 force snake_case in struct fields 2019-08-04 09:18:16 +02:00
Alexander Medvednikov
576192949d fixed size array with const size: numbers := [N]int 2019-08-04 04:11:16 +02:00
Alexander Medvednikov
01531369f7 bring back local modules 2019-08-04 00:11:56 +02:00
Alexander Medvednikov
e446f988f7 clean up map initialization 2019-08-03 10:26:36 +02:00
Alexander Medvednikov
a5f5b52204 map := { 'foo': 'bar' } syntax 2019-08-03 10:20:04 +02:00