Commit Graph

6516 Commits (8e9e9b2f892ecf8a0c4e7da3a798908363e5503e)

Author SHA1 Message Date
zakuro 7928689ee2
parser: set is_public when registering enum type symbols (#8875) 2021-02-21 12:13:52 +02:00
yuyi 9a744b6750
cgen: fix in map_literal (fix #8868) (#8871) 2021-02-21 11:54:30 +02:00
yuyi e106dc3ad5
cgen: fix match_return with complex expr stmts (#8876) 2021-02-21 11:47:46 +02:00
Stanislav Ershov 44177c4e7c
builder: use stable MSVC version instead preview (#8867) 2021-02-21 00:00:44 +02:00
Nicolas Sauzede f67a4c3ee0
checker, cgen: allow | between bitfield enum values, autogenerate a more specific .str method for them too (#8856) 2021-02-20 21:51:54 +02:00
penguindark cc565b22a9
regex: remove [deprecated] functions/methods, code clean, add test for regex_base (#8862) 2021-02-20 21:39:08 +02:00
yuyi 8f486cb8cf
ast: minor cleanup of ast.v (#8859) 2021-02-20 20:50:43 +02:00
Stanislav Ershov c190b6a131
vlib: remove older deprecated functions (#8864) 2021-02-20 20:42:55 +02:00
Stanislav Ershov 30ed201600
cgen: cleanup header for MSVC (#8863) 2021-02-20 20:39:46 +02:00
Delyan Angelov 746dfe6317
ci: make vweb and websocket tests more robust to transient errors 2021-02-20 20:24:21 +02:00
Nick Treleaven 28088cc494
checker: check fixed array index when it's a literal (#8831) 2021-02-20 20:18:47 +02:00
Delyan Angelov 5a333b0fdc
gen,parser: allow enums as map keys 2021-02-20 19:39:25 +02:00
Nick Treleaven 1e71c0eaca
checker: warn for deprecated methods too (#8861) 2021-02-20 19:25:54 +02:00
spaceface adf2aa8760
pref: add a `-debug-tcc` alias option (#8834) 2021-02-20 18:53:22 +02:00
spaceface cc3fd5333b
builder: print tcc output, when the system C compiler also failed (#8835) 2021-02-20 18:52:54 +02:00
yuyi c704a49283
parser: fix error of $tmpl in anon_fn (fix #8847) (#8849) 2021-02-20 18:51:08 +02:00
Delyan Angelov 8327c9afc1
checker: support a custom `[deprecated: 'message']` 2021-02-20 17:35:44 +02:00
Stanislav Ershov 44cb0426f4
cli: fix checking callbacks (#8858) 2021-02-20 17:30:39 +02:00
Lukas Neubert a86bf3254a
fmt: keep empty line between if statement and comment (#8846) 2021-02-20 16:05:05 +02:00
Lukas Neubert 329e3938d9
fmt: respect user choice of newlines between functions without body (#8838) 2021-02-20 16:00:30 +02:00
yuyi 783cee98d9
table/parser: minor optimization of anon_fn names (#8851) 2021-02-20 15:54:47 +02:00
yuyi e8abda189a
cgen: minor optimization in match_expr() (#8848) 2021-02-20 15:51:40 +02:00
Nick Treleaven 2be852e461
arrays: use for/in instead of unsafe `[direct_array_access]` (#8857) 2021-02-20 15:27:36 +02:00
zakuro f381836f9e
fmt: sort names in selective imports (#8827) 2021-02-20 12:22:09 +01:00
yuyi 5e1159e4c3
checker: change non-const size of fixed array error message (#8850) 2021-02-20 12:14:44 +01:00
Lukas Neubert 859d382c6e
fmt: remove a few obsolete comments (#8837) 2021-02-20 09:54:55 +01:00
Nick Treleaven bcb35e15f9
checker: only allow passing integer *literal* to non-integer pointer method parameter (#8825) 2021-02-19 14:14:40 +02:00
Miccah a153ec5951
cli: ensure that required flags are set (#8826) 2021-02-19 12:43:18 +02:00
kristof de spiegeleer 3f3bec45fa
examples: add a template example, update the regex examples (#8829) 2021-02-19 12:39:15 +02:00
zakuro 6e262b5d84
checker: improve error position of infix expr (#8828) 2021-02-19 12:38:41 +02:00
Swastik Baranwal ad162cd6fc
checker: stricter `unknown type` checks, show better suggestions (#8816) 2021-02-19 11:23:13 +02:00
Stanislav Ershov 6a752512b2
os: fix os.real_path on Windows (#8822) 2021-02-19 11:20:06 +02:00
Subhomoy Haldar 745b40c0a3
rand: refactor string sampling functions to remove redundancy (#8830) 2021-02-19 11:16:02 +02:00
yuyi 4878077c62
gen/c: fix gen_str_for_struct with custom ref str (fix #7179) (#8820) 2021-02-18 18:19:42 +02:00
Alexander Medvednikov 0dbc9417e7 builder: vfmt msvc.v 2021-02-18 17:00:07 +03:00
Stanislav Ershov 51dd22bcc0
builder: support -m32/-m64 flags for msvc (#8819) 2021-02-18 14:58:47 +01:00
zakuro 1891ebf22d
scanner: print multibyte char for invalid char error (#8804) 2021-02-18 15:43:39 +02:00
Delyan Angelov 0142d58aa6
v.pref: prevent `Too many targets.` from triggering when the command is an external one 2021-02-18 12:13:28 +02:00
zakuro 0d69d97143
fmt: mark imports as used, when types from them are used in struct declarations (#8810) 2021-02-18 11:32:45 +02:00
zakuro a34a1ab864
checker/table: minor cleanup by removing unnecessary `_` variable (#8801) 2021-02-18 11:30:43 +02:00
zakuro b3a26ca0ce
v.pref: make passing multiple target .v files an error (#8814) 2021-02-18 09:42:00 +02:00
yuyi a119affeba
cgen: check unknown sizeof type (#8815) 2021-02-18 09:38:57 +02:00
Delyan Angelov bf6e9ff95a
Revert "parser: make duplicated functions an error (#8792)"
This reverts commit 21bf8fe14e.
2021-02-18 09:02:56 +02:00
zakuro 21bf8fe14e
parser: make duplicated functions an error (#8792) 2021-02-17 20:50:10 +01:00
Nick Treleaven 33d8074846
crypto.rand: use byteptr.vbytes instead of c_array_to_bytes_tmp (#8786) 2021-02-17 21:47:19 +02:00
Nick Treleaven 4ccf991f61
checker: warn when casting a fixed array (use `&arr[0]` instead) (#8787) 2021-02-17 20:45:11 +01:00
yuyi 177c8bfc78
builtin/array: merge array_eq_test.v into array_test.v (#8796) 2021-02-17 20:44:44 +01:00
yuyi 4fa315edc2
checker: fix for _, mut j in array (#8785) 2021-02-17 20:44:28 +01:00
zakuro 600f6ad2a0
fmt: do not prepend mod to selectively imported types from nested module (#8805) 2021-02-17 20:42:26 +01:00
Delyan Angelov ab6517c5fc
gg: support passing down the state of pressed mouse buttons in mouse moves events 2021-02-17 20:14:37 +02:00
Delyan Angelov aa3d0ea345
vfmt: cleanup spurious printlns, remove obsolete code 2021-02-17 14:59:42 +02:00
Alexander Medvednikov d4a05bebde gg: use gg types for Events instead of sapp 2021-02-17 06:44:01 +01:00
zakuro 3341c17202
fmt: keep one empty line in struct decl (#8782) 2021-02-17 05:45:09 +01:00
Lukas Neubert 55b69a76a6
fmt: minor cleanup of or_expr (#8789) 2021-02-17 05:43:29 +01:00
Nick Treleaven 0f8edd918a
checker: disallow `unsafe` map copy (#8720) 2021-02-17 05:19:25 +01:00
Lukas Neubert e4a67dea37
json2: wrap Builder.free() calls inside unsafe (#8790) 2021-02-17 02:19:26 +02:00
Delyan Angelov 2002d20249
io: remove unused Zzz_CoerceInterfaceTableGeneration struct; add test for `x := Enum{}` 2021-02-17 01:37:05 +02:00
Delyan Angelov 995e1c84a2
ci: fix `./v -cc gcc -cflags "-Werror" vlib/io/os_file_reader_test.v` 2021-02-17 01:08:28 +02:00
Delyan Angelov fb09333a73
ci: fix interface table generation for vlib/io/os_file_reader_test.v with -cflags "-Werror" 2021-02-16 23:36:44 +02:00
Delyan Angelov 4961d3ea17
io: fix detection of end_of_stream, when reading files through io.new_buffered_reader(reader: io.make_reader(f)) 2021-02-16 23:22:17 +02:00
Delyan Angelov 843de10442
parser,gen: fix `arr << map[key] using map_get_and_set_1, leading to double free 2021-02-16 16:39:31 +02:00
yuyi 982e35909d
cgen: fix `mut` var in `for` loop reads as address (fix #8548) (#8745) 2021-02-16 13:24:19 +01:00
Nick Treleaven 01aa09d515
checker: do not allow copying any map lvalue (#8662) 2021-02-16 12:46:12 +01:00
zakuro 51c286df5a
fmt: fix bug that vfmt removes emmbeded struct in struct decl (#8775) 2021-02-16 12:45:56 +01:00
Christopher Dieringer 94429c8fd8
gg: window_size: normalize dpi scaling (#8738) 2021-02-16 12:41:21 +01:00
Uwe Krüger 0520b755f4
checker/cgen: support `print*()`, `.str()` and '$x' for `shared` (#8771) 2021-02-16 12:40:13 +01:00
zakuro 6813866141
fmt: fix bug of disappearing `pub` in struct decl (#8777) 2021-02-16 12:39:50 +01:00
Delyan Angelov 0bbc5a5c6a
fmt: add a small comment about f.line_len 2021-02-16 10:22:39 +02:00
Lukas Neubert ad20b3806f
fmt: fix possible code corruption by unwrapped single line if (#8780) 2021-02-16 10:13:48 +02:00
Delyan Angelov 230372df09
clipboard: fix unsafe warning on windows (affects v-ui) 2021-02-15 20:09:02 +02:00
Nick Treleaven c057b45bb1
checker: check argument count for C fn with attribute (#8728) 2021-02-15 18:56:26 +02:00
zakuro 2911f03627
checker: reject method that have multi-value type receiver (#8696) 2021-02-15 17:55:54 +02:00
zakuro 70a30374b9
parser: cleanup fn_decl (#8700) 2021-02-15 17:55:08 +02:00
Lukas Neubert 848295cdea
scanner: do not warn on \' after string interpolation (#8729) 2021-02-15 17:54:30 +02:00
Quix 486bf8517f
builtin: fix typo (#8747) 2021-02-15 17:54:07 +02:00
Quix 6a21b8cc8b
pg: fix typo (#8750) 2021-02-15 17:53:38 +02:00
Quix 35f45b8e5e
glm: fix typo (#8748) 2021-02-15 17:53:07 +02:00
Quix 49505d4090
hash.crc32: fix typo (#8749) 2021-02-15 17:52:45 +02:00
Quix 64018e6f14
encoding.utf8: fix 'length' typo in two spots (#8746) 2021-02-15 17:52:00 +02:00
zakuro d08a0b5a7c
parser: check not used expression for all exprs in multi-expr (#8733) 2021-02-15 17:41:04 +02:00
spaceface fe007f9b16
gen: fix type_name for sumtype/interface pointers (#8769) 2021-02-15 17:35:31 +02:00
AAAA 4213851e22
cli: fix typo (#8742) 2021-02-15 17:25:30 +02:00
Nick Treleaven 4a0367a63c
vlib: add [unsafe] tag to more functions: tos, string_from_wide, strings.Builder: write_bytes, free (#8766) 2021-02-15 17:15:52 +02:00
Louis Schmieder 4bdbb0cfa8
orm: add type detection of db (#8756) 2021-02-15 17:14:39 +02:00
yuyi a9c2045dbd
cgen: fix var name clash of array/map (fix #1994) (#8765) 2021-02-15 15:51:57 +02:00
Nick Treleaven 629d43caf5
checker: warn when using `goto` outside of `unsafe` (#8741) 2021-02-15 15:48:24 +02:00
Peter Badida 6781f732f4
gen: fix infinite loop when struct's ref field is pointing to self (#8632) (#8641) 2021-02-15 15:43:10 +02:00
penguindark 325aef6d41
gg: add gg.m4, use it in the sokol GLSL examples (#8755) 2021-02-15 15:40:28 +02:00
spaceface e3649ec4d3
all: implement `type_name()` for interfaces too (#8767) 2021-02-15 15:29:44 +02:00
zakuro 4e2418e9cf
os: add test for os.file_name (#8757) 2021-02-15 07:37:35 +01:00
Nick Treleaven b07f373433
builtin: make 5 C functions trusted, tweak signatures (#8730) 2021-02-14 19:37:32 +01:00
Nick Treleaven ea803113c3
checker: check `unsafe` V function calls (#8752) 2021-02-14 19:31:42 +01:00
zakuro d3bcd5d305
fmt: keep single line if in struct init (#8734) 2021-02-14 19:22:24 +01:00
zakuro e534b4397d
checker: report correct position for non-bool cond error (#8735) 2021-02-14 19:19:41 +01:00
Nick Treleaven 82650ee813
parser: fix parsing attribute after fn prototype with no return type (#8727) 2021-02-14 08:05:20 +01:00
zakuro e4f15605c0
checker: reject void type condition (#8737) 2021-02-14 07:33:24 +01:00
Delyan Angelov 3d29f819cf
builder: add markused.mark_used calls to js.v and x64.v 2021-02-13 18:09:04 +02:00
Delyan Angelov e809264f12
builder,checker: split the unused marking into a new `v.markused` module 2021-02-13 18:02:31 +02:00
Uwe Krüger 374739b804
all: rename `[ref_only]` -> `[heap]` (#8718) 2021-02-13 16:52:01 +02:00
Delyan Angelov 2a8d0ddaf5
checker: add os.init_os_args_wide to the -skip-unused whitelist too 2021-02-13 16:33:35 +02:00