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

358 Commits

Author SHA1 Message Date
joe-conigliaro
cbd4478b5e compiler: fix msvc empty struct & enable travis msvc 2019-09-16 13:01:07 +03:00
Alexander Medvednikov
3db4d66824 operator | not defined on bool 2019-09-15 19:35:48 +03:00
Alexander Medvednikov
48c05b5a45 cgen: use *char in all functions with *char args to avoid warnings 2019-09-15 18:56:33 +03:00
Alexander Medvednikov
5cc81b91cb JavaSript backend (early stage) 2019-09-15 03:49:57 +03:00
Alexander Medvednikov
3d2c266980 compiler: -autofree flag 2019-09-14 18:54:55 +03:00
Alexander Medvednikov
682eedce59 compiler: remove the temporary windows check 2019-09-14 18:34:59 +03:00
Henrixounez
c604a5c02f compiler: no free on stack allocated array 2019-09-14 13:40:59 +03:00
joe-conigliaro
b96cbe2177 compiler: temporary memory fix on windows 2019-09-14 13:09:25 +03:00
Alexander Medvednikov
21f3b9eccc compiler: do not free memory on Windows for now 2019-09-13 16:27:09 +03:00
Alexander Medvednikov
9dd86f6fb8 compiler: more memory logic + replace "cur_fn &Fn" with "cur_fn Fn" 2019-09-13 15:47:31 +03:00
joe-conigliaro
41734affb3 compiler: detect typos in function/variable/module names 2019-09-13 14:10:24 +03:00
BigBlack
8fe46d5db5 compiler: call string method in C funtion parameter 2019-09-13 02:41:51 +03:00
Alexander Medvednikov
9853323157 array: make ".contains()" private, use "in" everywhere 2019-09-11 15:12:13 +03:00
BigBlack
e6354567e5 compiler: fix sizeof and cc 2019-09-11 13:34:19 +03:00
Delyan Angelov
0ade45db08 compiler: print the offending source line on error 2019-09-10 13:08:43 +03:00
Alexander Medvednikov
7fc678c961 fix urllib_test.v 2019-09-09 14:21:18 +03:00
Alexander Medvednikov
00687de43b memory: clean up all arrays in the V compiler 2019-09-09 13:55:47 +03:00
Alexander Medvednikov
a6ec6e23bc bf: minor clean up 2019-09-09 02:31:43 +03:00
Alexander Medvednikov
71224ad17c compiler: fix building_v 2019-09-08 17:19:42 +03:00
Alexander Medvednikov
a6f927a6e9 bring back automatic array_free() 2019-09-08 14:50:18 +03:00
Delyan Angelov
d5665997e0 compiler: @FILE, @LINE, @FN, @COLUMN 2019-09-07 13:44:41 +03:00
Alexander Medvednikov
76a89c832e parser: small optimizations 2019-08-26 01:19:39 +03:00
BigBlack
7cf058feac parser: function pointers 2019-09-05 12:09:41 +03:00
Henrixounez
726fcb5eec compiler: check if-expressions returning only one type 2019-09-05 12:08:40 +03:00
Danil-Lapirow
c6f7479a72 parser: add return dropping to false to check whether statements return 2019-09-04 19:48:01 +03:00
Danil-Lapirow
5c43bfbf13 parser: add additional paren for multi case branch 2019-09-04 19:47:37 +03:00
joe-conigliaro
6921c15b7b compiler: fix repl chained_fields test (windows) 2019-09-03 18:42:40 +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
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
d078aa360b parser: use map[string]Type instead of []Type 2019-09-01 22:30:49 +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
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
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
kawa-yoiko
6d35f68242 parser: restore outer variable in index exprs 2019-08-30 12:16:39 +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
Delyan Angelov
83954acfd4 compiler: use cerror instead of panic. 2019-08-29 11:50:18 +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
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
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
teggot
f34d14d901 Register map type while declaration 2019-08-26 20:01:34 +03:00
Henrixounez
fe50aeb130 compiler: prevent multiple same field initialization 2019-08-26 13:39:45 +03:00
Henrixounez
ad32a3770b compiler: cast correctly strings between byte* and char* when needed 2019-08-25 01:50:44 +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
teggot
2be0777c98 Fix issue of missing code in C 2019-08-24 00:27:48 +03:00
Alexander Medvednikov
0589decc43 parser: change the new_parser() signature 2019-08-23 13:43:31 +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
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
Alexander Medvednikov
707ddba143 examples: rename hot_code_reloading to hot_reload 2019-08-20 00:08:45 +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
Alexander Medvednikov
56fbafe03a cc(): fix -x objective-c; ui.focus_app() 2019-08-18 16:59:36 +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
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
Alexander Medvednikov
dc9cebe26c orm fixes; glfw: remove C code 2019-08-16 09:10:03 +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
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
8c3475b902 generate .str() for all arrays 2019-08-11 22:39:45 +03: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
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
Henrixounez
81cdda842c compiler: fix panic on open bracket without newline 2019-08-09 22:39:29 +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
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
Julian Schurhammer
61983a6799 parser: check that functions return in all if/else branches 2019-08-08 09:49:56 +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
Alexander Medvednikov
cebb6cd537 ft: minor fixes 2019-08-07 13:39:54 +02:00
Alexander Medvednikov
34e0b164eb make function arguments immutable by default 2019-08-07 08:59:00 +02:00
Alexander Medvednikov
bea8f6d7e5 http: remove libcurl dependency; replace it with a simple OpenSSL backend 2019-08-06 13:32: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
joe-conigliaro
01c2d25ae5 compiler: rename pkg to mod and auto save file import table 2019-08-05 09:49:52 +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
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
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
Alexander Medvednikov
8ecd62e56f comptime: fix app.$action() or {} 2019-08-02 05:20:18 +02:00
Alexander Medvednikov
a7e464fee9 user modules + v install from vpm 2019-08-01 17:28:25 +02:00
Alexander Medvednikov
8058bf3750 http_nix.v: remove remaining C code 2019-07-31 23:01:06 +02:00
Henrixounez
715bd21118 compiler: check is ptr when free in closing scope (#1399) 2019-07-31 19:21:49 +02:00
vitalyster
37a0e6ebef Travis: run tests for Windows (#1403) 2019-07-31 19:01:52 +02:00
Alexander Medvednikov
ddb4f45b02 another map bug fix + fix some warnings 2019-07-31 10:47:58 +02:00
Vitaly Takmazov
f3d6bc9146 compiler: no need to optimize println on Windows
this fixes string interpolation
2019-07-31 10:01:02 +02:00
Alexander Medvednikov
79be98d2fb Revert "Support for the printf optimisation for windows and wide strings"
This reverts commit acd28fa495.
2019-07-30 18:28:00 +02:00
d2verb
9bcb5aaa55 defer: fix #1281 2019-07-30 18:05:06 +02:00
F1ssi0N
acd28fa495 Support for the printf optimisation for windows and wide strings 2019-07-30 18:04:19 +02:00
joe-conigliaro
74b3ef3a3f minor module fixes 2019-07-30 03:49:47 +02:00
Alexander Medvednikov
ba6bcdb469 fix vweb template compilation 2019-07-29 19:14:07 +02:00
Alexander Medvednikov
ce1288e946 clean up 2019-07-29 18:24:48 +02:00
Alexander Medvednikov
207bab5f79 generics, vweb, comptime codegen, etc 2019-07-29 18:24:48 +02:00
Delyan Angelov
f1373874ef compiler: fix issue #1350 - an error is produced, when a void fn returns a value 2019-07-29 16:35:56 +02:00
Emily Hudson
90bb48db5d interactive debugging 2019-07-26 16:45:16 +02:00
Alexander Medvednikov
9ccd3bde01 do not allow declaring a mutable variable if it's never modified 2019-07-25 13:44:34 +02:00
Alexander Medvednikov
3a8cdadcf5 free strings 2019-07-25 01:22:45 +02:00
Alexander Medvednikov
d2b33397cc optionals: better errors 2019-07-24 22:41:46 +02:00
Emily Hudson
049d78a78d Change CGen so that v.c is compileable with msvc 2019-07-24 17:46:41 +02:00
Alexander Medvednikov
09c447e2b8 remove type keyword hack 2019-07-24 15:44:25 +02:00
Alexander Medvednikov
7ea688aa43 fix mutable array args 2019-07-24 15:10:48 +02:00
Alexander Medvednikov
7f29928aec examples: fix news_fetcher on Windows 2019-07-24 12:34:25 +02:00
Alexander Medvednikov
c28a490c17 @ for escaping keywords 2019-07-24 02:28:29 +02:00
d2verb
88758082d2 scanner.v: refactoring 2019-07-24 00:06:48 +02:00
Emily Hudson
e25ea7f9dd add MSVC C backend support; fix live code reloading on Windows; other Windows fixes 2019-07-23 23:23:13 +02:00
joe-conigliaro
b06cfd702d module aliasing and sub modules for import () syntax 2019-07-23 23:12:55 +02:00
Alexander Medvednikov
527b9e13fa key in map syntax 2019-07-23 23:00:09 +02:00
Alexander Medvednikov
18d95114e0 testing: do not print anything if a test passed successfully 2019-07-21 17:59:25 +02:00
joe-conigliaro
135f200ea2 modules: cyclic import detection 2019-07-21 17:53:35 +02:00
Alexander Medvednikov
ac238a5362 allow multiple defers 2019-07-21 16:34:21 +02:00
Alexander Medvednikov
5d188130e5 fix memory free 2019-07-21 16:30:10 +02:00
Alexander Medvednikov
40c31f701f free arrays when they are out of scope
main.v: update help
2019-07-21 14:42:31 +02:00
Alexander Medvednikov
3245377683 fix defer before returns 2019-07-21 00:52:21 +02:00