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

140 Commits

Author SHA1 Message Date
Alexander Medvednikov
803ded3dec sum type type Foo = Bar | Baz 2019-12-24 16:04:49 +03:00
Alexey
dced76d1a4 os, filepath: reorganize functions 2019-12-23 13:09:22 +03:00
Alexander Medvednikov
7ab993c218 sum types 2019-12-23 06:14:31 +03:00
れもん
28ecfb231d compiler: map[string]pointer, ?pointer, fix []pointer 2019-12-22 01:44:16 +03:00
Alexander Medvednikov
31b7991a93 negative enum vals + [10]C.Foo fix 2019-12-22 00:17:13 +03:00
joe-conigliaro
fbd9fedbfb implement generic structs 2019-12-21 03:53:57 +03:00
BigBlack
a38a0f4fb7 parser: fix x.function_pointer() 2019-12-19 21:23:29 +03:00
BigBlack
2f218b878b fix fn type call 2019-12-18 13:21:49 +03:00
Alexander Medvednikov
81045023c4 run vfmt on scanner.v 2019-12-18 08:26:51 +03:00
Alexander Medvednikov
3d1db3519d test enum printing 2019-12-18 05:45:48 +03:00
Alexander Medvednikov
7456d556e1 fix 2 repl tests 2019-12-18 05:02:23 +03:00
Johan Hillerström
6008fa44c6 parser: fix generic function call in for in expression 2019-12-17 01:08:30 +03:00
Alexander Medvednikov
560d1383d1 fix optional struct field assignment 2019-12-17 00:36:28 +03:00
Alexander Medvednikov
bcde155da7 test the recent type alias string; print vweb templates in verbose mode 2019-12-16 19:34:04 +03:00
BigBlack
fc33f9d49c type alias check 2019-12-14 22:01:20 +03:00
Delyan Angelov
1cd5fab21d testing: support for internal module testing 2019-12-14 15:57:28 +03:00
Alexander Medvednikov
c72bf0e1b1 global access modifier 2019-12-13 20:28:28 +03:00
Alexander Medvednikov
dc83e30a44 access modifiers: update tests/examples 2019-12-13 20:09:11 +03:00
Delyan Angelov
fc64238a39 testing: allow tests to import the same module with no custom options 2019-12-13 19:28:39 +03:00
Alexander Medvednikov
88ec9c235d sort structs: handle fixed size arrays 2019-12-12 14:21:22 +03:00
joe-conigliaro
3486118ab7 compiler: force custom struct .str() methods to be defined public 2019-12-11 03:24:26 +03:00
joe-conigliaro
6d5e9f88f8 parser: allow enums to be used as bitfield flags 2019-12-10 06:16:47 +03:00
Alexander Medvednikov
02eee49d25 fix defer_test 2019-12-08 15:30:14 +03:00
Alexander Medvednikov
c9886e6f42 use ++ everywhere 2019-12-08 14:34:51 +03:00
Alexander Medvednikov
c019dd6f98 test assert in functions that return values 2019-12-07 22:42:20 +03:00
Alexander Medvednikov
ad6adf327e vlib: fix missing else{} in match statements 2019-12-07 17:23:37 +03:00
Alexander Medvednikov
a594e009f2 test high order function 2019-12-07 16:13:25 +03:00
Delyan Angelov
98374ea6fe CI: fix msvc (temporary work around dialogs poping up) 2019-12-05 17:08:18 +03:00
Alexander Medvednikov
fb237b9e53 parser: check types in a in b expressions 2019-12-04 22:17:24 +03:00
Delyan Angelov
9a6711fa1b compiler: c'str' now has type charptr 2019-12-04 13:34:06 +03:00
Alexander Medvednikov
3fea8f3de5 *char => charptr everywhere 2019-12-01 10:33:26 +03:00
Alexander Medvednikov
a23a4ed98a update all index() uses 2019-11-30 15:27:16 +03:00
bogen85
e31d892598 make _V_mret_ unique by putting p.token_idx in it 2019-11-29 11:11:53 +03:00
Delyan Angelov
7545ea709a enable alpine/musl CI tests 2019-11-28 11:46:52 +03:00
bogen85
3b7466a13d ci: rename multiret_with_ptrtype.v 2019-11-28 09:46:52 +03:00
bogen85
e63300e286 temporary fix for issue #2897 2019-11-27 19:55:32 +03:00
れもん
584786d87c parser: fix in expression 2019-11-27 08:48:04 +03:00
ʇʞʌp
6349bd33d3 compiler: Allow or usage when assigning to struct fields. (#2893) 2019-11-26 09:07:35 +03:00
ʇʞʌp
81d552038c parser: allow constant usage in assoc 2019-11-26 06:41:56 +03:00
bogen85
5c217b9e61 fix hexadecimal constants + freestanding fixes 2019-11-26 06:12:37 +03:00
Alexander Medvednikov
a4ab7b14c1 wrap up struct default vals + tests 2019-11-25 05:59:58 +03:00
れもん
3d235169c8 parser: fix if expression 2019-11-23 14:25:57 +03:00
Dwight Schauer
4edade5067 compiler: fix a deferencing cast was causing a segfault 2019-11-22 09:11:06 +03:00
joe-conigliaro
8fbfceed30 compiler: generics - support across modules/files 2019-11-22 08:22:11 +03:00
Alexander Medvednikov
3e564a2506 parser: fix register() bug in interfaces 2019-11-20 18:19:13 +03:00
Alexander Medvednikov
439bb0c5de foo()? test 2019-11-18 12:11:25 +03:00
Alexander Medvednikov
4c0269597d fix repl tests; change asm syntax a bit 2019-11-18 11:59:13 +03:00
Alexander Medvednikov
6ae8457f35 fix strings.Builder.str() 2019-11-17 07:05:13 +03:00
Alexander Medvednikov
6c51d0bb78 another inline asm test + disable on msvc 2019-11-17 01:07:21 +03:00
Alexander Medvednikov
2964bf9e23 inline assembly 2019-11-17 00:59:49 +03:00
Delyan Angelov
e577b40743 compiler: add support for $if x32, x64, big_endian, little_endian 2019-11-15 16:14:28 +03:00
Alexander Medvednikov
b1fa0d25f0 foo()? syntax 2019-11-14 06:15:45 +03:00
Alexander Medvednikov
3b929cdd03 update repls tests 2019-11-13 20:40:01 +03:00
Steven Gay
51663520c8 MSVC backtrace 2019-11-13 11:05:06 +03:00
BigBlack
99169ae4ff parser: ptr++,*(ptr+1) 2019-11-11 23:39:16 +03:00
BigBlack
0ab09a57f7 parser: multi-level pointers 2019-11-11 18:43:22 +03:00
Delyan Angelov
de5b4f0497 fix tests for tcc, extract failing stuff to separate simpler files to ease debugging
* Fix compiling vlib/compiler/tests/fn_test.v with tcc.

* Extract failing tests from fn_test.v so that they are more readable and easier to debug.
2019-11-11 17:59:59 +03:00
Alexander Medvednikov
bf98eb55ee remove a test until a tcc bug is fixed 2019-11-11 05:27:30 +03:00
Alexander Medvednikov
887c94d9ba parser: second batch of start_tmp() 2019-11-11 05:14:54 +03:00
Alexander Medvednikov
f30d0ce667 parser: fix a bug with complex ref fn args 2019-11-11 04:56:13 +03:00
Alexander Medvednikov
ffa9646749 Revert "print_backtrace_skipping_top_frames: Implementation for MSVC "
This reverts commit d1e7a54f3a.
2019-11-10 20:01:19 +03:00
Alexander Medvednikov
c7f3413d70 more vfmt fixes 2019-11-10 19:49:19 +03:00
Steven Gay
d1e7a54f3a print_backtrace_skipping_top_frames: Implementation for MSVC 2019-11-10 19:34:53 +03:00
Toby Webb
ab37081f02 add production mode tests
Due to the inability to detect warnings in REPL tests, I implemented running something very similar, but with the -prod flag enabled.
(See https://github.com/vlang/v/pull/2536)

There is also a minor change in os.walk_ext to not add duplicated path separators:
/path//file.ext -> /path/file.ext
2019-11-09 19:35:26 +03:00
Alexander Medvednikov
cac719c078 []interface 2019-11-08 22:08:02 +03:00
Alexander Medvednikov
7a8e7b4db8 fix interface methods that return a value 2019-11-08 07:43:44 +03:00
Alexander Medvednikov
985fb91ee8 rewrite interfaces 2019-11-08 07:16:53 +03:00
Alvydas Vitkauskas
af81b02ef0 parser: fix shift-assign to work with all integer types 2019-11-06 03:37:31 +03:00
Alvydas Vitkauskas
3080959084 parser: make let shift operators work with all types 2019-11-06 01:02:50 +03:00
joe-conigliaro
df5faf35e5 compiler: optionals default value 2019-11-04 02:38:49 +03:00
joe-conigliaro
fe9d884d90 parser: fix forwarding vargs & multiple call varg len fix 2019-11-01 19:14:16 +03:00
ytakahashi
114953f28d match: fix typo and remove arrows 2019-10-31 18:58:19 +03:00
Alexander Medvednikov
2bd2501dc0 fix new enums in tests 2019-10-30 16:38:47 +03:00
joe-conigliaro
59378dce46 compiler/vlib: replace substr/left/right with [start..end] everywhere 2019-10-27 10:03:15 +03:00
Delyan Angelov
8364130a1f compiler: implement error_with_code(s string, code int)
Make available the integer code as errcode to callers/unwrappers
2019-10-25 22:03:42 +03:00
Simon Heuser
280c7d396c generics: generic methods, cast to T 2019-10-25 21:32:27 +03:00
Alexander Medvednikov
bac690bbc8 parser: replace the switch statement in parse() 2019-10-24 15:50:46 +03:00
Alexander Medvednikov
3a929faf26 enums: make in work without specifying the full type 2019-10-24 15:41:34 +03:00
Alexander Medvednikov
560ae9352c nice enum works 2019-10-24 15:41:34 +03:00
joe-conigliaro
580abe0de4 lower/snake case consts & enums 2019-10-24 14:48:20 +03:00
Alexander Medvednikov
1c564bc118 compiler: public consts and structs 2019-10-24 12:26:43 +03:00
joe-conigliaro
2f5a742f3e compiler: generic variadic fix 2019-10-23 19:44:05 +03:00
Alexander Medvednikov
95321f5b33 fix module_test.v 2019-10-23 12:50:18 +03:00
Delyan Angelov
eef73eea22 tools: new tool to extracts function names declared in V files 2019-10-21 14:14:28 +03:00
Toby Webb
dfc654f84e const declarations should be order independent 2019-10-21 08:57:29 +03:00
Alexander Medvednikov
3d6b936f38 parser: undefined error 2019-10-20 20:47:27 +03:00
Simon Heuser
8a31ee4b53 generic functions 2019-10-20 10:19:37 +03:00
vitalyster
0e0f0ae5ea escape os.exec('"$vexec"') to support directories with spaces 2019-10-16 02:49:51 +03:00
Alexander Medvednikov
b1806b57d8 tests: no main fn 2019-10-13 17:50:55 +03:00
Delyan Angelov
53c64abdeb compiler: make compiler an ordinary vlib/compiler module
* Move compiler/ under vlib/compiler/ .

* Add a minimal compiler/main.v driver program.

* Cleanup compiler/main.v .

* Make most compiler tests pass again.

* Apply the fix by @joe-conigliaro , so that the rest of the compiler tests are fixed too.

* Thanks to @avitkauskas, now the vlib/vcompiler/tests/str_gen_test.v test does not need to be special cased anymore.

* Reapply @joe-conigliaro fix for vgen.
2019-10-13 16:37:43 +03:00