Commit Graph

1550 Commits (68401d9dc87d3817685273cf88c167879bef8486)

Author SHA1 Message Date
fleur 68401d9dc8
gen: add callconv attribute for fn and type (#14027) 2022-04-14 11:29:52 +03:00
yuyi e3e5bef139
ast, parser: fix formatting of `if` with inline comments (fix #7796) (#14018) 2022-04-13 00:15:27 +03:00
yuyi 3e3b2e25db
parser, fmt: fix the formatting of fn headers with inline comments (#14010) 2022-04-11 22:31:06 +03:00
yuyi 5551cb248c
ast, parser, fmt: fix formatting of consts with embedded comments (#14008) 2022-04-11 17:27:41 +03:00
yuyi fa66183f43
checker: check error for map of generic struct init (#13999) 2022-04-11 10:07:23 +03:00
yuyi 93a5d03182
parser: improve embedded struct parsing/better error for `Architecture []string` (#13995) 2022-04-10 10:24:36 +03:00
Joe Conigliaro 8dc2601080
all: comptime_call - simplify tmpl scoping, solves many issues. 2022-04-08 17:33:24 +10:00
Vincenzo Palazzo 359f16fdfd
parser: fixed parsing prototype function with recursive type (#13922) 2022-04-05 18:39:49 +03:00
Vincenzo Palazzo 51c1d666c2
checker: fix operator overloads (for large structs with > 8 fields, the method receiver is normally auto converted to a reference) (#13889) 2022-04-03 19:30:29 +03:00
yuyi bc98c11d9d
parser, checker, cgen: minor cleanup of go_expr() (#13875) 2022-03-31 19:58:04 +03:00
yuyi 42a67831bf
parser: fix printing slice of multiline raw string (#13856) 2022-03-29 18:06:11 +03:00
yuyi dd1a8cbadc
parser: check error for struct field type using 'mut' (#13847) 2022-03-28 18:13:38 +03:00
Delyan Angelov bea0d500d0
parser: ignore upper letter case restriction for `fn C.xyz` declarations 2022-03-26 21:20:28 +02:00
Nick Treleaven fcb57312b9
parser: error if parameter name starts with a capital (#13827) 2022-03-26 19:56:34 +02:00
Delyan Angelov eb7c9cec3d
parser: short circuit if conditions in Parser.name_expr 2022-03-19 20:31:03 +02:00
yuyi bb2ddb98a3
parser: check if guard condition (#13765) 2022-03-18 17:49:20 +03:00
Delyan Angelov 0ca87ad09f
parser: fix small performance regression after 1d83ab6b (by avoiding needless interpolation in hot paths) 2022-03-18 12:52:03 +02:00
yuyi 49155ec312
parser: notice unnecessary parenthesis of reference (fix #11179) (#13739) 2022-03-15 16:11:53 +02:00
yuyi 92cafd8851
checker: check invalid 'mut' keyword in infix expr (#13742) 2022-03-15 14:50:17 +03:00
yuyi 1d83ab6be1
parser: check using invalid keyword with none ident (#13743) 2022-03-15 12:58:03 +02:00
yuyi dbb18e3656
parser: fix error for match branch with array expression (#13733) 2022-03-14 16:19:05 +02:00
yuyi f7feb634d2
checker: fix error for if mut with immutable variable (#13728) 2022-03-13 16:33:50 +02:00
yuyi 27f9bc9ba0
checker: check error for match mut with immutable variable (fix #9704 #8976) (#13725) 2022-03-13 09:53:29 +02:00
yuyi 1993bf2a12
parser: cleanup map syntax (#13713) 2022-03-11 12:15:52 +03:00
yuyi c1c3ae2a18
parser: minor cleanup in fn_args() (#13711) 2022-03-11 10:42:03 +02:00
yuyi 3f351036a2
parser: fix error for fn with type only argument (fix #13704) (#13709) 2022-03-10 22:52:06 +02:00
yuyi dd06698ee3
ast: rename TypeSymbol.is_public to TypeSymbol.is_pub (#13710) 2022-03-10 22:18:57 +02:00
Delyan Angelov beb1b8ce1b
tools: add `v scan file.v` 2022-03-07 18:25:38 +02:00
Alexander Medvednikov 36ec47cd20 all: replace "NB:" with "Note:" (docs/comments) 2022-03-06 20:01:22 +03:00
yuyi 8136157f87
checker: fix error for 'or expr with nested match expr' (#13658) 2022-03-05 13:06:08 +02:00
yuyi f70e5bd69b
parser: check assign expr with undefined variable (#13653) 2022-03-04 10:33:14 +02:00
ChAoS_UnItY 63b41e67fa
v.parser: change body_start_pos to function declaration's lcbr, resolve #13642 (#13646) 2022-03-03 19:51:27 +02:00
yuyi 288b13b51d
all: cleanup smartcasts in the compiler (#13639) 2022-03-03 10:48:31 +02:00
yuyi 22017ff8f4
parser: fix error for 'for smartcast' - part 1 (#13629) 2022-03-02 12:18:03 +02:00
Joe Conigliaro 3b6e122d9d
all: comptime_call - update tmpl scope vars with caller scope vars after their properties got updated in checker 2022-03-01 02:13:29 +11:00
yuyi 013589e9fe
parser: minor cleanup in global_decl() (#13617) 2022-02-28 13:30:17 +02:00
yuyi bc16c61f6f
parser: check using 'mut' on fn_decl return type (#13610) 2022-02-27 14:23:43 +02:00
yuyi 0fb1eaef04
parser: check the redefinition of built-in IError (#13606) 2022-02-26 09:52:40 +02:00
Larpon d80f5165dd
fmt: keep trailing comments after fn header decl (#13596) 2022-02-25 16:36:48 +03:00
yuyi 83ea97b1a3
parser: fix optional expr with array value (#13599) 2022-02-25 15:54:12 +03:00
Larpon 73f931b52e
fmt: improve single line const comment placement (#13595) 2022-02-25 14:46:12 +02:00
yuyi b5e7cef1b1
ast: define 'const invalid_type_idx = -1' (#13573) 2022-02-23 11:54:43 +03:00
playX b842e89acc
all: initial implementation of compile-time types (#13549) 2022-02-21 17:42:54 +02:00
yuyi 04654ed518
parser: check error for defer propagate (fix #13534) (#13536) 2022-02-20 12:29:08 +02:00
yuyi 4f9039991f
parser: cleanup in check_undefined_variables() (#13496) 2022-02-17 10:16:52 +02:00
yuyi 842fd7a27e
parser: check assign expr with undefined variables of struct_init (#13495) 2022-02-17 10:21:03 +03:00
Alexander Medvednikov 5a14748e7c cgen: c2v enum fix 2022-02-16 12:05:32 +03:00
Delyan Angelov d25652fbcf
parser, ast: support -d for trace_rewrite_already_registered_symbol, trace_register_sym, trace_parse_stmt, trace_parse_comptime, trace_parse_text, trace_parse_file, trace_parse_vet_file 2022-02-15 13:20:40 +02:00
yuyi f9fc136c24
all: rename InterfaceDecl.ifaces to InterfaceDecl.embeds (#13475) 2022-02-15 11:17:39 +02:00
Delyan Angelov 799c95dc4e
tests: filter test_ fns with params from the list of automatically run test functions (fix #13443) 2022-02-12 17:30:20 +02:00