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

10905 Commits

Author SHA1 Message Date
Larpon
816e9319d7
cgen: remove the need for [console] for gg or ui programs on windows (#15912) 2022-09-29 15:02:50 +03:00
Mehmet Ali
79a473f8ec
vweb: fix a typo in the README.md (#15913)
* Fix typo

* Update vlib/vweb/README.md

Co-authored-by: JalonSolov <JalonSolov@gmail.com>

Co-authored-by: Delyan Angelov <delian66@gmail.com>
Co-authored-by: JalonSolov <JalonSolov@gmail.com>
2022-09-29 14:29:02 +03:00
Delyan Angelov
6fcab013eb
os.notify: fix sizeof(C.epoll_event) == 12 with tcc (was 16, while with gcc/clang it is 12) 2022-09-29 13:27:07 +03:00
Delyan Angelov
3b420a8d7f
net.urllib: add a URL.debug() method, returning the values of all the URL's fields 2022-09-29 10:38:11 +03:00
shove
e2cf403ca1
fmt: fix error when comments inside if and condition. (fix #15914) (#15915) 2022-09-29 09:14:11 +03:00
Swastik Baranwal
1ff1f23d9a
parser: disallow using attributes on embedded structs (#15901) 2022-09-28 17:15:33 +03:00
shove
1ac3f3d8dc
parser: fix pos error when define reference array type (fix: #15907) (#15909) 2022-09-28 17:13:29 +03:00
TSURUTA Takumi
e72d259903
change Values struct to public (#15902) 2022-09-28 16:21:33 +03:00
yuyi
be6741195d
parser: fix formating fn with variadic argument (#15900) 2022-09-28 10:55:36 +03:00
Tim Marston
66249b8c45
gg: radius_to_segments() should use Context.scale (#15906) 2022-09-28 10:40:40 +03:00
spaceface
b85a535bcd
cgen: support closures on riscv (#15898) 2022-09-28 10:34:26 +03:00
yuyi
bdf4c679da
cgen: minor cleanup in method_call() (#15894) 2022-09-27 20:05:04 +03:00
yuyi
57e4ba4cd0
checker: fix generics interface with generic sumtype (fix #15883) (#15892) 2022-09-27 16:33:34 +03:00
lemon
f1216090f7
native: support enum (#15895) 2022-09-27 13:31:54 +03:00
Joe Conigliaro
51a92d170f
encoding.base32: vfmt code 2022-09-27 16:29:44 +10:00
Joe Conigliaro
5415c4f75e
encoding.base32: initial implementation 2022-09-27 16:25:50 +10:00
yuyi
385acb448a
cgen: fix dumping c structs (fix #15878) (#15885) 2022-09-26 10:53:21 +03:00
yuyi
959eeaf1f3
parser: check undefined variable in if guard (#15882) 2022-09-26 10:17:39 +03:00
Dominik Pytlewski
721328ef58
os: fix os.read_file and os.read_bytes for 0 sized /proc/ files on Linux (fix #15852) (#15853) 2022-09-25 22:54:46 +03:00
Spydr
3674baab23
native: support escape sequences in string literals (#15877) 2022-09-25 17:47:49 +03:00
Tim Marston
089e89f865
gg: improve arc/slice drawing (#15856) 2022-09-25 15:22:10 +03:00
shove
58f7342465
cgen: fix array appending when array is used as fn parameter (fix: #15855) (#15860) 2022-09-25 13:05:54 +03:00
yuyi
50fb5de926
checker: fix dumping match expr (#15869) 2022-09-25 11:21:14 +03:00
Delyan Angelov
5cc9d7b347
checker: remove too vague notice about signed expressions while returning unsigned number types 2022-09-25 11:03:23 +03:00
yuyi
c3548c9413
tests: omit testsuite_begin/end() optional (#15871) 2022-09-25 10:29:25 +03:00
Spydr
947a1f2c65
native: add printing support for boolean and string variables (#15868) 2022-09-25 10:28:26 +03:00
Delyan Angelov
f338dec5c6 ci: fix compilation on FreeBSD (C.feof is a macro there, that expands to direct field access) 2022-09-24 10:17:32 +00:00
yuyi
d624ad50a7
os: fix file.read() (#15861) 2022-09-24 08:58:55 +03:00
shove
13d7f7db8f
parser: fix line number error of comptime atExpr in the last token of the line (fix: #15672) (#15851) 2022-09-24 00:06:07 +03:00
yuyi
c811b5343a
cgen: minor cleanup in return_stmt() (#15854) 2022-09-23 23:46:15 +03:00
yuyi
41fd02496a
cgen: fix const expr using optional or result (#15850) 2022-09-23 22:36:56 +03:00
Delyan Angelov
1f26e3fb1b datatypes: add a forward iterator for LinkedList<T>, add forward and backward iterators for DoublyLinkedList<T>. Add tests for both. 2022-09-23 22:29:13 +03:00
Delyan Angelov
a6576bec1d
json: fix encoding of structs with pointers; add test 2022-09-23 14:07:53 +03:00
ChAoS_UnItY
ea8b30fd91
encoding.utf8: add is_space (#15847) 2022-09-23 10:34:45 +03:00
shove
6ec931c781
sync: fix C.pthread_mutex_t struct typedef is missing in darwin (fix: #15491) (#15845) 2022-09-23 09:48:05 +03:00
spaceface
5c716afb39
net.ssl: switch to mbedtls over openssl (#15841) 2022-09-22 16:50:34 +03:00
yuyi
44c3fcecd9
cgen: fix reference embed method call (#15842) 2022-09-22 13:53:11 +03:00
Carl Xiong
78f8b9eb28
v.scanner: fix an unicode string escape handling bug (#15834) 2022-09-22 13:44:55 +03:00
Alfie Ranstead
27305d1a5f
net.websocket: swap unsafe use of nil for a safe default value (#15836) 2022-09-22 08:00:03 +03:00
yuyi
41dbd12bc4
tests: make error handling the same as the main function (#15825) 2022-09-21 19:45:43 +03:00
flopetautschnig
391ac12fe2
datatypes: adding ringbuffer (#15818) 2022-09-21 19:42:59 +03:00
Delyan Angelov
09411128af
json.cjson: add a test case for more complex json object construction 2022-09-21 17:22:42 +03:00
shove
0871eca177
tests: add test for using reference of map type as struct field (PR #15828) (#15830) 2022-09-21 12:20:19 +03:00
spaceface
201598e68a
builtin: fix gc.o compilation on macos (#15832) 2022-09-21 12:19:02 +03:00
Delyan Angelov
d848311fe2
tests: add missing script_with_no_extension, add exception for /tmp.* files in .gitignore 2022-09-20 16:17:21 +03:00
Annie
8f7958273b
compiler: add -raw-vsh-tmp-prefix tmp flag, to allow for executing scripts without .vsh extension (#15829) 2022-09-20 15:52:18 +03:00
spaceface
453cc41c32
builder: remove outdated tcc error (#15833)
This was introduced when we enabled the GC by default,as a suggestion
for resolving C errors caused by the user having an outdated TCC clone.
However, now that several months have passed, it is very unlikely that
people still have out-of-date copies of TCC, and instead it is more likely
that this error message is hiding the true cause of some C errors unrelated
to TCC or the GC.
2022-09-20 15:12:39 +03:00
shove
bbf1ba458e
cgen: fix using reference of sumtype or map as struct field (fix: #15827) (#15828) 2022-09-20 13:22:08 +03:00
Wertzui123
a9d63d729e
sokol.sapp,gg: add a tool_type field to gg.TouchPoint (differenciate different types of touch input) (#15822) 2022-09-20 13:15:38 +03:00
Delyan Angelov
993802f6a6
markused: fix compilation of gg programs with -skip-unused, add test to prevent regressions (#15821) 2022-09-20 08:03:03 +03:00
Swastik Baranwal
42059ee099
checker: disallow array append as expression in .map and `.filter methods (#15823) 2022-09-20 07:30:30 +03:00
Delyan Angelov
69c9d47a40
pref,os,sokol,cgen: ease compilation of 2048 with -os wasm32_emscripten (#15820) 2022-09-20 00:17:13 +03:00
yuyi
e6e3751980
checker: fix generics with pointer index (fix #15810) (#15815) 2022-09-19 22:02:49 +03:00
yuyi
a0d647d1e3
checker: clean up checking optional and result in checker.v (#15817) 2022-09-19 14:52:27 +03:00
shove
84bc170720
checker: optimize the position of the propagation error, where a fn needs to return an optional or result(fix #15780) (#15813) 2022-09-19 14:49:23 +03:00
Ikko Ashimine
0ff53d18c1
v.gen.js: fix typo in js.v (#15812) 2022-09-19 10:22:24 +03:00
Delyan Angelov
5c21b83044
cgen: skip generating typedef HANDLE __v_thread on windows, when -no-builtin is given 2022-09-19 09:14:25 +03:00
Delyan Angelov
d7758b2995
checker: fix slow compilation of vtl/nn/examples/mnist.v (reduce RAM usage) 2022-09-18 21:43:44 +03:00
shove
202585e175
checker, parser, fmt: fix visibility of anon struct in different modules.(fix #15763) (#15787) 2022-09-18 18:08:33 +03:00
yuyi
57d583d821
cgen: fix array insert in fn as mut receiver (#15806) 2022-09-18 14:55:28 +03:00
yuyi
8d2b0d4afd
parser: fix error for match expr with 'fn' (#15805) 2022-09-18 14:17:13 +03:00
yuyi
c78344ef04
vrepl: fix output errors (fix #15801) (#15804) 2022-09-18 14:09:31 +03:00
Delyan Angelov
d67aa8d76c
checker: improve the wording of the mismatched range types error 2022-09-17 21:05:30 +03:00
shove
bd3c9e888d
checker: fix missing checker error for fn abc() u64 { return -1 } (fix #15789) (#15795) 2022-09-17 20:59:52 +03:00
yuyi
085a09ebdb
vrepl: fix output error of print and fn call (#15796) 2022-09-17 15:58:53 +03:00
Delyan Angelov
afe7166346
v.builder: add -Wno-write-strings for tcc on -cstrict 2022-09-17 15:38:06 +03:00
yuyi
de636dbb2b
checker: check result type method call (#15794) 2022-09-17 11:45:13 +03:00
yuyi
26443cf9fa
vrepl: fix array method call errors (fix #15769) (#15786) 2022-09-17 10:12:01 +03:00
Delyan Angelov
a3b60e6b55
checker: improve mismatched range types error messages 2022-09-17 09:15:55 +03:00
shove
289f8f2f24
checker: fix nested struct ref field init check for embedded structs (fix #15768) (#15785) 2022-09-16 23:39:15 +03:00
Carl Xiong
0b6924ebfb
cgen: fix hardcoded app param name in code generated for vweb.html (#15766) 2022-09-16 17:27:58 +03:00
lemon
7f30519544
native: support method definition and call (#15736) 2022-09-16 16:31:05 +03:00
yuyi
0e49ce427e
cgen: fix passing sumtype parameter in sumtype matching results (fix #15078) (#15767) 2022-09-16 10:16:40 +03:00
Delyan Angelov
f922ed0941
tests: unify all temporary files/folders under $VTMP/v, that can be cleaned by v wipe-cache (#15774) 2022-09-16 04:56:19 +03:00
Delyan Angelov
7e69619add
builtin, compiler: replace isnil(x) calls with x == unsafe { nil } (a little faster without -prod) (#15759) 2022-09-15 14:59:37 +03:00
Swastik Baranwal
f09197b972
cgen: fix printing and dumping of struct having referenced interface as field (#15765) 2022-09-15 12:43:23 +03:00
shove
566a61b136
checker: fix check omission in cast string to char. (fix #15760) (#15764) 2022-09-15 09:33:38 +03:00
shove
8b962f8446
checker: fix nested struct reference type field initialized check. (fix: #15741) (#15752) 2022-09-15 07:59:31 +03:00
yuyi
5719344653
checker: fix struct init with update of mutable receiver (#15758) 2022-09-14 19:46:05 +03:00
yuyi
ea4152ee14
checker: add a test for fn call arg of fn pointer mismatch (#15757) 2022-09-14 17:46:07 +03:00
yuyi
fd1b3fc861
cgen: fix error of 'in array of sumtype' (#15756) 2022-09-14 17:43:16 +03:00
yuyi
ac64318890
checker: check casting array to number (#15750) 2022-09-13 20:41:20 +03:00
yuyi
840370f345
cgen: minor optimization in if_expr() (#15748) 2022-09-13 14:56:09 +03:00
Swastik Baranwal
a3d6a9349d
cgen: make go func with array type work (#15747) 2022-09-13 14:53:43 +03:00
shove
f51384c402
cgen: modify the temporary variable name of the previous pr 15744 (#15745) 2022-09-13 12:11:03 +03:00
shove
7cff7fb828
cgen: fix f as Fun, where f is type Expr = Fun | int, and struct Fun { f fn (int) int }. (fix #15730) (#15744) 2022-09-13 10:19:58 +03:00
yuyi
adc3b25f52
checker, cgen: fix nested if expr with optional or result (fix #15735) (#15743) 2022-09-13 10:09:12 +03:00
yuyi
e51f0be6db
checker: check taking the address of map field outside unsafe block (#15737) 2022-09-13 10:04:21 +03:00
yuyi
17b54cde97
checker: fix match with complex sumtype exprs that adding print (#15728) 2022-09-12 13:55:34 +03:00
yuyi
b4494f921a
ast: fix dumping sumtype of fntype (#15734) 2022-09-12 13:45:29 +03:00
shove
550b27b014
checker: fix recursive define check is missing when defining sumtype. (fix #15684) (#15718) 2022-09-11 15:17:38 +03:00
shove
be0dc0e537
checker: fix check omission in cast string to ptr. (fix #14921) (#15721) 2022-09-11 13:54:56 +03:00
shove
8b5f3aa970
checker: fix inner functions are called before definition. (fix #15673) (#15719) 2022-09-11 11:10:47 +03:00
lemon
aa3651fa58
native: add initial implementation of simple structs (#15722) 2022-09-11 11:05:12 +03:00
Delyan Angelov
e03ca2026b
checker: fix generic fns usage in implicitly imported os in .vsh script mode 2022-09-11 10:47:47 +03:00
yuyi
7eb36789ac
checker, cgen: fix nested match expr with optional or result type (#15717) 2022-09-10 11:44:22 +03:00
shove
bce1039c9c
cgen: fix missing type name when anonymous struct is used as parameter. fix #15698 (#15699) 2022-09-10 09:35:42 +03:00
Spydr
b429aad63b
native: add struct representing elf headers (#15716) 2022-09-10 09:29:46 +03:00
Louis Schmieder
f249feb9da
orm: support parenthesized expressions as in select from User where (name == 'Sam' && is_customer == true) || id == 1 (#15693) 2022-09-09 21:08:48 +03:00
yuyi
61a4b469a3
cgen: fix nested match expr with optional or result (#15713) 2022-09-09 18:23:56 +03:00
shove
ca36284612
fmt: fix anonymous struct in parameter with invalid type name. fix #15696 (#15711) 2022-09-09 14:44:49 +03:00
Swastik Baranwal
6db5781d53
checker: add checks for .map(opt_fn_name) and .filter(opt_fn_name) (#15687) 2022-09-09 12:24:57 +03:00
yuyi
0f3a395ca2
checker, cgen: fix if expr with result (#15709) 2022-09-09 11:29:21 +03:00
yuyi
71f5f7f3a7
cgen: fix if expr with fn call result (#15702) 2022-09-08 22:39:49 +03:00
yuyi
ec2ca38adb
checker, cgen: fix match expr with result (#15706) 2022-09-08 21:24:16 +03:00
Ken
1738641567
cgen, checker, ast: add syntax support for reference x in for x in &somearrary { and for x in &somemap { loops (#15678) 2022-09-08 13:36:40 +03:00
flopetautschnig
9641ced901
vweb.csrf: add a README.md, correct doc comments for public functions (#15697) 2022-09-08 13:20:29 +03:00
yuyi
5c900e23de
cgen: fix const aliases of bytes fixed array (#15701) 2022-09-08 13:19:02 +03:00
Delyan Angelov
fc8e3d0971
builtin,strconv: speedup str.int() conversions (without -prod) 2022-09-08 11:28:19 +03:00
yuyi
a462610376
ast: minor optimization in sumtype_check_function_variant() (#15694) 2022-09-08 09:20:30 +03:00
shove
a75a12ec1e
checker: fix const variable type error when global variable with the same name exists (fix #15686) (#15689) 2022-09-07 19:06:45 +03:00
Emin Arıcan
7672725204
net: fix typo (#15688) 2022-09-07 16:35:28 +03:00
yuyi
8627af18dd
table: check sumtype of fntype assign error (#15685) 2022-09-07 16:05:38 +03:00
yuyi
2693935066
checker: check non generic struct used like a generic one (#15690) 2022-09-07 14:53:43 +03:00
Delyan Angelov
c5ed179e76
arrays: remove deprecation from arrays.concat/2; it is a useful abstraction for operating on immutable arrays 2022-09-07 13:25:40 +03:00
yuyi
ca99a1d355
cgen: fix sumtype with fntype using fn directly (fix #15674) (#15679) 2022-09-06 20:33:39 +03:00
flopetautschnig
1c63ce479c
vweb: adding a vweb.csrf protection module (#15586) 2022-09-06 13:18:39 +03:00
Hitalo Souza
95a328be98
orm: improve the README and the tests. Add an error message for foreign key tags (#15670) 2022-09-06 13:12:37 +03:00
yuyi
e3d3863fbe
cgen: refactor need_tmp_var_in_expr/match() (fix #15675) (#15676) 2022-09-06 13:09:28 +03:00
shove
862d91ed0a
checker: check for name conflicts between const and __global variables (fix #15668) (#15669) 2022-09-05 18:58:30 +03:00
yuyi
6fd22531a9
cgen: fix if expr with index expr (#15666) 2022-09-05 18:55:53 +03:00
yuyi
d649f5aff4
checker, cgen: fix go call fn using map value (#15665) 2022-09-05 17:16:28 +03:00
Seven Du
90c2c5b8a4
token: add @FILE_LEN (#15661) 2022-09-05 17:00:35 +03:00
yuyi
d0d5f1d4e0
cgen: fix fn variable name using reserved c word (fix #15647) (#15648) 2022-09-04 17:50:41 +03:00
Swastik Baranwal
436b19c408
checker: add error for mismatched types and format character for string interpolation (#15639) 2022-09-04 14:15:26 +03:00
yuyi
78998a09e4
cgen: fix go call anon fn with closure (#15656) 2022-09-04 14:03:24 +03:00
jrfondren
45e21bc311
os: remove private unix_environ() helper function, it is not needed anymore (#15654) 2022-09-04 13:22:38 +03:00
yuyi
0c84ad847e
cgen: fix match expr with optional (#15658) 2022-09-04 13:21:16 +03:00
Delyan Angelov
dd78620b31
cgen: fix [packed] struct support for tcc 2022-09-04 07:14:01 +03:00
yuyi
5e1a2f6f50
checker: check if guard with multiple return variable (#15646) 2022-09-03 10:56:46 +03:00
yuyi
a5aad6f791
cgen: fix alias of map delete (#15644) 2022-09-03 10:41:53 +03:00
yuyi
1ef95fdec6
cgen: fix assert value is '*unknown value*' (#15645) 2022-09-03 10:38:27 +03:00
Davide Beatrici
4bd49a0149
ci: run more tests on the FreeBSD Cirrus runner (#15602) 2022-09-01 21:56:43 +03:00
yuyi
42e582804e
checker: check fn variadic passing arg error (fix #15629) (#15632) 2022-09-01 21:24:24 +03:00
yuyi
bfdd6f1cf8
csv: minor cleanup in writer.v (#15633) 2022-09-01 21:23:18 +03:00
Delyan Angelov
728b198384
os: extract dir_expansions_test.v from os_test.v 2022-09-01 13:07:29 +03:00
Delyan Angelov
0cc0e87051 time: use linux_utc() and linux_now() on freebsd too (more precise, and fixes time_test.v) 2022-09-01 09:54:20 +00:00
Davide Beatrici
23e8fca4f9
native: fix order and add missing path in find_o_path() (#15622)
This fixes the linker failing when:

- 32 bit libraries exist in "/usr/lib".
- 64 bit libraries are in "/usr/lib64" and not "/usr/lib/x86_64-linux-gnu".
2022-09-01 10:21:35 +03:00
yuyi
5e8f9b11c9
checker: check casting voidptr to generic struct (fix #15618) (#15626) 2022-09-01 09:22:37 +03:00
Alexander Medvednikov
f2f6ea5969 V 0.3.1 2022-08-31 19:24:57 +03:00
Louis Schmieder
fef26a0b19
fmt: fix striping modules prefix in orm (#15005) 2022-08-31 19:23:36 +03:00
yuyi
806c39d46e
parser: fix error for match sumtype with fntype (#15620) 2022-08-31 18:44:12 +03:00
Louis Schmieder
6110373519
orm: init or implementation (#14989) 2022-08-31 14:43:20 +03:00
Haren S
bc06866b20
make: add clock_gettime on macOS < 10.12 (fix #6605) (#15611) 2022-08-31 11:03:25 +03:00
yuyi
4d6b8cbfd8
cgen: fix casting sumtype as fntype (#15612) 2022-08-31 10:45:47 +03:00
yuyi
64f403e997
cgen: fix dumping shared variable (#15615) 2022-08-31 10:42:28 +03:00
yuyi
56135dbdbc
cgen: fix printing reference enum (#15606) 2022-08-30 14:24:48 +03:00
Alexander Medvednikov
ba1045e5fd parser: deprecate inline sum types 2022-08-30 13:18:22 +03:00
yuyi
b154af032b
parser: fix sumtype with multi fntype (fix #15557) (#15583) 2022-08-30 12:48:25 +03:00
yuyi
5d4492ac6f
checker: check cast to reference struct (fix #15590) (#15601) 2022-08-30 11:42:21 +03:00