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

1700 Commits

Author SHA1 Message Date
Alexander Medvednikov
e3917d98c2 generics: another mut arg test 2020-06-05 20:57:05 +02:00
joe-conigliaro
3c4e4d4825
gen/checker: copy ptr & flag info in unwrap_generic 2020-06-05 18:41:15 +10:00
Ned Palacios
30e0bda434
vdoc: rewrite usage, add new options + streamline process 2020-06-05 09:59:26 +02:00
yuyi
c9b395f9cf
checker: fix for_in_index type error 2020-06-05 09:44:25 +02:00
yuyi
ef46fbb96f
cgen: clean up ternary 2020-06-05 08:30:03 +02:00
Daniel Däschle
d0f9bdf85e
vdoc: style and other improvements 2020-06-04 23:50:59 +02:00
Alexander Medvednikov
13a7ce9e69 gg: GG => Context 2020-06-04 20:26:18 +02:00
Uwe Krüger
cf9498ef6b
cgen: use standard checks for float comparisons 2020-06-04 19:47:41 +02:00
joe-conigliaro
1c43204224
table: remove extra parens & inline fn 2020-06-05 00:28:34 +10:00
yuyi
dd7ebf7fac
parser: check function argument mutable syntax 2020-06-04 15:20:43 +02:00
joe-conigliaro
edd56bc080
table: allow type hold 8 flags at once 2020-06-04 22:38:54 +10:00
Alexander Medvednikov
277b7b35d0 cgen: write_fn_attr() 2020-06-04 12:20:14 +02:00
joe-conigliaro
41dca3ef58
checker/cgen: fix mutable generic fn args 2020-06-04 19:32:31 +10:00
yuyi
8a24d7d723
checker: optional return fix 2020-06-04 10:40:32 +02:00
yuyi
5ae8853648
all: change f mut Foo to mut f Foo 2020-06-04 10:35:40 +02:00
Swastik Baranwal
d286f67220
parser: update check for non mut types in fn 2020-06-03 18:47:18 +03:00
yuyi
962bbf1c60
fmt: fix ?void format error, add _keep.vv test 2020-06-03 18:45:40 +03:00
yuyi
ffafeac0f8
cgen: optimize gen c code format 2020-06-03 18:24:08 +03:00
Leah Lundqvist
5e2a6ffe65
jsgen: small fix - remove trailing comma in export 2020-06-03 17:30:43 +03:00
yuyi
13e09c61ef
tests: add multi_dimensional array init tests 2020-06-03 14:10:29 +02:00
yuyi
1060de88af
parser: fix function mutable argument error 2020-06-03 12:28:16 +02:00
spaceface777
4b7c70caca
parser: fix JS functions starting with caps 2020-06-03 10:57:32 +02:00
Alexander Medvednikov
d182059ba6 tests: fix fn_test.v 2020-06-03 10:54:47 +02:00
Alexander Medvednikov
00978da2c4 checker: fix mut int test 2020-06-03 10:45:19 +02:00
Alexander Medvednikov
888a43a684 checker: fix mut int test 2020-06-03 10:40:41 +02:00
Alexander Medvednikov
199f4f006b checker: fix mut int check 2020-06-03 10:36:56 +02:00
Delyan Angelov
6a0a2da05c cgen: support $if test { ... } 2020-06-03 10:20:10 +03:00
Alexander Medvednikov
99c70cf9c6 pref: do not allow -o .v 2020-06-03 09:03:46 +02:00
Mike 'Fuzzy' Partin
ac0fee8e64
repl: fix BSDs 2020-06-03 08:44:44 +03:00
yuyi
d0ff9a7c4a
parser: correct fn arg position in error message 2020-06-03 08:42:02 +03:00
Alexander Medvednikov
63b8cdea7a checker: require () in a && b || c 2020-06-02 22:21:44 +02:00
Delyan Angelov
0a84f0feb5 vdoc: prevent infinite recursion in get_parent_mod 2020-06-02 23:14:46 +03:00
yuyi
1386c5df13
parser: use ? instead of ?void errpr 2020-06-02 17:24:24 +02:00
Uwe Krüger
b0f66a4e05
checker: permit int -> f32, int64 -> f64 and similar promotions again 2020-06-02 17:00:14 +02:00
Alexander Medvednikov
640688d8cf vdoc: fmt doc/doc.v 2020-06-02 16:19:55 +02:00
Alexander Medvednikov
fb3e52ca63 all: !is operator 2020-06-02 16:18:12 +02:00
Alexander Medvednikov
78f8a8aee6 cgen: remove g_ hack 2020-06-02 15:49:43 +02:00
yuyi
653a27005b
cgen: fix multi dimensional array init error 2020-06-02 15:15:52 +02:00
Delyan Angelov
3521c9045b vpm: change hardcoded ~/.vmodules/ (does not work on windows) 2020-06-02 14:36:49 +03:00
Ned Palacios
b99ba21ddd
vdoc: markdown, html, json generation + lots of fixes 2020-06-02 12:10:01 +02:00
yuyi
63b2d4be99
cgen: make >8 indent levels work 2020-06-02 10:40:24 +02:00
Alexander Medvednikov
138d730dfa checker: prepare for the is_changed check 2020-06-02 09:00:51 +02:00
Ned Palacios
9fcb8536e8
fmt: fix struct decl gen with c structs 2020-06-02 07:41:02 +02:00
Uwe Krüger
076089d3c5
checker: apply stricter type checks to function args and return types 2020-06-01 21:15:59 +02:00
Emily Hudson
0c7bac4ba7
json: fix enums and byte, cleanup 2020-06-01 19:36:07 +03:00
Delyan Angelov
6161392648 json: do not generate comptime encode/decode functions already defined in json_primitives.v 2020-06-01 19:04:17 +03:00
Delyan Angelov
ae8f7cf569 tests: fix some tests, that failed due to the stricter immutable checks 2020-06-01 18:24:38 +03:00
Delyan Angelov
86862d6a94 checker: remove mod_file_cacher exception 2020-06-01 17:43:03 +03:00
Alexander Medvednikov
3d83934caf checker: check mutating methods; generics fixes 2020-06-01 15:44:10 +02:00
Delyan Angelov
945439dab6 cgen: print actual values on a failed assert (when possible) 2020-06-01 14:43:38 +03:00
spaceface777
11e6734912
jsgen: more fixes and improvements 2020-05-31 20:48:31 +02:00
pancake
304258162c
cgen: when building a shared library, make vinit() a constructor 2020-05-31 17:27:23 +02:00
Mike 'Fuzzy' Partin
411868a43a
util: add gdiff to the list of diff utilities to support bsd systems 2020-05-31 17:01:31 +02:00
Alexander Medvednikov
a5ddb613fb builder: linux cross compilation 2020-05-31 15:09:07 +02:00
Delyan Angelov
f1f6fb1a9f json: fix f32 is not struct 2020-05-31 14:17:20 +03:00
Uwe Krüger
faf3248e98
checker: check types for bitwise right shift 2020-05-31 12:58:13 +02:00
Emily Hudson
75eac291ac
all: variable sized options 2020-05-31 12:57:26 +02:00
Alexander Medvednikov
f87e872fa2 checker/cgen: interface match 2020-05-31 10:22:21 +02:00
Delyan Angelov
bb9d268bd9 fmt: add struct init keep test, fix another &&Foo bug 2020-05-30 22:34:57 +03:00
Alexander Medvednikov
905f844b16 cgen: return interface fix 2020-05-30 20:18:03 +02:00
Alexander Medvednikov
1ca7a607d3 checker/cgen: return interfaces 2020-05-30 19:54:16 +02:00
Uwe Krüger
b74e1bb05d
checker: fix type mismatch in function argument for struct reference init 2020-05-30 15:42:12 +02:00
Emily Hudson
a4de507c6d
cgen: panic on assertion failed outside tests 2020-05-30 13:19:52 +02:00
Delyan Angelov
f9cb0d443b builder: improve suggestion on a w64 cross compile fail on linux 2020-05-30 13:49:03 +03:00
Delyan Angelov
d148920b54 v.util: prepare CI for the external markdown module (needed for vdoc) 2020-05-30 11:06:16 +03:00
JalonSolov
b7dc5b2f7b
stopwatch: auto_start option, make pause cumulative 2020-05-30 10:20:54 +03:00
Delyan Angelov
077e06b44e fmt: fix struct field default expressions and tags 2020-05-29 21:22:27 +03:00
yuyi
1e504fb388
parser: check undefined variable of assign_expr 2020-05-29 17:38:40 +02:00
Delyan Angelov
f3c5f36317 parser: allow for struct Abc { f [skip] = -1 } 2020-05-29 12:45:54 +03:00
Alexander Medvednikov
1c11ac9fdf checker: make sure is is only used with interfaces and sum types 2020-05-29 06:46:01 +02:00
yuyi
3a340cbffc
checker: fix array_init cast type error 2020-05-29 06:39:46 +02:00
Alexander Medvednikov
bec3e07635 interfaces: fix is 2020-05-29 05:54:53 +02:00
pancake
b3f2c629c6
builder: use .dylib for -shared builds in macOS 2020-05-29 04:52:19 +02:00
Alexander Medvednikov
96fb7901b3 live: fix reloader.v 2020-05-29 04:36:08 +02:00
Alexander Medvednikov
81b44dc2c9 generics: generic call inside generic call; checker: check mut args at call 2020-05-29 04:30:00 +02:00
Emily Hudson
f0a9b88ac4
all: add stdcall attribute, unhandled exception handler, get_raw_stdin, v_realloc 2020-05-29 03:06:27 +02:00
Tim Basel
7e538d7401
utils: add args to launch_tool 2020-05-28 19:40:09 +03:00
yuyi
28ffe2a6ee
checker: add error for struct fields of type []unknown 2020-05-28 19:38:53 +03:00
spaceface777
60716bba29
parser: fix nested array_init syntax 2020-05-28 19:36:57 +03:00
pancake
1d78914a8f
parser: support @VROOT in #include too, make it use absolute paths 2020-05-28 19:36:04 +03:00
Delyan Angelov
75b8822f06 scanner: prevent infinite looping, when reaching .eof due to parser bugs 2020-05-28 19:22:11 +03:00
Delyan Angelov
d70cd81875 v.pref: remove 'setting pref.path to ...' when given -v 2020-05-28 18:41:26 +03:00
Alexander Medvednikov
9609b3a9c8 checker: make the method warning an error 2020-05-28 15:30:54 +02:00
Alexander Medvednikov
01dbb25a37 checker: do not allow defining methods on types from other modules 2020-05-28 15:23:20 +02:00
Leah Lundqvist
1d0ebfb691
jsgen: add hash statement 2020-05-28 14:38:10 +02:00
pancake
2943bdc1f6
cgen: add support for $if (mach|darwin|hpux|gnu|qnx|bsd) 2020-05-28 13:33:12 +02:00
yuyi
977eb895e8
checker: check array init's element type 2020-05-28 13:32:12 +02:00
Delyan Angelov
a3bd8d3e4c cgen: add trace info about auto str generation 2020-05-28 10:36:29 +03:00
Delyan Angelov
55ef117531 cgen: fix for V structs fields (auto str and json_decode) 2020-05-28 09:55:37 +03:00
Ned Palacios
94f23d96e9
vfmt: fix generation on C idents, fixed arrays 2020-05-28 08:06:20 +02:00
Alexander Medvednikov
d6037cbcf2 generics: fix method calls 2020-05-28 05:58:19 +02:00
Delyan Angelov
ae8cc2f433 live: fix -live compilation && make live_test.v not swallow segfault errors 2020-05-28 03:21:49 +03:00
yuyi
9cbd9db4e7
cgen: fix swap assign of prefix and postfix expr 2020-05-28 02:22:09 +03:00
div72
cecb7d29c7
Prevent vfmt from appending the module name to FnTypeDecl inside the same module (#5080) 2020-05-28 02:19:24 +03:00
Alexander Medvednikov
4988d340b1 generics: fix method calls 2020-05-28 01:19:08 +02:00
Delyan Angelov
f6bdb3ae81 v.vmod: cleanup vmod.mod_file_cacher API 2020-05-28 01:38:11 +03:00
Delyan Angelov
2046ae78df builder: improve redefinition of function messages 2020-05-28 00:56:28 +03:00
Delyan Angelov
0292666ac1 builder: use verror instead of panic when a _test.v file does not exist 2020-05-27 21:38:09 +03:00
yuyi
84edbd83da
all: fix struct names error 2020-05-27 19:12:34 +03:00
Alexander Medvednikov
670820cc59 parser: do not allow 1 char struct names 2020-05-27 16:00:00 +02:00
Alexander Medvednikov
5423a15f46 generics: more fixes 2020-05-27 15:56:30 +02:00
Ned Palacios
e0db880791
fmt: simplify map_init 2020-05-27 16:26:45 +03:00
Emily Hudson
0b64e2190f
checker,cgen: unpack multi returns in return statements 2020-05-27 15:47:38 +03:00
x0r19x91
72ed673566
builtin: array: fix slice cloning 2020-05-27 14:07:03 +02:00
Larpon
6ca53d7b39 scanner: improve @FN substitution for anon functions 2020-05-27 12:05:50 +03:00
Delyan Angelov
481f103dc9 checker: make an error using non pub fns from other modules 2020-05-27 12:00:19 +03:00
Delyan Angelov
ebbf42dadb tests: add a commented test_generic_fn_with_variadics, which worked with old v 2020-05-27 08:41:12 +03:00
Alexander Medvednikov
59711d9c55 generics: test T{} 2020-05-27 06:53:52 +02:00
Uwe Krüger
013fdb8a4b
checker: restrict numeric promotions to cases where no data is lost 2020-05-27 05:42:48 +02:00
Alexander Medvednikov
fc67046bac checker: fix pub fn check 2020-05-27 03:38:21 +02:00
Alexander Medvednikov
7c9279c447 vfmt: make work with comptime 2020-05-27 03:33:40 +02:00
yuyi
23c0bb600c
scanner: fix vmod_file on windows 2020-05-27 03:32:39 +02:00
Alexander Medvednikov
6f7628cb67 parser: comptime call fixes 2020-05-27 03:20:25 +02:00
Ned Palacios
b02ec8cbf9
vfmt: fix raw string support 2020-05-27 03:10:47 +02:00
Delyan Angelov
3cfdd2a4cd scanner: add support for @VMOD_FILE 2020-05-26 23:39:15 +03:00
yuyi
bb48851092
cgen: fix mutliple_assign swap 2020-05-26 18:00:51 +02:00
Larpon
31ba64b409
scanner: add support for @STRUCT compile time substitution 2020-05-26 15:35:11 +02:00
Julia K
285e04393e
cgen: fix missing space, remove unnecessary comment 2020-05-26 16:22:28 +03:00
Julia K
2b27072fac
compiler: new attributes, prelude customization 2020-05-26 14:12:18 +02:00
Emily Hudson
748b1d3381
cgen: use typ() for array type 2020-05-26 14:11:59 +02:00
Julia K
b4eadb9030
cmd/v: reimplement -path flag 2020-05-26 03:17:52 +02:00
Alexander Medvednikov
b4d88ee4af checker: handle map.clone() 2020-05-26 02:09:26 +02:00
Alexander Medvednikov
0f92800921 cgen: string buffer fix 2020-05-26 00:04:13 +02:00
Delyan Angelov
b0cfd3fa67
parser: reimplement [flag] enum support. Add p.vcodegen too 2020-05-26 00:00:48 +03:00
Delyan Angelov
5825e467b8 checker: fix appending an .enum_val to a struct field of []Enum 2020-05-25 21:48:43 +03:00
spaceface777
f8b237433f
jsgen: fix array push operator 2020-05-25 19:34:42 +03:00
Larpon
09dc2eed82
scanner: add support for '@MOD' 2020-05-25 19:33:41 +03:00
Alexander Medvednikov
bc3e29e77b cgen: fix a bug with tmp strings/free 2020-05-25 11:01:21 +00:00
Alexander Medvednikov
53a10eb312 cgen: use STR_TMP with -autofree 2020-05-25 12:46:18 +02:00
pancake
fe249cd1f8
pref: fix crash in 'v run' without arguments 2020-05-25 12:30:12 +02:00
Enzo Baldisserri
d22609051a
checker: CallExpr with handled optional returns plain type 2020-05-25 11:32:14 +02:00
yuyi
30ca08aaa3
parser: fix self-referenced error 2020-05-25 11:31:04 +02:00
Delyan Angelov
96808a0e2a cgen: generalize _vcleanup of array/string consts + valgrind with tcc 2020-05-25 10:24:19 +03:00
Delyan Angelov
ae03aab03e cgen: autofree math.bits and strconv.ftoa constants 2020-05-25 09:53:30 +03:00
Delyan Angelov
6683f98eba cgen: add support for -printfn _vcleanup and -printfn _vinit 2020-05-25 09:47:00 +03:00
Alexander Medvednikov
656bc6b6c8 tests: valgrind: strings are freed now! 2020-05-25 06:23:50 +00:00
Alexander Medvednikov
f41e2c0a4b string: make replace() clone for now; parser: comptime method 2020-05-25 08:17:36 +02:00
Alexander Medvednikov
1b36d7a037 cgen: handle c++ keyword 2020-05-25 05:46:58 +02:00
Alexander Medvednikov
99ce3d456b jsgen: handle ComptimeCall 2020-05-25 05:38:47 +02:00
Alexander Medvednikov
1ef8eacd6e checker/gen: more generics fixes; ComptimeCall 2020-05-25 05:32:36 +02:00
yuyi
ec7863d174
cgen: fix array_init of struct error 2020-05-25 04:45:16 +02:00
spaceface777
4189190bb8
jsgen: start implementing remaining exprs and stmts 2020-05-24 22:49:01 +02:00
Uwe Krüger
fd4d28b7b6
tests: update for stricter type checks 2020-05-24 21:07:32 +02:00
Delyan Angelov
a0f8005352 checker: support tests/run/ folder, checks many warns/errors/output 2020-05-24 21:13:09 +03:00
Delyan Angelov
23e8c8ecda checker: prevent infinite recursion on a:=b b:=a 2020-05-24 20:55:04 +03:00
yuyi
641fe5c864
checker: fix unresolved variables error on assignments 2020-05-24 20:33:53 +03:00
Delyan Angelov
1754ba19d8 live: cleanup live_test.v output, remove 1s delay 2020-05-24 18:38:43 +03:00
Delyan Angelov
d16485c29e live: make live_test.v more robust 2020-05-24 17:45:53 +03:00
Uwe Krüger
7c4f2b535b
cgen: prepare any_in, any_float on v side 2020-05-24 15:26:43 +03:00
Delyan Angelov
ddcb5f7da3 gen: fix autogenerated print methods for vargs 2020-05-24 15:05:19 +03:00