Commit Graph

1060 Commits (f26626117db2c27c67a7df392446a94a94953426)

Author SHA1 Message Date
yuyi 170282b2af
checker: fix generics fn inferred structure type (fix #10093) (#10096) 2021-05-15 12:58:33 +03:00
Uwe Krüger 7bfd89567b
shared: support `lock` on SelectorExpression (#10105) 2021-05-15 04:34:27 +03:00
yuyi b728d89069
checker: fix generics with generic anon fn parameter (#10101) 2021-05-14 12:01:57 +03:00
crthpl 4273a9697e
parser: add support for flags in asm output constraints (#10103) 2021-05-14 12:01:15 +03:00
yuyi 0139836412
tests: add more generic structs tests (#10095) 2021-05-14 01:57:55 +03:00
zakuro a9435f3c25
cgen: fix `cannot take rvalue` error of interface (#10040) 2021-05-13 17:54:48 +03:00
yuyi 14b7ce0f04
checker: fix generics fn return generics fn type (fix #10085) (#10088) 2021-05-13 12:26:13 +03:00
Delyan Angelov cf3dd7a51f
v.checker: fix `unused variable` warning on `*p = val` 2021-05-12 18:03:01 +03:00
crthpl 8361f714dd
cgen: fix deadlock when returning/breaking in `lock` (#10079) 2021-05-12 11:44:47 +03:00
Delyan Angelov d463817f80
Revert "Revert "cgen: fix generics with generics fn type parameter (#10078)""
This reverts commit d3de91ee86.
2021-05-11 11:14:58 +03:00
Delyan Angelov d3de91ee86
Revert "cgen: fix generics with generics fn type parameter (#10078)"
This reverts commit e310513a5f.
2021-05-11 10:59:55 +03:00
yuyi e310513a5f
cgen: fix generics with generics fn type parameter (#10078) 2021-05-11 09:24:23 +03:00
El Koulali András 3e5a5754f3
cgen: fix constants with multi-statement C initializations (#10058) 2021-05-09 03:25:44 +03:00
spaceface ef7454b5e2
checker: fix calling functions with variadic interface parameters (#10052) 2021-05-08 22:26:13 +03:00
yuyi ed7c8d5e19
checker: fix generics return recursive generic struct (fix #10028) (#10031) 2021-05-08 14:33:09 +03:00
yuyi 3dfbd2351b
checker,cgen: fix generics with generic_fn type parameter (#10022) 2021-05-08 14:06:56 +03:00
Delyan Angelov 8a380f4699
tools: make `v test-cleancode` test everything by default (#10050) 2021-05-08 13:32:29 +03:00
Uwe Krüger d26ac5692e
all: various fixes for [heap]/auto-heap handling (#10033) 2021-05-07 15:58:48 +03:00
Delyan Angelov ea74e2bc64
v.parser: add p.unique_prefix, add run_project_folders_test.v (closes #10023) 2021-05-06 21:14:19 +03:00
yuyi a6764e3cc3
table: fix generics struct with anon fn fields (#10024) 2021-05-06 20:24:08 +03:00
Delyan Angelov ac2eaa05c7
tests: add interface_many_named_test.v regression test (closes #10013) 2021-05-06 19:54:49 +03:00
Louis Schmieder b8e070b2a1
orm: fix multi substructs (#9941) 2021-05-04 12:35:18 +03:00
yuyi 581fe375cc
checker: fix generics with cascaded multi nested generic fn (fix #3815) (#9965) 2021-05-02 19:30:57 +03:00
Delyan Angelov 4b818fa2be
v: implement interface embedding (#9935) 2021-05-02 03:00:47 +03:00
spaceface ef63491a8c
cgen: fix calling function-pointer fields on interfaces (#9948) 2021-05-01 16:45:53 +03:00
yuyi f82f1977d1
tests: enable test_generic_fn_with_variadics() test (#9944) 2021-05-01 12:52:47 +03:00
yuyi d236d6a473
parser, cgen: fix generics fn typeof name (fix #7357) (#9939) 2021-04-30 13:40:36 +03:00
yuyi 844662e0d6
cgen: fix generics fn str() (fix #7403) (#9940) 2021-04-30 13:40:07 +03:00
yuyi ea0ac09297
checker: fix generics with nested external generics fn (#9933) 2021-04-29 17:37:54 +03:00
zakuro 191a167f42
checker: allow omitting the enum name of map key (#9919) 2021-04-29 08:33:41 +03:00
yuyi c82c8059cf
tests: add recursive generics fn test (#9907) 2021-04-28 22:12:06 +03:00
Uwe Krüger f4e92997f2
checker: support value array elements of `[heap]` type inside struct ref (#9899) 2021-04-28 07:47:00 +03:00
yuyi 9f1ac39770
checker: fix generics with anon generics fn argument (fix #9859) (#9897)
* checker: fix generics with anon generics fn argument

* cgen: fix typedef of generics anon fn

* fix check generics argument types
2021-04-27 15:25:42 +03:00
Don Park aebb551e93
cgen: do full struct initialisation for V structs, fixes invalid data from `map[string]Struct{}['unknown']` (#9878) 2021-04-27 08:18:48 +03:00
Uwe Krüger 787a63dab6
cgen: execute `defer` block *after* return expression is evaluated (#9893) 2021-04-27 01:42:16 +03:00
yuyi 3877522ee3
table,checker,cgen: fix generics with recursive generics struct (#9862) 2021-04-26 20:05:10 +03:00
yuyi 21d1f86ead
checker: fix generics that return reference generics struct (fix #6218) (#9869) 2021-04-26 20:01:01 +03:00
yuyi 7ddf569de6
cgen: fix generics multi_array in (#9885) 2021-04-26 19:59:40 +03:00
Enzo de8c4866a4
v.checker: fix postfix expr on generic types (#9887) 2021-04-26 19:57:05 +03:00
yuyi 2b43d3193b
checker: fix generics with assign generics struct (fix #7784) (#9889) 2021-04-26 19:54:22 +03:00
yuyi 212b4fa089
parser: implement infering generic type parameters from receiver types (fix #5862) (#9870) 2021-04-26 10:56:08 +03:00
Uwe Krüger 3c0a368af3
all: automatically move (some) referenced objects to heap (#9873) 2021-04-25 21:40:38 +03:00
Louis Schmieder fc3b628440
v: support `$for attr in Test.attributes` (#9836) 2021-04-25 18:29:26 +03:00
zakuro a0835ac139
checker/cgen: implement in expression for alias of array/map (#9871) 2021-04-25 18:17:54 +03:00
Carlos Esquerdo Bernat 42a65e1009
tests: add submodules tests (#9640) 2021-04-23 17:22:24 +03:00
yuyi dd2002cc57
cgen: fix generics with multi generics struct receiver (#9853) 2021-04-23 15:17:57 +03:00
yuyi 8e455495b2
checker: fix generics that return multi generics struct (#9852) 2021-04-23 11:19:16 +03:00
yuyi 51258923d7
checker: fix generics call with reference arg (fix #9817 #9818) (#9830) 2021-04-21 06:40:11 +03:00
Delyan Angelov bd539b6427
vfmt: fix string interpolation formatting with multiple ',",\' and \" . 2021-04-20 20:26:06 +03:00
Delyan Angelov d4f31412b7
v: deprecate `@VROOT` in favour of `@VMODROOT` (#9795) 2021-04-19 19:01:47 +03:00
spaceface 73352583e7
ci: fix all `-cstrict` warnings with gcc and clang (#9792) 2021-04-19 15:38:48 +03:00
yuyi 75d1b54f7b
cgen: fix empty struct init using macro (#9787) 2021-04-18 16:34:25 +03:00
Henrixounez ee7bcfd05c
checker: prevent double module name prepending on generics types regi… (#9791) 2021-04-18 16:26:40 +03:00
涂紳騰(Shen-Teng Tu) 3c72c6abc2
parser: disable template variables in `<style>` (#9777) 2021-04-17 15:47:36 +03:00
yuyi 731e942055
checker: fix generics with different order of generics fn (#9765) 2021-04-17 08:29:06 +03:00
Uwe Krüger 1b0f099552
parser: fix handling of `-` inside array literals (#9771) 2021-04-17 02:37:17 +03:00
Uwe Krüger 80bd2974b4
cgen: fix iteration over `shared` map (#9763) 2021-04-16 14:49:14 +03:00
yuyi 8cb44ed9db
checker: fix generics with nested generics fn (#9757) 2021-04-16 11:53:20 +03:00
涂紳騰(Shen-Teng Tu) d9fdae1de9
parser: escape js template literal syntax inside <script> tags (#9738) 2021-04-15 12:39:39 +03:00
Louis Schmieder dcf4a6b008
orm: add support for custom table names & custom field names (#9697) 2021-04-15 10:53:43 +03:00
yuyi 1250ce4353
cgen: fix generics with embed generics (fix #8694) (#9724) 2021-04-15 01:44:11 +02:00
crthpl 0099458c0a
all: small asm fixes and number labels (#9730) 2021-04-15 01:30:23 +02:00
Uwe Krüger 10bf974cda
all: gc: provide optimized mode (#9716) 2021-04-14 00:40:26 +02:00
Delyan Angelov 68c3eccec5
v: skip asserts in -prod mode inside non _test.v files 2021-04-13 13:07:57 +03:00
Delyan Angelov 1ef718c1e1
cgen: fix `return if cond { x,y } else { a,b }` generation 2021-04-13 11:52:18 +03:00
Henrixounez 6cfd53bf57
cgen: generate interfaces after all other typedefs (#9680) 2021-04-12 00:43:19 +03:00
Delyan Angelov 79fa15ec3a
cgen: allow printing of C.Structs containing &char/charptr fields 2021-04-12 00:14:58 +03:00
Enzo a851901620
checker: allow casting bool to byte (#9676) 2021-04-11 13:24:24 +03:00
Uwe Krüger 954c436d28
checker/cgen: auto initialize `shared` elements of structs (#9669) 2021-04-11 10:30:23 +03:00
Uwe Krüger 78c6e35bde
checker/cgen: fix `v := rlock m { m[key] or { default_val } }` (#9666) 2021-04-10 16:57:18 +02:00
yuyi 9f093203a4
cgen: fix generics struct_init (#9661) 2021-04-10 17:33:15 +03:00
yuyi cf64001474
checker: fix generics return generic struct (#9663) 2021-04-10 14:00:01 +03:00
yuyi bf6a2f80ef
checker: fix generics with generic struct receiver (#9658) 2021-04-10 04:00:53 +02:00
Uwe Krüger b346dd9464
cgen: fix blank identifier in IfGard (`if _ := <-ch { ... }`, etc) (#9650) 2021-04-09 17:18:36 +02:00
Uwe Krüger 84fa1ae444
boehm-gc: support a `[keep_args_alive]` tag for C functions (#9641) 2021-04-09 13:13:49 +03:00
zakuro e6a67e7172
parser: fix error of `-foo.bar()` (#9646) 2021-04-09 10:54:03 +03:00
Ali Chraghi 9881ff8448
tests: fix option_print_errors_test.v (#9616) 2021-04-08 08:46:08 +03:00
yuyi fef4e1e700
checker: fix generics method return generics struct (#9614) 2021-04-07 15:27:58 +02:00
Lukas Neubert 1d5ed89138
fmt: remove trailing space in comments (#9620) 2021-04-07 15:25:11 +02:00
crthpl 018a88c3ce
parser: asm: add support for memory clobbers (#9618) 2021-04-06 21:25:24 +02:00
Alexander Medvednikov 89838f2e21 tutorials: blog: use db.create_table() 2021-04-06 22:15:14 +03:00
Alexander Medvednikov 1e2a92945c autofree: test `return x[0]` (optional) 2021-04-06 17:28:07 +03:00
Alexander Medvednikov dbaa91810f autofree: fix optional returns 2021-04-06 17:14:11 +03:00
涂紳騰(Shen-Teng Tu) 7d5c1c2ddb
tmpl: inline styles with attributes (#9605) 2021-04-06 15:17:40 +02:00
Delyan Angelov 10619d098c
ci: fix a race in vlib/v/compiler_errors_test.v execution on m1 2021-04-05 22:57:59 +03:00
Delyan Angelov fec89c7efb
ci: fix some of `v test-cleancode` 1 2021-04-05 20:47:32 +03:00
Delyan Angelov d82a0c1637
ci: fix multiret_with_ptrtype_test.v 2021-04-05 08:31:20 +03:00
Delyan Angelov 63a1c32a17
ci: fix ptr_arithmetic_test.v 2021-04-05 08:25:08 +03:00
Delyan Angelov 9cc9ce698f
ci: fix more of byteptr=> &byte, vfmt check_types.v 2021-04-05 07:27:26 +03:00
Daniel Däschle 6a5f49afb1
all: support `?Type(none)` (#9567) 2021-04-02 16:34:48 +02:00
Alexander Medvednikov 7385f8e56b all: a massive merge of ast and table modules 2021-04-02 01:57:09 +03:00
crthpl 8d5e310189
asm: make fixed labels possible as displacement (#9549) 2021-04-01 09:58:33 +03:00
yuyi 63f835c4ce
cgen: fix the alias of fixed_array (fix #9537) (#9544) 2021-03-31 18:51:03 +02:00
yuyi f1797a0150
generics: fix generic_struct_insts_to_concrete (#9536) 2021-03-31 13:11:55 +02:00
Swastik Baranwal b40d06ec1e
cgen: fix operator overloading for array/map aliases (#9529) 2021-03-30 11:39:54 +02:00
Uwe Krüger 97f43d6a97
gc: make generational mode of Boehm-GC available (#9514) 2021-03-30 09:36:22 +02:00
zakuro a3455b8433
cgen: execute defer stmts in LIFO order (#9528) 2021-03-30 09:35:19 +02:00
yuyi cabbf93faa
cgen: fix generic_struct str() (#9504) 2021-03-29 11:15:59 +02:00
yuyi 92f19f5767
generics: fix generics_struct with generic array string (#9494) 2021-03-28 10:46:13 +02:00
Lukas Neubert 4a10514081
tests: run vfmt over some of the tests in vlib/v/tests (#9455) 2021-03-27 19:29:57 +02:00