Alexander Medvednikov
bcde155da7
test the recent type alias string; print vweb templates in verbose mode
2019-12-16 19:34:04 +03:00
BigBlack
8c0e0f8ab7
parser: fix type alias type check
2019-12-16 19:06:40 +03:00
Delyan Angelov
b7c477cc18
freestanding: ptr_str, string concat, struct declaration
...
* compiler: extract c_common_macros from c_headers, and use it in bare_c_headers too. Support for ptr_str and string concatenation in -freestanding mode.
* Add tests for structs and string concatenation in -freestanding mode .
* Move check_string_add_works to string/string.v .
2019-12-16 19:05:33 +03:00
lutherwenxu
dadf147382
flag: implement *_opt() and *_multi()
...
It's very often that someone will need to process values that were not
provided separately (eg. generating a complex default value like in V).
This commit allows the user to call the *_opt() functions instead of
forcing them to provide some magical default values.
* flag: Implement int_multi(), float_multi() and string_multi()
These 3 functions are useful when the application expects a flag to be
repeated more than once.
A sample would be:
v -cflags someflag -cflags secondflag
This feature exposes the raw array that the flag parser internally keeps
and allow the application to parse it however they want instead of
dropping everything except the first element.
* flag: Add documentation
Add comments describing what *_opt() and *_multi() do.
2019-12-16 19:03:38 +03:00
vitalyster
d1714c4a2a
cc.v: build thirdparty objfiles with msvc when no cc installed
2019-12-16 18:56:37 +03:00
Delyan Angelov
7e0a9fb83a
compiler: fix regression for -d option flag
2019-12-16 18:55:10 +03:00
João Victor Oliveira Couto
b30f989f44
builder_js: fix mutable error
2019-12-16 18:54:44 +03:00
Kaito Sugimoto
9dd86a2de6
math: fix abs (-0.0)
2019-12-15 19:37:17 +03:00
Delyan Angelov
faa04c586f
compiler: restore ability to pass -prod option to run and runrepl. ( #3095 )
2019-12-15 21:21:37 +11:00
joe-conigliaro
f2c40bf49d
compiler: fix for -Wl -Wa -Wp dont like spaces ( #3091 )
2019-12-15 16:24:12 +11:00
joe-conigliaro
717740cfcf
simplify cflag parsing
2019-12-15 06:18:14 +03:00
joe-conigliaro
be60193588
workaround for -g with default optional value
2019-12-15 06:11:02 +03:00
Alexander Medvednikov
54b0097cee
fix repl_test.v
2019-12-15 05:51:00 +03:00
Alexander Medvednikov
68357876ca
fix v_command()
2019-12-15 05:44:34 +03:00
Alexander Medvednikov
12ebed0589
error on an incorrect V command
2019-12-15 05:35:17 +03:00
Alexander Medvednikov
48ea136a9a
tutorials: vweb: add an article
2019-12-15 00:56:08 +03:00
BigBlack
fc33f9d49c
type alias check
2019-12-14 22:01:20 +03:00
Alexander Medvednikov
2e23592264
for: check for redefinitions
2019-12-14 20:00:03 +03:00
Alexander Medvednikov
45695543ba
tutorial: minor fixes
2019-12-14 18:59:02 +03:00
Delyan Angelov
1cd5fab21d
testing: support for internal module testing
2019-12-14 15:57:28 +03:00
joe-conigliaro
cb9e9286ef
compiler: fixes issue #3074 - can't call a generic function twice with the same data type
2019-12-14 17:54:34 +11:00
prime31
75c01dec30
cleanup SDL event system
2019-12-14 03:31:07 +03:00
Alexander Medvednikov
8581c11900
update malloc
2019-12-14 02:46:55 +03:00
Alexander Medvednikov
962109e855
parser: verify async functions
2019-12-14 02:33:19 +03:00
Alexander Medvednikov
ef562413cd
-prealloc
2019-12-14 02:28:15 +03:00
Alexander Medvednikov
88cde6e4e6
orm: skip fields
2019-12-14 02:07:06 +03:00
Alexander Medvednikov
797d4364e7
vweb: fix reading request's body/headers
2019-12-13 23:46:11 +03:00
Alexander Medvednikov
fb3da327d6
vweb: fix a cookie bug
2019-12-13 21:11:40 +03:00
Alexander Medvednikov
83b8d642b4
fix csv/writer.v
2019-12-13 20:45:48 +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
Alexander Medvednikov
78131e78bc
fix sruct access modifiers (pub, pub mut, mut)
2019-12-13 20:00:38 +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
Robert Cristof
ec36755407
mysql: add mysql.escape_string()
2019-12-13 19:12:42 +03:00
Alexander Medvednikov
569a64068a
ui/examples: users: fix button click
2019-12-12 23:42:51 +03:00
Alexander Medvednikov
cddfbf7395
parser: allow public types `pub type Foo Bar`
2019-12-12 22:57:47 +03:00
Alexander Medvednikov
b8f728590b
string: last_index ?int
2019-12-12 21:54:48 +03:00
penguindark
8e1c27d129
utf8: punctuation
2019-12-12 21:08:44 +03:00
Alexander Medvednikov
0eeb607ffd
fix fopen definition
2019-12-12 21:03:08 +03:00
Alexander Medvednikov
bd833deef3
assoc: verify the field exists and verify the type
2019-12-12 20:38:49 +03:00
Alexander Medvednikov
6982f4a5a2
parser: force {} blocks on new lines
2019-12-12 20:27:05 +03:00
Alexander Medvednikov
02c29624d8
freetype: minor fixes
2019-12-12 14:44:29 +03:00
Alexander Medvednikov
8ba29f968a
cc.v: hide "mingw" not found message
2019-12-12 14:27:47 +03:00
Alexander Medvednikov
88ec9c235d
sort structs: handle fixed size arrays
2019-12-12 14:21:22 +03:00
Alexander Medvednikov
576618d8cc
string cloning; fix `foo.str += 's'`
2019-12-12 05:20:52 +03:00
Alexander Medvednikov
e182274fe7
free memory block
2019-12-11 23:58:51 +03:00
Alexander Medvednikov
ad250523cd
fix parser.fileis()
2019-12-11 21:42:22 +03:00
Alexander Medvednikov
6ffed854cc
cgen.prepend_to_statement()
2019-12-11 20:51:58 +03:00
Alexander Medvednikov
47f9c02331
Revert "cgen.prepend_to_statement()"
...
This reverts commit 507c71ad80
.
2019-12-11 20:37:39 +03:00
Alexander Medvednikov
507c71ad80
cgen.prepend_to_statement()
2019-12-11 19:33:54 +03:00
taojy123
28f76f10db
vweb: fix empty post request blocking
2019-12-11 19:20:46 +03:00
Alexander Medvednikov
7dcd47369b
option to pre-allocate a memory block
2019-12-11 18:41:25 +03:00
Delyan Angelov
13769f440f
vweb: continue after bad http client connection; performance fixes
...
* Enable compiling vweb with -prod (by supressing 'declared and not used' warning about 'reset') .
* Fix http responses (now wrk is happy and shows no errors) by adding a Content-Length header.
* Fix -g compilation for urllib.v .
* vweb: println action= only in debug mode.
* vweb: max request headers counting fix.
* Make vweb.html get a 'ctx mut Context' param, just like the other methods.
* vweb: simplify add_header.
* Use a string builder for the most common html case so that the response http text can be send in one go.
* vweb: reduce _STR/string interpolation usage in the most common html response case.
* vweb: refactor common http response formatting into Context.send_response_to_client/2 method.
2019-12-11 17:32:54 +03:00
Alexander Medvednikov
cfeec92826
use -Wunused-function for now
2019-12-11 15:51:12 +03:00
joe-conigliaro
3486118ab7
compiler: force custom struct .str() methods to be defined public
2019-12-11 03:24:26 +03:00
Alexander Medvednikov
f286387647
vweb: secure HttpOnly cookies
2019-12-11 03:20:30 +03:00
Alexander Medvednikov
cdfbb2978d
strings: replace_each([]); orm: update
2019-12-10 23:57:49 +03:00
joe-conigliaro
4e69c40e12
parser: fix use blank ident as value
2019-12-10 21:35:59 +03:00
Alexander Medvednikov
9726e18c0a
string: optimize replace()
2019-12-10 18:50:21 +03:00
joe-conigliaro
6d5e9f88f8
parser: allow enums to be used as bitfield flags
2019-12-10 06:16:47 +03:00
Alexander Medvednikov
0650d58818
vweb: readme: list some features of vweb
2019-12-10 00:16:39 +03:00
Alexander Medvednikov
51051cdf92
vweb: enable @ logic in the header + fix the example
2019-12-09 23:34:38 +03:00
Alexander Medvednikov
6f49d4c1d2
orm: bool support; vweb fixes
2019-12-09 23:20:29 +03:00
Delyan Angelov
32b0225079
remove os/time references from live programs, fix warnings
2019-12-09 18:53:17 +03:00
Alexander Medvednikov
8082a5e7f4
fix benchmarking stats
2019-12-09 17:25:56 +03:00
Alexander Medvednikov
75280bb54c
fix int.str() memory bug
2019-12-09 16:41:13 +03:00
Delyan Angelov
f68d9d1a16
live: always add os and time when compiling -live programs
...
Fixes fail when -live user programs do not use os and time.
2019-12-09 13:48:41 +03:00
sha0coder
7ffa315566
vlib/http: ssl handshake fix
2019-12-09 13:31:24 +03:00
Delyan Angelov
ed5c9a20e5
update brew instructions for sdl dependencies
2019-12-09 03:18:08 +03:00
Alexander Medvednikov
b2207c3d28
do not prepend module to external fn name
2019-12-09 00:24:50 +03:00
Alexander Medvednikov
4ebf53c6e9
allow non snake_case fn names in imported fns
2019-12-08 23:56:31 +03:00
prime31
faedebbb4e
sdl: separate sdl module into multiple, dependent submodules
2019-12-08 23:30:38 +03:00
penguindark
9730164613
atoi: fix leading zeros in string to int conversion
2019-12-08 23:22:33 +03:00
Alexander Medvednikov
8f9b6ac248
'$foo()' string interpolation
2019-12-08 23:18:11 +03:00
Alexander Medvednikov
874ff42687
temporary fix of "v -g v.v"
2019-12-08 20:58:16 +03:00
Delyan Angelov
1bb38a38bb
tooling: add tools/oldv , for use with 'git bisect', or for testing with older V
2019-12-08 20:21:17 +03:00
Alexander Medvednikov
4d1f721558
fix "" string interpolation bug
2019-12-08 20:06:00 +03:00
Alexander Medvednikov
d58982a6f6
vweb: fix tests
2019-12-08 18:07:04 +03:00
Alexander Medvednikov
1c6f7180b2
vweb: fix form parsing
2019-12-08 17:37:23 +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
cc682eafe1
require ++ instead of += 1
2019-12-08 14:11:25 +03:00
Nicolas Sauzede
8bc94947e5
tvintris: fix else cases
2019-12-08 13:45:29 +03:00
bogen85
8178e1f7da
freestanding: malloc/free with mm_alloc an mm_free
...
Added more array support that depends on malloc. Added string clone (that uses malloc). Added test for it. Eliminated stack allocated buffers from most of the unit checks.
2019-12-08 13:44:52 +03:00
Alexander Medvednikov
6ec626c5e9
improve invalid character errorrs
2019-12-08 12:57:40 +03:00
Alexander Medvednikov
8b0de95c0a
improve the C struct check
2019-12-08 04:23:22 +03:00
Alexander Medvednikov
6ae51b2cbf
handle unknown C types
2019-12-08 04:10:56 +03:00
Alexander Medvednikov
7adda3b71a
vweb: fix get_cookie()
2019-12-08 01:48:49 +03:00
Alexander Medvednikov
b1174428a5
vweb: fix redirect()
2019-12-08 01:05:57 +03:00
Alexander Medvednikov
30fc29fa6d
fix csv test
2019-12-08 01:03:35 +03:00
Alexander Medvednikov
7069cd6ab5
a separate scope for x := opt, part 2
2019-12-08 00:45:42 +03:00
Alexander Medvednikov
b26a0bde38
a separate scope for x := opt, part 1
2019-12-08 00:34:04 +03:00
Alexander Medvednikov
06a0f39f7b
a separate scope for
2019-12-08 00:30:06 +03:00
Alexander Medvednikov
dc2da1de98
fix V build
2019-12-08 00:27:24 +03:00
Alexander Medvednikov
8ebc2fe601
do not allow redefinition in `x := opt() {`
2019-12-07 23:09:48 +03:00
Alexander Medvednikov
b79588dc69
handle bad value in `if x := opt() {`
2019-12-07 23:05:54 +03:00
Alexander Medvednikov
49f960aea5
fix some windows cast warnings
2019-12-07 22:42:20 +03:00
Alexander Medvednikov
c019dd6f98
test assert in functions that return values
2019-12-07 22:42:20 +03:00
bogen85
751ba48bf5
freestanding improvements (exit, function checks)
...
Fixed exit for freestanding (as assert now uses it).
Running each function check now in a forked process so they can be killed or return other exit codes (and so each function runs, even if others crash)
2019-12-07 22:25:19 +03:00
Alexander Medvednikov
d73586743b
fix assert in functions that return values
2019-12-07 19:33:59 +03:00
Alexander Medvednikov
b9a24e3b51
Revert "use stdint.h with msvc"
...
This reverts commit 93529031de
.
2019-12-07 19:25:17 +03:00
Alexander Medvednikov
93529031de
use stdint.h with msvc
2019-12-07 19:20:53 +03:00
Alexander Medvednikov
63ec3c0486
fix a wrong "0 character in a string literal" error
2019-12-07 18:19:48 +03:00
Alexander Medvednikov
7b0e378947
fix clipboard_linux.v
2019-12-07 18:16:19 +03:00
Alexander Medvednikov
e1ad1794e3
fix readline_linux.v
2019-12-07 17:46:01 +03:00
Alexander Medvednikov
9cba3bdf78
windows: WideCharToMultiByte() returns an int
2019-12-07 17:31:07 +03:00
Alexander Medvednikov
ad6adf327e
vlib: fix missing `else{}` in match statements
2019-12-07 17:23:37 +03:00
Alexander Medvednikov
2fb7fba856
require `else` in `match` statements
2019-12-07 17:01:44 +03:00
Alexander Medvednikov
a594e009f2
test high order function
2019-12-07 16:13:25 +03:00
Alexander Medvednikov
f51784ee01
remove unnecessary casts everywhere
2019-12-07 15:51:00 +03:00
Alexander Medvednikov
d7ccbba2c9
do not allow casting a type to itself
2019-12-07 15:31:56 +03:00
Alexander Medvednikov
a854d396ff
clipboard: fix mutability on macOS and Windows
2019-12-07 15:22:28 +03:00
Alexander Medvednikov
c2814c1ada
vlib: fix remaining mutability errors
2019-12-07 15:13:23 +03:00
Alexander Medvednikov
329485d4b6
vweb: fix headers and cookies
2019-12-07 15:04:05 +03:00
Alexander Medvednikov
cc834dd7a7
parser: `x in []` is always false
2019-12-07 03:05:19 +03:00
João Victor Oliveira Couto
5a8c07dcf5
strings: builder: write_b()
2019-12-06 23:02:09 +03:00
Alexander Medvednikov
55f32fc413
more mutability fixes
2019-12-06 19:23:24 +03:00
Alexander Medvednikov
e3b5d7fd7c
rename if_st to if_statement
2019-12-06 19:21:26 +03:00
Alexander Medvednikov
bf1b751f47
cli: update mutability
2019-12-06 19:12:01 +03:00
Alexander Medvednikov
c8d111924d
check unused and unmodified vars in all modules, not just main
2019-12-06 18:43:56 +03:00
Delyan Angelov
353805e170
os: test is_link()
2019-12-06 12:09:35 +03:00
Alexander Medvednikov
aed22a57e3
fixed size array with const length (`[N]int`)
2019-12-06 02:41:03 +03:00
Alexander Medvednikov
be323e2fb6
ci: set up pg database to test ORM
2019-12-06 02:11:39 +03:00
Alexander Medvednikov
71c0c4803f
ORM fixes
2019-12-06 02:00:37 +03:00
Alexander Medvednikov
79b26b1654
use get_type2 in struct.v
2019-12-05 19:02:33 +03:00
Alexander Medvednikov
cca650c655
better `foo must return (int, int)` error
2019-12-05 18:55:27 +03:00
Alexander Medvednikov
cb46bf314e
get_type.v
2019-12-05 18:48:39 +03:00
BilligsterUser
0a38b307cd
os_test: use rmdir() to del dirs
2019-12-05 17:08:55 +03:00
Delyan Angelov
98374ea6fe
CI: fix msvc (temporary work around dialogs poping up)
2019-12-05 17:08:18 +03:00
Alexander Medvednikov
4888d27b71
fix v -live on macOS
2019-12-05 14:40:14 +03:00
Alexander Medvednikov
2a1b0a8cae
rename table.register_type2()
2019-12-05 14:24:25 +03:00
Nicolas Sauzede
2e30e1453d
sdl: fix old vsdl2 references
2019-12-05 12:58:48 +03:00
Alexander Medvednikov
90e3ab8c1e
debugging v -live message.v
2019-12-05 12:48:23 +03:00
Nicolas Sauzede
9d854c5df0
vlib: sdl module + tVintris example
2019-12-05 11:25:55 +03:00
Alexander Medvednikov
6dd1270539
builtin: remove an unnecessary malloc() call
2019-12-05 11:08:41 +03:00
Alexander Medvednikov
867f952d6b
for: ranging through fixed size arrays
2019-12-05 02:17:17 +03:00
Alexander Medvednikov
fb546f376e
set max module depth to 5
2019-12-05 01:27:04 +03:00
Alexander Medvednikov
e707ac4f28
test v -live message.v
2019-12-05 00:17:38 +03:00
Alexander Medvednikov
2144c162c4
os: is_link()
2019-12-04 23:53:11 +03:00
Alexander Medvednikov
a57e29dfc5
os: replace dir_exists with is_dir; file_exists() => exists()
2019-12-04 23:17:45 +03:00
Alexander Medvednikov
fb237b9e53
parser: check types in `a in b` expressions
2019-12-04 22:17:24 +03:00
Alexander Medvednikov
d9248e8d52
parser: fix a wrong index in an error
2019-12-04 13:36:35 +03:00
Delyan Angelov
9a6711fa1b
compiler: c'str' now has type charptr
2019-12-04 13:34:06 +03:00
Alexander Medvednikov
40df0644ca
fix all Foo{!}
2019-12-04 13:08:28 +03:00
Alexander Medvednikov
e32cbfcca7
error on C.Foo{!}
2019-12-04 12:56:59 +03:00
Alexander Medvednikov
b2b34e18e4
use the new &C.Foo(0) cast
2019-12-04 12:19:32 +03:00
Alexander Medvednikov
2bafd41183
`&C.Foo(0)` cast to replace `&C.Foo{!}` hack
2019-12-04 12:13:17 +03:00
bogen85
a9aaa13a09
freestanding: sys_getuid, sys_waitid; minimal fork check; remove bare.S
2019-12-04 11:46:09 +03:00
Alexander Medvednikov
47f5e1178f
-output-cross-platform-c for creating a single x-platform C file
2019-12-04 02:02:52 +03:00
Delyan Angelov
eb20dd39b1
freestanding: init consts
2019-12-04 01:40:26 +03:00
Alexander Medvednikov
c4a43633da
i8, i18, u16 str()
2019-12-03 21:14:17 +03:00
Alexander Medvednikov
66f271f100
fix a string interpolation bug
2019-12-03 20:41:49 +03:00
Alexander Medvednikov
f192429c8a
$if mac => $if macos
2019-12-03 16:29:37 +03:00
Alexander Medvednikov
ff80e3a5fa
i8 print test + $if mac => $if macos
2019-12-03 16:09:43 +03:00
Delyan Angelov
b907cf2179
sync/waitgroup: force sleeping for 1ms
...
fixes issues #2874 and #2961
2019-12-03 15:05:08 +03:00
Delyan Angelov
0a8d2d5dc7
compiler: guess cc kind for -prod builds, to know when to add -flto
2019-12-03 13:58:24 +03:00
Ulises Jeremias Cornejo Fandos
b31ec4ca9a
math: add factorial function (via factorial table)
2019-12-03 11:34:26 +03:00
Enrico Lefass
6d28a80bf8
haiku support (part 2)
2019-12-03 11:26:47 +03:00
Don Alfons Nisnoni
f806e0f9e5
mysql: add error handling
2019-12-03 11:18:20 +03:00
Don Alfons Nisnoni
33793a869f
mysql: make the struct public & update some code
2019-12-02 17:26:58 +03:00
Alexander Medvednikov
c0bb88dfb0
allow # in webview module
2019-12-02 12:31:49 +03:00
Alexander Medvednikov
753e926356
debug v symlink error
2019-12-02 12:16:55 +03:00
Don Alfons Nisnoni
254afcb2d0
*C.char => charptr
2019-12-02 11:37:35 +03:00
penguindark
322733d59a
encoding.utf8 fixes
2019-12-01 20:41:29 +03:00
radare
5ff387bbe4
strings: split_nth and add tests
2019-12-01 16:10:13 +03:00
Delyan Angelov
ec15bfb7d1
v test v => v test-compiler
2019-12-01 12:50:13 +03:00
bogen85
854309a7d8
freestanding: add array support (stack only for now)
2019-12-01 11:27:36 +03:00
Alexander Medvednikov
3fea8f3de5
*char => charptr everywhere
2019-12-01 10:33:26 +03:00
Alexander Medvednikov
698c3823ee
charptr fix
2019-12-01 10:11:29 +03:00
Alexander Medvednikov
0999273d32
CReserved => c_reserved; charptr
2019-12-01 09:56:53 +03:00
Alexander Medvednikov
a23a4ed98a
update all index() uses
2019-11-30 15:27:16 +03:00
Alexander Medvednikov
2651b8957a
parser: fix unreachable code error in if a := opt()
2019-11-30 15:17:27 +03:00
Alexander Medvednikov
81d4f66fbb
string: make `index()` return `?int` instead of `int`/-1
2019-11-30 13:21:21 +03:00
Alexander Medvednikov
cc2bd0bb68
string: make substr private
2019-11-30 12:50:57 +03:00
Alexander Medvednikov
1a0b78ae2f
fix the cli module
2019-11-30 12:44:50 +03:00
Alexander Medvednikov
7e4799334f
array: make left/right/slice private
2019-11-30 12:37:34 +03:00
Alexander Medvednikov
b38283dcf1
string: make left/right private
2019-11-30 12:06:17 +03:00
prime31
ff216e7d50
append module name for module search path
2019-11-30 11:17:37 +03:00
Alexander Medvednikov
68b4dab582
parser: another infinite loop fix
2019-11-30 10:37:28 +03:00
Alexander Medvednikov
c00a7f3a5e
parser: fix infnite loop with `fn foo(&) {}`
2019-11-30 10:21:58 +03:00
Alexander Medvednikov
d71532b64e
optimize `for c in str {`
2019-11-30 09:41:35 +03:00
Delyan Angelov
c7f8f2175b
move vlib/builtin/utf8_util.v to vlib/encoding/utf8/utf8_util.v
2019-11-30 08:52:37 +03:00
Emily Hudson
661ddf3d1e
compiler: realpath before trying to basefilename
2019-11-30 08:01:31 +03:00
Alexander Medvednikov
850788c4bb
parser: fix a bug with & and ==
2019-11-29 23:18:10 +03:00
Alexander Medvednikov
4c11eb5ddc
-bare => -freestanding
2019-11-29 22:49:05 +03:00
Alexander Medvednikov
f724a956b3
parser: fix `a & b == c` precedence
2019-11-29 22:42:32 +03:00
Alexander Medvednikov
881584d04c
V 0.1.23
2019-11-29 20:00:33 +03:00
Alexander Medvednikov
1bfcdaa2cc
ci: test the new prebuilt packages
2019-11-29 19:14:26 +03:00
Alexander Medvednikov
71378b8041
parser: better syntax error for unexpected tokens
2019-11-29 17:06:49 +03:00
joe-conigliaro
11aaee685a
generics: fix errors & simplify
2019-11-29 16:46:43 +03:00
penguindark
82d4a731f3
utf8 functions (to_lower etc)
2019-11-29 16:25:25 +03:00
Alexander Medvednikov
431568faad
x64: fix off by one error in for loops
2019-11-29 12:33:36 +03:00
Alexander Medvednikov
9e19472c33
show an info message if a C compiler is not installed
2019-11-29 12:12:06 +03:00
bogen85
e31d892598
make _V_mret_ unique by putting p.token_idx in it
2019-11-29 11:11:53 +03:00
bogen85
729f9c3391
bare: add mm_alloc, mm_free
...
also split errno from return value in existing Linux syscall wrappers
update applicable syscall wrapper checks
2019-11-29 10:14:17 +03:00
Alexander Medvednikov
52d25336db
x64: function calls; http: download_file()
2019-11-28 13:24:02 +03:00
prime31
208f67132d
added -user_mod_path command line option to add a module search path
2019-11-28 13:04:57 +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
f6ec1b29f9
strconv: make string.int() stop parsing on invalid digit
2019-11-28 09:46:10 +03:00
bogen85
9374168b26
compiler: allow function expecting a void* to receive a byteptr
2019-11-28 09:44:43 +03:00
bogen85
e63300e286
temporary fix for issue #2897
2019-11-27 19:55:32 +03:00
sh0f
dbaa37ea46
urllib: fix string length in escape()
2019-11-27 12:15:05 +03:00
れもん
584786d87c
parser: fix `in` expression
2019-11-27 08:48:04 +03:00
Alexander Medvednikov
a3b14e00a2
vweb fixes
2019-11-26 16:08:16 +03:00
Alexander Medvednikov
cb8a19efaf
vweb: bring back html() test
2019-11-26 09:34:09 +03:00
joe-conigliaro
3107618732
vweb: remove no longer needed special case & fix tmpl
2019-11-26 09:23:11 +03:00
ʇʞʌp
6349bd33d3
compiler: Allow `or` usage when assigning to struct fields. ( #2893 )
2019-11-26 09:07:35 +03:00
ʇʞʌp
79a02a4c09
parser: make `p.opt()?` work for methods
2019-11-26 09:04:59 +03:00
joe-conigliaro
385c045e5a
don't add generic parsers to v.files
2019-11-26 09:04:11 +03:00
Alexander Medvednikov
8d241cc164
vweb fixes; ORM fixes; freeing strings
2019-11-26 07:47:16 +03:00
Ned Palacios
bac3c0a63e
compiler: add "modules/ " folder for searching local modules
2019-11-26 06:45:26 +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
joe-conigliaro
92f920b2b8
make errors from code parsed with statements_from_text show correctly
2019-11-25 22:22:40 +03:00
joe-conigliaro
edd4706480
compiler: parser fixes for vweb
2019-11-25 15:29:55 +03:00
M
837af9b230
freebsd: backtrace
2019-11-25 13:54:56 +03:00
Delyan Angelov
30042ab54b
cfns: fix some declarations
2019-11-25 13:54:07 +03:00
joe-conigliaro
7158a012c3
compiler: update to get vweb working
2019-11-25 13:48:25 +03:00
joe-conigliaro
475807566d
fix get_last_nl_from_pos when error is last token ( #2882 )
2019-11-25 20:58:22 +11:00
Delyan Angelov
f7c103d5d2
compiler: remove legacy current workdir from module search
2019-11-25 11:32:11 +03:00
_leif
ee52b4166f
log: enum for logger level
2019-11-25 07:50:59 +03:00
Alexander Medvednikov
9bfea5e60b
pg: define all C functions
2019-11-25 06:55:29 +03:00
Alexander Medvednikov
feacc2441f
socket: fix sizeof
2019-11-25 06:23:09 +03:00
Alexander Medvednikov
a4ab7b14c1
wrap up struct default vals + tests
2019-11-25 05:59:58 +03:00
Unknown User
268a6dc6d9
add missing cfns
2019-11-25 04:35:41 +03:00
Delyan Angelov
5794594e19
compiler: fix vpath module search order regression
2019-11-24 19:39:30 +03:00
Enrico Lefass
f496c1b27b
haiku: adding support to v #1
2019-11-24 19:39:04 +03:00
Alexander Medvednikov
19b4cf66ac
Windows should work now
2019-11-24 15:31:51 +03:00
Alexander Medvednikov
748e8b7ce4
more Windows definitions
2019-11-24 15:29:11 +03:00
Alexander Medvednikov
b44cbc9b13
define RegQueryValueEx on Windows
2019-11-24 15:21:49 +03:00
Alexander Medvednikov
558024696c
lots of C Windows function definitions
2019-11-24 15:16:19 +03:00
Abdullah Atta
d4ae39348f
eventbus: make it usable and add README
2019-11-24 14:27:50 +03:00
Alexander Medvednikov
a74f4a661d
fix C.GetStdHandle() on Windows
2019-11-24 14:07:14 +03:00
Alexander Medvednikov
24b40be548
default struct vals
2019-11-24 13:53:59 +03:00
Alexander Medvednikov
7cc21be7de
clipboard: make compile on Linux
2019-11-24 13:22:57 +03:00
Alexander Medvednikov
81c17e55a6
more C fn definitions
2019-11-24 13:16:11 +03:00
Alexander Medvednikov
f4fe90ea6d
C fn definitions on Linux
2019-11-22 19:00:56 +03:00
Alexander Medvednikov
e9e931fe4a
force C function definitions
2019-11-24 12:14:22 +03:00
Alexander Medvednikov
1f93bb5a9a
os: windows fixes
2019-11-23 21:40:32 +03:00
Alexander Medvednikov
cfd4f0c69c
os: fix fullpath call on windows
2019-11-23 21:05:49 +03:00
Alexander Medvednikov
ccb261f00d
os: fix unreachable code
2019-11-23 21:00:20 +03:00
Alexander Medvednikov
0aa2196eec
os: fix realpath on windows
2019-11-23 20:56:22 +03:00
Alexander Medvednikov
1bd8c465d3
do not allow casting bool to int
2019-11-23 20:40:59 +03:00
Don Alfons Nisnoni
3a6ccf7f31
os: mkdir() error handling
2019-11-23 19:55:18 +03:00
Alexander Medvednikov
0fb0c43c0a
pg: minor fixes
2019-11-23 19:48:00 +03:00
Dwight Schauer
e724792a67
freestanding: add core linux syscalls and associated tests
2019-11-23 19:35:57 +03:00
joe-conigliaro
666509623e
compiler: use token.pos instead of token.col, calculate col when needed
2019-11-23 19:31:28 +03:00
Delyan Angelov
f42be0622e
examples/game_of_life: add a GUI frontend; compiler: local modules relative to a main module
2019-11-23 16:33:25 +03:00
れもん
3d235169c8
parser: fix if expression
2019-11-23 14:25:57 +03:00
Abdullah Atta
0382331499
vlib: add eventbus module
2019-11-23 14:24:25 +03:00
Delyan Angelov
9b4bc0189b
backtraces: cleaner looking backtrace output on linux
2019-11-23 14:22:55 +03:00
joe-conigliaro
9c1107f723
compiler: generics fix byteptr support
2019-11-23 10:06:14 +03:00
Alexander Medvednikov
57fbf0b8a9
map: fix `in` for deleted keys
2019-11-22 20:05:43 +03:00
Alexander Medvednikov
94318b1287
x64: use correct exe name and set +x
2019-11-22 19:09:14 +03:00
joe-conigliaro
c11025f01f
compiler: clean up & optimize generics. add comments & support all param types ( #2845 )
2019-11-23 00:09:53 +11:00
Alexander Medvednikov
9712213f50
x64 machine code generation (ELF)
2019-11-22 14:33:22 +03:00
joe-conigliaro
ab91733a28
small optimization with generics and use os.is_dir in vweb again
2019-11-22 10:55:20 +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
Unknown User
7c802f31d3
parser: fix unused variable warning
2019-11-22 05:23:01 +03:00
Delyan Angelov
d569f23e1c
compiler: fix undeclared errors with [][]u16,u32,u64
2019-11-22 05:22:18 +03:00
gabixdev
76cd70c232
compiler: add -vpath and -vlib_path options
2019-11-21 15:06:19 +03:00
Tim Basel
597a6fead2
vlib: cli module
2019-11-21 15:03:12 +03:00
pfefferminz132
dcea76ff41
fix "v symlink" with relative paths
2019-11-21 04:34:08 +03:00
Alexander Medvednikov
8e32ef382a
fix `v symlink`
2019-11-20 18:27:46 +03:00
Alexander Medvednikov
3e564a2506
parser: fix register() bug in interfaces
2019-11-20 18:19:13 +03:00
Alexander Medvednikov
759644ab36
examples: empty gg/freetype project
2019-11-20 07:26:52 +03:00
ʇʞʌp
26fb7e0821
compiler: emit Option_ typedef for fn args and struct fields
2019-11-20 00:58:31 +03:00
kevin70g
5536eb581c
time: C.timeval struct member definitions fix
2019-11-19 18:28:29 +03:00
cloudsong
787f49b7a0
interface: enable calling interface with multi-args
2019-11-19 18:27:32 +03:00
joe-conigliaro
4bbed4f910
parser: fix default optional value
2019-11-19 17:47:49 +03:00
Alexander Medvednikov
ddcff7e9c5
rand/pcg32: make the struct public
2019-11-19 14:26:18 +03:00
Delyan Angelov
a620e66af5
compiler: add os.mv_by_cp and use it for the temporary files
2019-11-19 12:55:02 +03:00
Alexander Medvednikov
0cf232d692
parser: a better [] error message
2019-11-19 11:13:19 +03:00
PoLLeN
fe81ccab20
asm.v: fix a small typo
2019-11-19 09:43:02 +03:00
Silvan Büdenbender
94b36250a1
bitfield: fix bit order
2019-11-19 03:32:44 +03:00
Alexander Medvednikov
20d6492775
os: make read_lines() return ?[]string
2019-11-19 02:25:55 +03:00
Alexander Medvednikov
52e3586be3
os: use mkdir() on Linux for now
2019-11-19 00:33:43 +03:00
Alexander Medvednikov
c98db8c437
array: fix sort() for ints
2019-11-19 00:27:35 +03:00
Delyan Angelov
c73f34cc5f
net: make net.socket.write, net.socket.read_line more robust
2019-11-19 00:13:14 +03:00
Alexander Medvednikov
1ccd1979a4
vfmt: line comments fixes
2019-11-18 15:12:35 +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
f7c7ffecb3
makefile: pre-build builtin modules
2019-11-18 03:51:14 +03:00
Alexander Medvednikov
e081791eaf
fix repl tests
2019-11-18 02:34:49 +03:00
Jiten Palaparthi
32fbc2bdf3
remove pub for a private function in array.v
2019-11-18 00:43:23 +03:00
Don Alfons Nisnoni
78c2f8cab3
http: add some docs
2019-11-18 00:42:25 +03:00
Alexander Medvednikov
4fb0b49806
parser: fix the no fn main error in script mode
2019-11-18 00:40:59 +03:00
Alexander Medvednikov
ffb72e855a
vhelp: compress option
2019-11-17 15:35:05 +03:00
joe-conigliaro
6d7fe1f83c
fix vtool used with paths w/spaces (win/nix)
2019-11-17 14:36:05 +03:00
Alexander Medvednikov
6ae8457f35
fix strings.Builder.str()
2019-11-17 07:05:13 +03:00
Delyan Angelov
be7cf3e812
compiler: support storing temporary files under TMPDIR/v/
...
Fix for filepath.join not \0 terminating its result
2019-11-17 06:45:20 +03:00
Abdullah Atta
200fcd41ce
vlib: add a clipboard module (Windows, macOS, X)
2019-11-17 05:40:03 +03:00
Alexander Medvednikov
2391c72e4b
tcc: 64 bit by default
2019-11-17 01:14:05 +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
Alexander Medvednikov
5a1de13e10
bare: fix str[idx]
2019-11-16 23:22:40 +03:00
Alexander Medvednikov
0c5854e371
add a c/raw string interpolation test
2019-11-16 22:17:01 +03:00
Swastik Baranwal
5d5268a53d
expression: add a check for raw strings
2019-11-16 22:15:22 +03:00
Alexander Medvednikov
8d1eb759f7
fix v -o foo.c build module foo
2019-11-16 21:49:58 +03:00
Michiel Vlootman
328ccebf06
readme: fix link to vweb example
2019-11-16 19:58:55 +03:00
Alexander Medvednikov
dc50ed69cf
bare: fix str[idx]
2019-11-16 11:33:04 +03:00
Alexander Medvednikov
a545ccb740
bare: stdint.h
2019-11-16 11:24:25 +03:00
Alexander Medvednikov
56fee6835a
http: remove confusing comments and dead code
2019-11-16 10:32:17 +03:00
Alexander Medvednikov
d1b8d34dd5
os_linux.v
2019-11-16 09:16:51 +03:00
Nicolas Sauzede
1dadf9d966
fix Windows warnings
2019-11-16 02:30:50 +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
96cde10696
C string literals (c'str'); bare builtin module; bare println()
2019-11-15 02:29:20 +03:00
Alexander Medvednikov
bd97dc0134
os: realpath potential fix
2019-11-15 01:07:38 +03:00
Alexander Medvednikov
a04c3bac83
CI: ubuntu-musl target
2019-11-15 00:46:40 +03:00
Alexander Medvednikov
9499275180
os: mkdir syscall on linux
2019-11-15 00:15:23 +03:00
Alexander Medvednikov
2dcb8b3bb0
bare: ArchLinux fix?
2019-11-14 22:18:22 +03:00
Alexander Medvednikov
a8b5c00939
parser: allow << >> with enums
2019-11-14 22:14:14 +03:00
Delyan Angelov
a329104dcb
compiler: remove dead code (a tcc bug fix)
2019-11-14 11:57:28 +03:00
Alexander Medvednikov
34c4565f7c
wrap up -bare
2019-11-14 11:11:52 +03:00
Alexander Medvednikov
6eaa2db533
fix V.js
2019-11-14 10:05:41 +03:00
Alexander Medvednikov
7d924679a6
[]: update all examples and tests
2019-11-14 10:00:22 +03:00
Alexander Medvednikov
96b530cf85
update []
2019-11-14 09:53:05 +03:00
Alexander Medvednikov
4a833d8151
parser: clean up all []
2019-11-14 09:21:20 +03:00
Alexander Medvednikov
5df5f97daf
parser: allow `arr = []` instead of `arr = []string`
2019-11-14 07:15:17 +03:00
Alexander Medvednikov
8d4ef822b6
1
2019-11-14 07:08:11 +03:00
Alexander Medvednikov
1d460c4d49
-bare option
2019-11-14 06:50:21 +03:00
Alexander Medvednikov
b1fa0d25f0
foo()? syntax
2019-11-14 06:15:45 +03:00
BigBlack
72249ce889
fix duplicate #define generation
2019-11-13 23:35:14 +03:00
Alexander Medvednikov
861f2d4bc0
parser: skip $if windows etc blocks on a different os
2019-11-13 21:14:37 +03:00
Alexander Medvednikov
3b929cdd03
update repls tests
2019-11-13 20:40:01 +03:00
Silvan Büdenbender
f30b0f1017
bitfield: add from_bytes() function
2019-11-13 19:48:00 +03:00
Alexander Medvednikov
ffa6bcfff5
vfmt: handle comments
2019-11-13 11:54:22 +03:00
Steven Gay
51663520c8
MSVC backtrace
2019-11-13 11:05:06 +03:00
Alexander Medvednikov
10b0432eca
parser: fix mutable map args
2019-11-12 22:35:53 +03:00
Don Alfons Nisnoni
d732be64f6
array: update docs
2019-11-12 19:26:04 +03:00
Delyan Angelov
3643dcbf4b
sqlite: use in-memory database in examples and tests
2019-11-12 19:25:30 +03:00
Delyan Angelov
32473eeafe
net and http: more consistent error messages
2019-11-12 19:23:53 +03:00
BigBlack
99169ae4ff
parser: ptr++,*(ptr+1)
2019-11-11 23:39:16 +03:00
Daren Liang
bd34524a1c
fractions: panic when reciprocal produces invalid fraction
2019-11-11 23:37:32 +03:00
Delyan Angelov
cc81e9adfa
v test v: cleanup more temporary files
2019-11-11 18:45:11 +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
e6775913aa
simplify vfmt
2019-11-11 17:04:47 +03:00
Alexander Medvednikov
d9b29bfb4e
fix a bug in strings.Builder and wrap up vfmt
2019-11-11 08:24:28 +03:00
Alexander Medvednikov
f2b1a8cb16
fix option_test.v
2019-11-11 07:09:07 +03:00
Alexander Medvednikov
8947717e3e
fix the build
2019-11-11 06:19:18 +03:00
Alexander Medvednikov
0ad0a61db2
remove unnecessary empty lines in cgen
2019-11-11 06:02:01 +03:00
Alexander Medvednikov
730ef96398
another tcc fix
2019-11-11 05:33:19 +03:00
Alexander Medvednikov
bf98eb55ee
remove a test until a tcc bug is fixed
2019-11-11 05:27:30 +03:00
Alexander Medvednikov
b3143bb559
parser: remove start_tmp() entirely
2019-11-11 05:22:38 +03:00
Daren Liang
91896af877
math: digits panic for invalid base
2019-11-11 05:21:47 +03:00
Alexander Medvednikov
887c94d9ba
parser: second batch of start_tmp()
2019-11-11 05:14:54 +03:00
Alexander Medvednikov
00b3557ce1
parser: start removing start_tmp()
2019-11-11 05:06:24 +03:00
Alexander Medvednikov
f30d0ce667
parser: fix a bug with complex ref fn args
2019-11-11 04:56:13 +03:00
Henrixounez
76c27c0b03
cli: create project helper
2019-11-11 00:48:56 +03:00
Alexander Medvednikov
3c4bb16ce9
disable dereferencing error for now
2019-11-10 20:32:11 +03:00
Alexander Medvednikov
aea5b2e3b6
make unsafe dereferncing warning an error
2019-11-10 20:14:57 +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
fdf6682254
require `unsafe` for dereferencing
2019-11-10 19:57:17 +03:00
Alexander Medvednikov
c7f3413d70
more vfmt fixes
2019-11-10 19:49:19 +03:00
Don Alfons Nisnoni
b9728c7af0
string: update split() method
2019-11-10 19:37:36 +03:00
Steven Gay
d1e7a54f3a
print_backtrace_skipping_top_frames: Implementation for MSVC
2019-11-10 19:34:53 +03:00
Henrixounez
f8ab629986
readline: fix cursor position with prompt including ansi escape sequences
2019-11-10 19:33:21 +03:00
Alexander Medvednikov
3d4f85069f
more vfmt fixes
2019-11-10 02:44:26 +03:00
kdmult
30481a36dc
fix broken doc on windows
...
* replace hardcoded slash with os.path_separator
* compile only, no link, if building a module
2019-11-09 23:49:15 +03:00
Daren Liang
e6c9c7d571
parser: check type for all integer only assignment operators
2019-11-09 21:57:36 +03:00
Alexander Medvednikov
b1d2c6c730
lots of vfmt fixes
2019-11-09 20:42:29 +03:00
ylluminate
aef02f61e1
V UI readme: Add web (JS/WASM) to platform list
2019-11-09 20:37:31 +03:00
Daren Liang
c607246218
parser: add xor type check
2019-11-09 20:36:56 +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
f33d8bd596
do not generate interface tables for unused interfaces
2019-11-09 18:13:51 +03:00
Alexander Medvednikov
32fec2c26c
fix interfaces on msvc
2019-11-08 23:28:32 +03:00
Alexander Medvednikov
cac719c078
[]interface
2019-11-08 22:08:02 +03:00
Alexander Medvednikov
6f95be60a1
cc.v: use msvc on Windows by default if gcc is not installed
2019-11-08 21:15:26 +03:00
Daren Liang
c4ff0d565b
parser: check mul and div operations on str variables
2019-11-08 20:26:08 +03:00
Delyan Angelov
bc826173cc
fix $if msvc conditional define
2019-11-08 16:00:55 +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
Daren Liang
f5438477df
parser: check mul and div operations on strings
2019-11-08 04:32:25 +03:00
Nicolas Sauzede
db4a7edf3a
fix threads to actually return a voidptr
2019-11-08 03:09:02 +03:00
Nicolas Sauzede
5a8c3daba3
os: fix stat mode signedness warning
2019-11-08 03:02:02 +03:00
Alexander Medvednikov
27f6b2dd73
table: fix float/integer cast bug
2019-11-08 02:04:00 +03:00
Alexander Medvednikov
f579376638
table: improve check_types()
2019-11-08 01:48:36 +03:00
Nicolas Sauzede
2f5de11c22
fix byteptr warning
2019-11-08 01:30:07 +03:00
Nicolas Sauzede
3a99217592
fix pthread 3rd arg voidptr warning
2019-11-08 00:58:49 +03:00
Delyan Angelov
a44ba0b8a2
bignum module wrapper for kokke/tiny-bignum-c
2019-11-07 22:04:18 +03:00
pfefferminz132
b9e7d02462
math: make ceil return an f64
2019-11-07 19:54:51 +03:00
lorenzo pirro
6bcd0fd9cc
optimize reserved type check
2019-11-07 18:45:38 +03:00
Alexander Medvednikov
6d98203572
fix "undefined" error
2019-11-07 17:57:54 +03:00
Daren Liang
df6bdf59e6
parser: fix mod assign type check
2019-11-07 17:49:40 +03:00
Alexander Medvednikov
fbd71e1539
expression.v
2019-11-07 17:48:48 +03:00
vitalyster
2d3944250f
tools: show C output when tool can not be compiled
2019-11-07 16:17:32 +03:00
vitalyster
86447c1301
windows: use CreateProcess for os.exec
2019-11-07 16:01:17 +03:00
lorenzo pirro
d57c0cfde0
parser: fix builtin as name not allowed
2019-11-07 06:00:48 +03:00
Nicolas Sauzede
c8de2c0bd4
fix i64 overflow warning
2019-11-07 06:00:00 +03:00
Alexander Medvednikov
c9d0bd7404
print true and false instead of 1 and 0
2019-11-07 00:07:50 +03:00
Alexander Medvednikov
fdd4afa392
for.v and match.v; do not allow arrays in `match`
2019-11-06 23:30:08 +03:00
lorenzo pirro
bd18f50c8a
os: cp_r fn to copy files recursively
2019-11-06 23:05:35 +03:00
vitalyster
8dbeab9a7b
make V work on Windows 7
2019-11-06 23:04:40 +03:00
Alexander Medvednikov
e266c8a750
urllib: test str()
2019-11-06 22:35:59 +03:00
Abdullah Atta
c4e9f09f0f
urllib: crash when converting URL to str
2019-11-06 22:34:33 +03:00
Alexander Medvednikov
7c70f3df93
parser: & and | type check
2019-11-06 21:20:37 +03:00
Alexander Medvednikov
0f0bef2d33
parser: more typing checks
2019-11-06 20:47:03 +03:00
Alexander Medvednikov
75510e2ea1
remove `last` test
2019-11-06 18:19:03 +03:00
Alexander Medvednikov
73134035a9
parser: remove `last`
2019-11-06 18:17:14 +03:00
Alexander Medvednikov
6a812f7293
mod operator tests
2019-11-06 18:04:48 +03:00
Alexander Medvednikov
6afd7d50a6
parser: fix mod type check
2019-11-06 17:52:35 +03:00
Alexander Medvednikov
ca259331e4
parser: fix % type check
2019-11-06 17:35:32 +03:00
Alexander Medvednikov
f6d06fcda2
update tests and examples after the mutability fix
2019-11-06 06:57:04 +03:00
Alexander Medvednikov
b720bb2e77
parser: mark var as changed only if the receiver is mutable
2019-11-06 06:48:57 +03:00
Alexander Medvednikov
8dd335295e
new enum step 2
2019-11-06 06:26:04 +03:00
Alexander Medvednikov
4d876d1980
new enum step 1
2019-11-06 06:16:12 +03:00
Alexander Medvednikov
855a736a2c
parser: C enums + another enum simplification
2019-11-06 05:14:34 +03:00
Daren Liang
91bb969ed1
stats: use c style for loop
2019-11-06 04:45:05 +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
Alexander Medvednikov
1b5f724df0
#include warning
2019-11-06 00:32:15 +03:00
Alexander Medvednikov
7fc7c05e9d
parser: do not all string casts
2019-11-05 20:41:02 +03:00
Alexander Medvednikov
b91a537c35
it's better to do this locally and update v.c manually
2019-11-05 20:27:53 +03:00
Alexander Medvednikov
1687afba9f
remove locale.h and unistd.h
2019-11-05 20:05:25 +03:00
Alexander Medvednikov
b929543782
remove string.h
2019-11-05 20:00:00 +03:00
Alexander Medvednikov
62f54d9d65
remove signal.h
2019-11-05 19:57:53 +03:00
Alexander Medvednikov
dc1ca31071
enable temporary fns.h with C defs
2019-11-05 19:34:56 +03:00
vitalyster
eb069833a8
compiler: detect Cygwin and show error message
2019-11-05 19:33:24 +03:00
Alexander Medvednikov
c5d868c928
start the C header removal process
2019-11-05 19:24:00 +03:00
Alexander Medvednikov
5306c14d78
parser: nothing can be cast to bool
2019-11-05 18:58:42 +03:00
Alexander Medvednikov
07e3699700
parser: do not allow number => bool casts
2019-11-05 18:56:19 +03:00
Alexander Medvednikov
883041fbcc
os: replace FILE with voidptr to remove stdlib.h dep
2019-11-05 18:42:10 +03:00
vitalyster
67f68df8a8
compiler: display error when MinGW configuration is outdated
2019-11-05 18:39:44 +03:00
Alexander Medvednikov
b2f8944b1f
fix V.js
2019-11-05 18:18:10 +03:00
Alexander Medvednikov
425c9ce401
a special `last` variable in for loops (experimental)
2019-11-05 17:17:55 +03:00
aliczin
53981c8747
compiler: supress windows (MSVC) warnings
2019-11-05 14:09:33 +03:00
Alexander Medvednikov
f60d44eda9
--enable-globals
2019-11-05 02:43:52 +03:00
Alexander Medvednikov
f8d14a216b
parser: print backtrace only in debug mode
2019-11-05 02:30:51 +03:00
Alexander Medvednikov
0a6840b6a6
improve a minor info message
2019-11-05 01:32:21 +03:00
Alexander Medvednikov
ee4db9f96d
parser: $if clang, $if msvc, $if mingw
2019-11-04 20:14:34 +03:00
joe-conigliaro
b8b72580a7
compiler: typo detection - fix error & slightly optimize function
2019-11-04 14:35:28 +03:00
joe-conigliaro
5d16f30a3d
parser: add error when trying to assign from a function that does not return a value
2019-11-04 14:35:10 +03:00
Henrixounez
b5d457b5ce
readline: catch siguser signal to reset tty
2019-11-04 05:05:12 +03:00
joe-conigliaro
5f1e634d82
compiler: improve typo detection, support all types and fn definitions
2019-11-04 04:59:28 +03:00
joe-conigliaro
a6a233df6b
compiler: remove unneeded blank ident assignment ( #2634 )
2019-11-04 10:59:18 +11:00
Daren Liang
e3d8ab5849
os: do not allow || and \n in system/exec
2019-11-04 02:41:15 +03:00
joe-conigliaro
df5faf35e5
compiler: optionals default value
2019-11-04 02:38:49 +03:00
Alexander Medvednikov
4e64a58ac1
scanner: fix string interpolation in raw strings
2019-11-03 23:57:26 +03:00
Alexander Medvednikov
3449a8bc4d
os: do not allow ; and && in system/exec
2019-11-03 23:13:56 +03:00
Trivaxy
8de2f00294
os: add windows cp
2019-11-02 22:37:29 +03:00
Alexander Medvednikov
56e1dac03a
Revert "vtools: add an info message". This broke repl tests.
...
This reverts commit 3b3f0eb507
.
2019-11-02 14:52:12 +03:00
Alexander Medvednikov
3b3f0eb507
vtools: add an info message
2019-11-02 13:27:09 +03:00
Alexander Medvednikov
3097ba93d7
vtools: do not use -prod, it slows things down too much
2019-11-02 13:26:03 +03:00
joe-conigliaro
4120982da1
compiler: add varg str method & varg / parser optimizations
2019-11-02 13:17:56 +03:00
joe-conigliaro
7b1993b1e4
vlib: filepath module
2019-11-01 19:29:51 +03:00
joe-conigliaro
fe9d884d90
parser: fix forwarding vargs & multiple call varg len fix
2019-11-01 19:14:16 +03:00
Alexander Medvednikov
de8297c983
examples/users.v: fix imports
2019-11-01 19:02:38 +03:00
Alexander Medvednikov
80ba8f07b8
more ui vh fixes
2019-11-01 18:03:24 +03:00
Delyan Angelov
59efd42483
tools/vget => tools/v , search, install, etc
...
* compiler: rename vget to tools/vpm, implement draft support for v vpm search, v vpm update, v vpm install, v vpm remove, v vpm help .
* compiler: use "v pm" instead of "v vpm" to reduce the redundancy of typing, as suggested by slapden
* Use 'v install modulename', 'v search keywords', 'v update modulename', 'v remove modulename' instead of the longer 'v pm install modulename' etc.
2019-11-01 15:19:04 +03:00
Alexander Medvednikov
a83e233dea
building modules can now be done from any directory
2019-11-01 14:16:58 +03:00
Delyan Angelov
15d4f68af6
compiler: pass -no-pie in debug builds so that backtraces work
2019-11-01 13:20:26 +03:00
Delyan Angelov
e15abb3de0
compiler: move `v up` implementation to tools/vup.v
2019-11-01 13:14:59 +03:00
Danil-Lapirow
15f971ece7
parser: fix broken methods with vargs
2019-11-01 13:03:14 +03:00
Delyan Angelov
bfe039fcba
compiler: extract testing to tools/vtest.v
2019-11-01 02:15:03 +03:00
Enrico Lefass
a691cc857e
time: add new public functions for formatting
2019-11-01 02:13:03 +03:00
Alexander Medvednikov
f8f7881f89
thirdparty/ui for macOS (temporary)
2019-11-01 01:14:08 +03:00
Nicolas Sauzede
71450828bd
fix missing protos for popen and backtrace_symbols
2019-11-01 00:52:08 +03:00
Alexander Medvednikov
e07d3c7827
ui vh hack
2019-11-01 00:47:11 +03:00
Alexander Medvednikov
91df08f56d
cc: experimental -fast option for tcc/codegen in the future
2019-11-01 00:37:24 +03:00
Alexander Medvednikov
987f5fd2a1
string: bring back strconv
2019-11-01 00:28:52 +03:00
Alexander Medvednikov
ae696e7ccb
Revert "Revert "array: fix and document array functions""
...
This reverts commit b1eb9d6b15
.
2019-10-31 21:50:20 +03:00
Alexander Medvednikov
4c96ca4e62
string: remove strconv dep
2019-10-31 21:50:11 +03:00
Alexander Medvednikov
128d37c671
vh fixes for the UI module
2019-10-31 21:26:12 +03:00
Alexander Medvednikov
5be8b47e1c
cc.v: disable tcc on android
2019-10-31 20:32:34 +03:00
Alexander Medvednikov
b1eb9d6b15
Revert "array: fix and document array functions"
...
This reverts commit 7fa33fc250
.
2019-10-31 20:29:58 +03:00
Henrixounez
55f6e810cf
repl: moved as a tool and using readline
2019-10-31 19:01:04 +03:00
ytakahashi
114953f28d
match: fix typo and remove arrows
2019-10-31 18:58:19 +03:00
Alvydas Vitkauskas
7fa33fc250
array: fix and document array functions
2019-10-31 15:46:50 +03:00
Don Alfons Nisnoni
0c229aacdd
readline: use new enum syntax
2019-10-31 14:06:48 +03:00
joe-conigliaro
5acdf425ab
parser: move duplicate code into single function
2019-10-31 13:49:57 +03:00
Alexander Medvednikov
b1730b768d
remove a println()
2019-10-31 12:15:45 +03:00
Alexander Medvednikov
d5cf4d6fd5
compiler: -o dir/file: create a new directory if it doesn't exist
2019-10-30 20:53:34 +03:00
Amal Shaji
e8d34002e1
map: fixed deletion of non-existent keys
2019-10-30 20:19:59 +03:00
Alexander Medvednikov
5da3c49497
json: rename jsgen.v to json_gen.v
2019-10-30 19:45:33 +03:00
Alexander Medvednikov
6b4dcb916b
ci: bring back Vid build
2019-10-30 19:36:54 +03:00
Alexander Medvednikov
316cf025ae
arrays: fix range
2019-10-30 17:30:49 +03:00
Alexander Medvednikov
a9ca9f45af
fix enum/match combo in sync_windows.v
2019-10-30 17:29:05 +03:00
Alexander Medvednikov
9044f1437c
v doc
2019-10-30 17:07:41 +03:00
Alexander Medvednikov
08c1f408d3
fix sync_windows.v
2019-10-30 16:43:40 +03:00
Alexander Medvednikov
2bd2501dc0
fix new enums in tests
2019-10-30 16:38:47 +03:00
Alexander Medvednikov
aa39451c8b
arrays.range(min, max)
2019-10-30 16:21:57 +03:00
Alexander Medvednikov
96f7620628
instead of `Enum.foo` require `.foo` if it's enough + some UI fixes
2019-10-30 15:48:33 +03:00
Delyan Angelov
ba6cc5df2a
compiler: print asserted source line on failure
2019-10-30 12:15:33 +03:00
Don Alfons Nisnoni
ee6ec3faf3
crypto: fix a typo
2019-10-29 19:59:55 +03:00
sunnylcw
79279e01f5
sqlite: add flags for FreeBSD to pass sqlite test
2019-10-29 17:13:56 +03:00
lorenzo pirro
d42c53346d
array: eq() for builtins (byte, string, int, i64, f32)
2019-10-29 14:26:00 +03:00
Danil-Lapirow
f161ff9db5
parser: fix tmp is already started issue
2019-10-28 23:50:58 +03:00
ytakahashi
6a609cb046
log: make const/struct public
2019-10-28 18:53:02 +03:00
Delyan Angelov
3950b10d2a
compiler: make Fn struct public
2019-10-28 16:37:18 +03:00
Alexander Medvednikov
9e9935acbc
math: make consts and structs public
2019-10-28 16:33:36 +03:00
Alexander Medvednikov
33b5afa893
V 0.1.22
2019-10-28 13:12:44 +03:00
Delyan Angelov
15deaa7eb6
compiler: improve errors when building thirdparty .o files
2019-10-28 12:43:57 +03:00
Alexander Medvednikov
44b99bc299
ci: don't run sqlite test on windows for now
2019-10-28 12:32:03 +03:00
Alexander Medvednikov
a7568ea54b
ci: install libsqlite package
2019-10-28 11:45:27 +03:00
Alexander Medvednikov
373873d71f
fix sqlite test
2019-10-28 10:40:48 +03:00
Danil-Lapirow
a2bafaa254
parser: add error on array comparison
2019-10-28 10:26:42 +03:00
Alexander Medvednikov
c5fa99c66c
darwin not supported yet
2019-10-28 10:25:56 +03:00
Alexander Medvednikov
d54bbc8737
fix sqlite test
2019-10-28 10:21:32 +03:00
Alexander Medvednikov
1ac1626357
sqlite example
2019-10-28 00:10:58 +03:00
Alexander Medvednikov
16c4415d4c
a very simple sqlite driver
2019-10-28 00:02:52 +03:00
Alexander Medvednikov
1390a39053
clean up switch tokens
2019-10-27 22:42:52 +03:00
Don Alfons Nisnoni
8358528888
string: add some docs
2019-10-27 22:29:55 +03:00
Alexander Medvednikov
9cddf22fff
glfw: make two structs public
2019-10-27 21:23:33 +03:00
Alexander Medvednikov
9c5abd575f
parser: remove switch_statement()
2019-10-27 13:03:40 +03:00
Alexander Medvednikov
e890f682e2
[if] fn: remove unused expression
2019-10-27 12:42:31 +03:00
Alexander Medvednikov
5946f67328
final switch => match
2019-10-27 12:38:50 +03:00
Don Alfons Nisnoni
acaf66ac80
readline: switch => match
2019-10-27 12:38:36 +03:00
Alexander Medvednikov
293cf18266
enable [if vfmt]
2019-10-27 12:16:33 +03:00
Alexander Medvednikov
d00fdca38f
[if vfmt] for fgen() functions
2019-10-27 12:13:08 +03:00
joe-conigliaro
d81b0675f0
array: bring back left & right method tests
2019-10-27 12:05:19 +03:00
Alexander Medvednikov
efdadc3758
tetris/glfw: fix warnings
2019-10-27 10:13:40 +03:00
joe-conigliaro
59378dce46
compiler/vlib: replace substr/left/right with `[start..end]` everywhere
2019-10-27 10:03:15 +03:00
Don Alfons Nisnoni
ed55826686
log/net: switch => match
2019-10-27 09:45:03 +03:00
Nicolas Sauzede
7ba5248e56
os_win.v: switch => match
2019-10-27 09:36:40 +03:00
joe-conigliaro
a075ce160e
compiler: add `[..2]` & `[2..]` support for slices
2019-10-27 09:36:04 +03:00
Alexander Medvednikov
e80cf185b9
allow public unions and interfaces
2019-10-27 02:23:52 +03:00
Alexander Medvednikov
ef022c2326
[if vfmt] function attribute for skipping functions for performance
2019-10-27 02:11:31 +03:00
Alexander Medvednikov
ee51313e2c
test array and string slices
2019-10-27 01:37:29 +03:00
Alexander Medvednikov
dd12a85429
array: fix a regression
2019-10-26 22:26:30 +03:00
Alexander Medvednikov
570a7aaaf3
a[start..end] slicing
2019-10-26 22:20:13 +03:00
Don Alfons Nisnoni
678ce54e70
os: document functions
2019-10-26 20:21:07 +03:00
Delyan Angelov
2d05c906d5
base64: some optimizations
...
* Add a test for the base64 encoding/decoding of long strings (i.e. mainly memory allocation).
* Make vlib/encoding/base64/base64_memory_test.v resemble more test.v from https://github.com/kostya/benchmarks .
* base64: some optimizations, also add base64.encode_in_buffer and base64.decode_in_buffer .
* Fix tests passing static strings.
* Reduce time needed for base64_memory_test.v .
* Optimize encoding.base64.Index access too (it is static), which speeds up decoding.
2019-10-26 18:20:36 +03:00
vitalyster
272b0aec82
os: fix os.get_error_msg on Windows
2019-10-26 14:58:05 +03:00
Alexander Medvednikov
6944161b15
array: clean up filter()
2019-10-26 14:53:55 +03:00
Alexander Medvednikov
70c9565607
array: fix map() return type and handle []bool
2019-10-26 14:49:36 +03:00
Alexander Medvednikov
f40d672a12
array: map() test
2019-10-26 14:32:56 +03:00
Alexander Medvednikov
4ef10c92f4
array: map() method
2019-10-26 14:28:11 +03:00
Alexander Medvednikov
f6f5b8cfb1
bring back string.h for now
2019-10-26 11:51:22 +03:00
Alexander Medvednikov
fbd41eacba
remove string.h include 1
2019-10-26 11:43:25 +03:00
Alexander Medvednikov
ef45a87882
remove string.h include
2019-10-26 11:29:56 +03:00
Alexander Medvednikov
58f0503f6d
cc.v: bring back implicit fn declaration
2019-10-26 11:09:20 +03:00
Alexander Medvednikov
cba12d0106
macos libproc fix 2
2019-10-26 02:19:14 +03:00
Alexander Medvednikov
203f967677
macos libproc fix 1
2019-10-26 02:16:37 +03:00
Alexander Medvednikov
7de95a642e
remove more C headers
2019-10-26 02:08:46 +03:00
Alexander Medvednikov
dc2c62807a
string: faster int()
2019-10-25 23:41:18 +03:00
Alexander Medvednikov
5510327d70
array_test.v: str() test
2019-10-25 22:40:52 +03:00
Alexander Medvednikov
8d2111169a
fix V.js methods and duplicate .str() in arrays
2019-10-25 22:38:39 +03:00
Mihael Dimoski
b6fa252fc9
time: make Time struct public
2019-10-25 22:04:25 +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
Alexander Medvednikov
9c5a359de3
fix V.js methods after the recent generics fix
2019-10-25 21:57:32 +03:00
Simon Heuser
280c7d396c
generics: generic methods, cast to T
2019-10-25 21:32:27 +03:00
Alexander Medvednikov
7d02eccbce
cc.v: fix tcc check
2019-10-25 20:11:53 +03:00
Alexander Medvednikov
c30f16a038
parser: add ; after a goto label
2019-10-25 18:53:45 +03:00
Alexander Medvednikov
090e1a87b7
linux: use gcc if tcc fails
2019-10-25 18:49:49 +03:00
Alexander Medvednikov
be0830b24f
builtin: do not use backtrace with musl
2019-10-25 18:38:47 +03:00
Alexander Medvednikov
c7e6d379da
$if glibc {
2019-10-25 18:33:02 +03:00
Alexander Medvednikov
ef9cae6dc0
bring back backtrace
2019-10-25 17:59:41 +03:00
Alexander Medvednikov
a83aa28a67
urllib: switch => match
2019-10-25 17:54:34 +03:00
Alexander Medvednikov
d0cbb4041b
disable backtrace for now
2019-10-25 17:38:07 +03:00
Delyan Angelov
32b3611026
sync: new_mutex() and new_waitgroup()
2019-10-25 17:24:40 +03:00
Alexander Medvednikov
e04c4ad852
remove execinfo.h include
2019-10-25 17:20:49 +03:00
joe-conigliaro
7d418e9105
parser: cleanup & reuse
2019-10-25 16:34:12 +03:00
Alexander Medvednikov
784847cf18
make V compile
2019-10-25 16:06:21 +03:00
Alexander Medvednikov
ea3f9b5b9a
remove execinfo.h header
2019-10-25 12:13:38 +03:00
Alexander Medvednikov
4e21e9ed44
minor V.js fixes
2019-10-25 12:13:38 +03:00
Toby Webb
c456ba6bde
parser: fix incorrect unused var message
2019-10-25 10:27:43 +03:00
joe-conigliaro
4443fef6c3
compiler: add const to typo suggestions + small typo format update
2019-10-25 10:26:14 +03:00
Alexander Medvednikov
d4c1bba856
fix V.js
2019-10-24 22:58:01 +03:00
Alexander Medvednikov
892d1c6aab
vweb: first step to revive it
2019-10-24 22:46:58 +03:00
Simon Ernst
2032da7fe2
os: make Result public
2019-10-24 21:58:28 +03:00
Alexander Medvednikov
36eb1b77d0
compiler: remove remaining switch statements and show a warning
2019-10-24 19:26:51 +03:00
Alexander Medvednikov
753fe32793
parser: remove more switch statements
2019-10-24 16:02:24 +03:00
Alexander Medvednikov
695245d307
struct.v
2019-10-24 15:56:10 +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
Alexander Medvednikov
dca49e43d9
c defs
2019-10-24 15:41:34 +03:00
Larpon
98c016b41d
os: walk() function
2019-10-24 15:17:09 +03:00
joe-conigliaro
580abe0de4
lower/snake case consts & enums
2019-10-24 14:48:20 +03:00
joe-conigliaro
fe17dd9a7e
vlib: make more structs, consts, & enums public
2019-10-24 22:35:11 +11:00
Alexander Medvednikov
75a6c759c7
enum snake_case check
2019-10-24 14:25:03 +03:00
Alexander Medvednikov
3d6bdc2dc3
public enums + more public structs (libs/examples/tests)
2019-10-24 13:24:50 +03:00
joe-conigliaro
1a2db54bc1
compiler: cgen - fix typo. dependency was spelled wrong
2019-10-24 21:23:11 +11:00
Alexander Medvednikov
4a88a28a3b
make all necessary structs public
2019-10-24 12:51:00 +03:00
Alexander Medvednikov
dce3275df4
make necessary consts public
2019-10-24 12:36:57 +03:00
Alexander Medvednikov
1c564bc118
compiler: public consts and structs
2019-10-24 12:26:43 +03:00
joe-conigliaro
71d965b6a2
compiler: add hint to use references for dependant struct fields
2019-10-24 11:18:50 +03:00
joe-conigliaro
baf49b2523
show struct dependency cycles in error & update module cycle error ( #2517 )
2019-10-24 15:53:39 +11:00
Alexander Medvednikov
f14425ec18
do not allow one letter struct names
2019-10-23 23:46:07 +03:00
Tony Kostanjsek
c58c03167d
vlib/darwin: remove assert
2019-10-23 23:40:07 +03:00
joe-conigliaro
2f5a742f3e
compiler: generic variadic fix
2019-10-23 19:44:05 +03:00
joe-conigliaro
0cf3e2e677
compiler: add variadic support for generic functions
2019-10-23 17:48:06 +03:00
Alexander Medvednikov
054dd237a4
V.js: remove u8
2019-10-23 15:56:57 +03:00
Alexander Medvednikov
1db1e0f4b7
1
2019-10-23 15:55:14 +03:00
Alexander Medvednikov
6174dfb424
fix V.js
2019-10-23 15:51:52 +03:00
Alexander Medvednikov
e69117a8f3
vh types + fn receiver name check
2019-10-23 15:42:50 +03:00
Alexander Medvednikov
27e254c738
now bring _windows.v back
2019-10-23 12:54:45 +03:00
Alexander Medvednikov
95321f5b33
fix module_test.v
2019-10-23 12:50:18 +03:00
Alexander Medvednikov
1752f6879c
os: remove duplicate consts
2019-10-23 12:45:52 +03:00
Alexander Medvednikov
8021a01365
rename windows files for now
2019-10-23 12:37:42 +03:00
Alexander Medvednikov
b298b397dc
vh gen: consts before fns
2019-10-23 12:35:51 +03:00
Alexander Medvednikov
92185a1a6f
os: move windows consts to a separate file
2019-10-23 12:28:48 +03:00
Alexander Medvednikov
2e28691254
_windows.v fix
2019-10-23 12:25:00 +03:00
Alexander Medvednikov
5ef4b2064f
windows: _win.v => windows.v
2019-10-23 12:21:33 +03:00
Alexander Medvednikov
a6aad880f7
gg: resizable window option
2019-10-23 12:17:08 +03:00
Alexander Medvednikov
8b74c711c6
vh generation: consts + cleanup
2019-10-23 11:09:54 +03:00
Enrico Lefass
fcead2f79e
time: squash three occasions of const(...) into one
2019-10-23 08:41:16 +03:00
Alexander Medvednikov
0806aa353c
match: second step
2019-10-23 01:06:06 +03:00
Alexander Medvednikov
d8edc27805
match: this needs a 2 step PR
2019-10-23 01:00:52 +03:00
Alexander Medvednikov
9743b04fe6
update match statement
2019-10-23 00:56:25 +03:00
Alexander Medvednikov
4574039e4d
new vh generation + simpler match statement
2019-10-23 00:45:17 +03:00
Sergio Abreu García
14c273f273
gg: fix clear function
2019-10-22 23:06:56 +03:00
Alexander Medvednikov
7696a600f6
compiler: fix V build on Windows
2019-10-22 21:29:32 +03:00
Delyan Angelov
eeea257467
clean up empty lines in errors; simplify source line tracking
2019-10-22 18:38:17 +03:00
Arthur Kennedy Otieno
fb89c12d90
V.js: remove a text block resulting in syntax errors
2019-10-22 08:02:31 +03:00
Toby Webb
fdfa564865
parser: minor syntax fix
2019-10-21 22:04:57 +03:00
Alexander Medvednikov
a29c80ca3d
make the unsafe error a warning for now
2019-10-21 18:53:55 +03:00
joe-conigliaro
7680d9a23c
compiler: variadic fn - fix unexpected token `,` error from #2433 ( #2468 )
...
* merge master
* fix unexpected token
2019-10-21 23:30:34 +11:00
Delyan Angelov
eef73eea22
tools: new tool to extracts function names declared in V files
2019-10-21 14:14:28 +03:00
Delyan Angelov
cd8b0d04bb
parser: support for 'enum Color {red = 31 yellow green blue}'
2019-10-21 14:00:41 +03:00
Emily Hudson
a52cb315cb
fix memory bug with generic code generation
2019-10-21 13:54:37 +03:00
Toby Webb
dfc654f84e
const declarations should be order independent
2019-10-21 08:57:29 +03:00
Emily Hudson
2829298de7
live: Fix MSVC hot code reloading ( #2460 )
2019-10-21 12:15:43 +11:00
Alexander Medvednikov
333f0ab89f
fix v.js test
2019-10-20 20:52:31 +03:00
Alexander Medvednikov
3d6b936f38
parser: undefined error
2019-10-20 20:47:27 +03:00
Enrico Lefass
c23155790a
os: add pub fn read_bytes and pub fn read_bytes_at
2019-10-20 20:45:16 +03:00
Alexander Medvednikov
81b1b882fd
bultin: mark unsafe functions
2019-10-20 20:29:24 +03:00
Alexander Medvednikov
c13b58e6db
[deprecated] attribute
2019-10-20 20:15:48 +03:00
Alexander Medvednikov
1b518c158b
unsafe keyword + make array.free() an unsafe method
2019-10-20 20:10:44 +03:00
joe-conigliaro
f7c00b8180
compiler: blank ident - consolidate duplicated code into single function
2019-10-20 12:24:12 +03:00
Simon Heuser
8a31ee4b53
generic functions
2019-10-20 10:19:37 +03:00
Alexander Medvednikov
f63e24e51d
clean up vtest.v a bit
2019-10-20 09:56:33 +03:00
eau
6d8548d7a5
compiler: add missing header file on OpenBSD
2019-10-20 07:00:01 +03:00
Ole-Martin Bratteng
b73387647c
v.js: make eprintln use console.error
2019-10-19 15:42:37 +03:00
Delyan Angelov
5977fc0644
compiler: print relative file paths for files in the current directory
2019-10-19 12:03:04 +03:00
joe-conigliaro
c24d94f87f
compiler: fix mistake in comptime.v ( #2425 )
...
* merge master
* fix mistake in comptime.v
2019-10-19 19:40:01 +11:00
joe-conigliaro
b51b8858d6
compiler: update & enable cflag error ( #2420 )
...
* merge master
* update & enable cflag error
2019-10-19 11:38:02 +11:00
joe-conigliaro
22c7438795
compiler: cflag error - closes #2406 ( #2417 )
...
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* add missing brace
* undo change to comptime
* improve error message
* update
2019-10-19 08:18:08 +11:00
joe-conigliaro
28b24eeef6
compiler: blank ident error fixes + other small cflag / parser fixes ( #2418 )
...
* merge master
* fix blank ident & add cflag error
* undo cflag changes
* fix gen_js
* undo gen_js changes
* fix
* fix
2019-10-19 08:00:47 +11:00
Alexander Medvednikov
c18578af6f
compiler: linux tcc fixes
2019-10-18 20:49:43 +03:00
Danil-Lapirow
bb9d95e9aa
parser: allow '' in attributes
2019-10-18 20:17:23 +03:00
joe-conigliaro
689003454b
only register initial varg struct on first pass ( #2404 )
2019-10-18 19:28:14 +11:00
Alexander Medvednikov
368e8e85a8
compiler: info message when trying to use an old command
2019-10-18 09:56:57 +03:00
joe-conigliaro
6dea2359ab
strconv: optimize functions
...
also make it the responsibility if the caller to properly trim whitespace
2019-10-18 08:20:03 +03:00
Alexander Medvednikov
c355e967ad
move array filter codegen to comptime.v
2019-10-18 07:58:54 +03:00
Alexander Medvednikov
d501dc4c11
compiler: first step to validate cmd flags
2019-10-18 07:48:46 +03:00
Alexander Medvednikov
80e79a3966
array: optimized generic filter()
2019-10-18 07:30:39 +03:00
pfefferminz132
eda0c73bef
compiler: use eprintln for cache diagnostic messages
2019-10-18 06:16:33 +03:00
joe-conigliaro
8d16762f03
strconv module + use it in builtin/string instead of C functions
2019-10-17 19:37:55 +03:00
Simon Ernst
270934441c
os: make ls() return an optional
2019-10-17 14:30:05 +03:00
joe-conigliaro
4932a32d91
compiler: fix os import by default in v scripts
2019-10-17 11:52:46 +03:00
Unknown User
f46b58b09d
int: i64 hex() use PRIx64
2019-10-17 11:06:54 +03:00
joe-conigliaro
b32a462b2e
math: new consts + helpers funcs for string to int / float
2019-10-17 09:04:57 +03:00
Alexander Medvednikov
5cd38ec91b
V shell scripts
2019-10-17 08:27:27 +03:00
Vinicius Rangel
96152510e5
parser: interpolation calling twice fix
...
if string interpolation needs to call a function, it will cache the
return to .len & .str usage in the generated code
2019-10-17 07:02:02 +03:00
Vinicius Rangel
5481f226dd
parser: Infinite multi-dimensional array
2019-10-17 06:52:58 +03:00
Alexander Medvednikov
5faa7e7861
Revert "repl: add readline for user input "
...
This reverts commit 83732642ac
.
2019-10-17 03:37:30 +03:00
Henrixounez
83732642ac
repl: add readline for user input
2019-10-16 18:38:07 +03:00
Henrixounez
99e07718da
readline: fix reading on linux, crash on mac
2019-10-16 12:46:24 +03:00
joe-conigliaro
280ccfa177
math: fns for gettng bit repr of float & vice versa
2019-10-16 11:19:03 +03:00
Alexander Medvednikov
66f36be7d0
Revert "repl: readline line editing "
...
This reverts commit 1956c6f906
.
2019-10-16 03:31:48 +03:00
Alexander Medvednikov
00fd1abf82
readline: fix macos
2019-10-16 03:20:40 +03:00
Alexander Medvednikov
526f1a3172
Revert "Revert "parser: fix programs without fn main""
...
This reverts commit 61af044316
.
2019-10-16 03:20:16 +03:00
vitalyster
9b38f59184
msvc: detect x86 host and use x86 build tools
2019-10-16 02:54:35 +03:00
Henrixounez
1956c6f906
repl: readline line editing
2019-10-16 02:50:48 +03:00
vitalyster
0e0f0ae5ea
escape os.exec('"$vexec"') to support directories with spaces
2019-10-16 02:49:51 +03:00
Simon Heuser
a5d61f6da0
math.complex: make fields public
2019-10-15 12:43:28 +03:00
Alexander Medvednikov
49d6c26da4
parser: do not allow str[i++]; update contributing.md
2019-10-15 11:06:22 +03:00
Henrixounez
bb1eca3564
readline: basic mac and windows version using os.getline
2019-10-15 09:04:22 +03:00
Alexander Medvednikov
75e2a29cb5
string: bring back strtoul for now
2019-10-15 08:53:35 +03:00
Alexander Medvednikov
f9593bd857
builtin: float.v + remove #include <math.h>
2019-10-15 08:41:45 +03:00
Alexander Medvednikov
4b176ba855
string: test i64() and u64()
2019-10-15 04:26:19 +03:00
Alexander Medvednikov
10ed65bc12
fix float.eq()
2019-10-15 03:45:11 +03:00
Alexander Medvednikov
91690a1b54
fix f64 tcc eq crash
2019-10-13 04:27:57 +03:00
joe-conigliaro
ae3ec380f8
add notice about msvc compilation ( #2340 )
2019-10-14 18:36:29 +11:00
Nicolas Sauzede
eb031b6800
compiler: enhance non-pub struct fields error message
2019-10-14 10:15:21 +03:00
Alexander Medvednikov
2d127cb694
tcc windows fixes
2019-10-14 09:03:11 +03:00
Alexander Medvednikov
a68222b55b
comptime: fix tcc check
2019-10-14 08:53:03 +03:00
joe-conigliaro
9a2b8a0814
compiler: move msvc compiler to -cc flag instead of -os ( #2338 )
...
* move msvc to -cc flag instead of -os
* undo unrelated change
* do first build without msvc
* remvove flags temp
* fix comment
2019-10-14 16:41:46 +11:00
Alexander Medvednikov
093d8a2b00
compiler: remove math dependency
2019-10-14 08:34:48 +03:00
joe-conigliaro
7dc740d084
CI: fis vjs build failure ( #2337 )
...
* fix ci building v
* fix v.js
* more js fix
* test
* fix
* remove testing
2019-10-14 15:42:27 +11:00
joe-conigliaro
de10a529b0
CI: fix building v
2019-10-14 07:08:02 +03:00
Alexander Medvednikov
e2bca190a9
compiler: v.v fixes
2019-10-14 05:18:48 +03:00
joe-conigliaro
e5b0478e19
compiler: optimize, don't rescan module directory for files ( #2334 )
...
* optimize, don't rescan module directory for files
* move from table to v
2019-10-14 12:07:59 +11:00
Alexander Medvednikov
6a951751f7
compiler: fix building_v
2019-10-14 03:56:53 +03:00
Alexander Medvednikov
b237ffcf09
Revert "move compiler/main.v to v.v"
...
This reverts commit 3748de8736
.
2019-10-14 03:48:36 +03:00
Alexander Medvednikov
3748de8736
move compiler/main.v to v.v
2019-10-14 03:38:06 +03:00
Alexander Medvednikov
61af044316
Revert "parser: fix programs without fn main"
...
This reverts commit bf21108fdb
.
2019-10-13 17:55:12 +03:00
Alexander Medvednikov
b1806b57d8
tests: no main fn
2019-10-13 17:50:55 +03:00
joe-conigliaro
a90427a663
parser: fix variadic function unused var C error
2019-10-13 16:58:54 +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
Alexander Medvednikov
ae2af4c36d
parser: a small immutable field fix
2019-10-13 01:50:19 +03:00
Nicolas Sauzede
1292163637
runtime: add windows support for nr_cpus()
2019-10-13 01:01:15 +03:00
Alexander Medvednikov
432e074b4e
fix complex_test.v
2019-10-12 22:39:18 +03:00
Alexander Medvednikov
a76165828b
snake_case consts
2019-10-12 22:36:14 +03:00
Alexander Medvednikov
81f8b26127
os.path_separator
2019-10-12 22:18:19 +03:00
Vitalie Ciubotaru
ae6a426689
bitfield: remove workaround in assignment operations
2019-10-12 22:03:18 +03:00
joe-conigliaro
a06e2298f0
compiler: detect and error on public init function & remove empty init functions
2019-10-12 13:54:58 +03:00
Don Alfons Nisnoni
5ef2c947f7
szip: use `&zip` instead of `*zip` ( #2301 )
2019-10-12 12:46:33 +03:00
joe-conigliaro
40156392f8
compiler: cached modules - windows fixes & organise cached module path ( #2302 )
...
compiler: cached modules - windows fixes & organise cached module path (#2302 )
2019-10-12 16:41:41 +11:00
joe-conigliaro
dd053d79b0
vlib/examples: fix gl/glfw/gg examples. rename init functions
2019-10-12 06:03:15 +03:00
Alexander Medvednikov
b107b4f1e5
modules: create the modules directory if it's missing, use cache/
2019-10-12 05:04:59 +03:00
Alexander Medvednikov
4c91a5c94b
module caching: generate type aliases
2019-10-12 04:09:37 +03:00
Alexander Medvednikov
4cd9099f74
disable $if for headers for now
2019-10-12 03:49:36 +03:00
Alexander Medvednikov
6db7518189
make $if work with includes: skip the body if the target is different
2019-10-12 03:48:32 +03:00
joe-conigliaro
51388fea75
compiler: module init function & init consts for cached modules
2019-10-12 01:17:37 +03:00
Don Alfons Nisnoni
c7e47e6884
array: minor clean up
2019-10-12 00:06:30 +03:00
Delyan Angelov
2b087dbf95
backtraces: add source line numbers too on linux
...
* Add source line numbers to backtraces on linux.
* Fix -g (broken after token caching).
* reset the #line directives after all the v code is compiled
* cleanup p.cgen.line setting inside p.next() .
* Support windows filepaths like "C:\Users\travis\build\vlang\v\v.exe.tmp.c" inside generated #line directives.
* Try to diagnose better windows-gcc failing.
* Revert "Try to diagnose better windows-gcc failing."
* implement and use cescaped_path/1 .
* Use cescaped_path/1 consistently throughout compiler/ .
2019-10-12 00:04:42 +03:00
Alexander Medvednikov
9193242a76
fix runtime module test
2019-10-11 14:16:02 +03:00
Alexander Medvednikov
af46bf515f
glfw: bring back 64 bit glfw3.dll
2019-10-11 13:47:56 +03:00
Alexander Medvednikov
52c2fa44b8
runtime: nr_cpus()
2019-10-11 13:47:56 +03:00
Alexander Medvednikov
a280e98d7f
fix the build
2019-10-11 06:57:08 +03:00
Alexander Medvednikov
726aaecc46
compiler: make V compilable wit the tcc backend
2019-10-11 06:49:53 +03:00
Don Alfons Nisnoni
942c56ca95
array: add reduce() method
2019-10-11 04:12:40 +03:00
Alexander Medvednikov
e1dd4c19b5
compiler: cache modules if they are not built yet
2019-10-10 22:53:59 +03:00
vitalyster
a5ccc4673b
http: handle and print socket errors
2019-10-10 20:24:36 +03:00
vitalyster
f86a52aae6
socket: reuse socket parameters in addrinfo hints
2019-10-10 20:09:43 +03:00
Delyan Angelov
e61dce6441
freetype: fix compiler warning about ctx._draw_text
2019-10-10 20:09:19 +03:00
vitalyster
e64609387d
term: colors on Windows console
...
* isConsole moved to builtin is_atty function
* Windows console initialization moved to builtin.init
2019-10-10 20:08:36 +03:00
joe-conigliaro
f8fefd5a60
urllib: rem underscore methods from; add strings index_bytes
2019-10-10 20:04:11 +03:00
Delyan Angelov
f3abb9e682
fix 'v -debug examples/hello_world.v'
2019-10-10 20:02:32 +03:00
Alexander Medvednikov
9385ed27ae
fix v.js
2019-10-10 01:27:16 +03:00
Alexander Medvednikov
1f6535afb0
array/map: remove _get(), _push() etc
2019-10-10 01:15:19 +03:00
Alexander Medvednikov
2411b8d1e7
module cache fixes; do not allow function names starting with _
2019-10-10 00:44:26 +03:00
vitalyster
0796e1dd69
socket: no need to initialize WinSock on each request
2019-10-09 21:01:31 +03:00
Alexander Medvednikov
b1da59845e
array: fix initialization of empty fixed size arrays
2019-10-09 15:26:30 +03:00
Alexander Medvednikov
29f578d172
cc: bring back os.rm()
2019-10-09 07:02:45 +03:00
Alexander Medvednikov
7690b58691
remove experimental os2 test
2019-10-09 06:41:55 +03:00
Alexander Medvednikov
a9a73d9315
caching modules: almost there
2019-10-09 06:35:58 +03:00
Unknown User
c1eb714a7f
bitfield: change `[0;n]` to `[0].repeat(n)`
2019-10-08 13:24:02 +03:00
Unknown User
6edc25f512
pg: remove unused imports
2019-10-08 13:23:39 +03:00
Don Alfons Nisnoni
fecf3f19c3
array: add filter() method
2019-10-08 13:23:17 +03:00
vitalyster
e10848e0d5
windows: read console with ReadConsole when it is not redirected
2019-10-08 12:29:09 +03:00
Delyan Angelov
60d4f47f7a
improve crash diagnosis/detection when a test segfaults
2019-10-08 02:34:55 +03:00
Delyan Angelov
ac5241b5bd
compiler: implement -stats option for running a _test.v file
...
* Draft implementation of `v -stats file_test.v` .
* compiler: call stuff in vlib/benchmark/tests/always_imported.v, when doing `v -stats file_test.v`
* Nicer looking output from 'v -stats file_test.v' .
* Tweak colors and layout of -stats file_test.v .
* Fix a hardcoded path in compiler/main.v .
* Show colorized OK/FAIL for the examples in 'v test v' too.
* Add some comments about the purpose of the methods inside vlib/benchmark/tests/always_imported.v .
* when fails are 0, do not colorize their number at all.
2019-10-07 08:51:26 +03:00
Alexander Medvednikov
f1923d454c
parser: make verbose mode less verbose
2019-10-07 01:25:53 +03:00
Henrixounez
5acadbab32
readline: optional return, automatic raw mode and standalone functions
2019-10-06 16:28:41 +03:00
Enrico Lefass
b0573bd4e4
time: add new public format function ddmmy()
2019-10-06 16:24:37 +03:00
Alexander Medvednikov
b242e8d7ff
optimize `a in [1,2,3]` to `a == 1 || a == 2 || a == 3`
2019-10-06 06:07:38 +03:00
Alexander Medvednikov
65aafb3cf1
3d arrays are not supported yet
2019-10-06 04:18:55 +03:00
Alexander Medvednikov
6a0599b5f4
raw strings with r'raw'
2019-10-06 04:11:08 +03:00
Alexander Medvednikov
735336e569
array: 2d and 3d test
2019-10-05 16:03:19 +03:00
joe-conigliaro
72ae12877e
remvoe dupe in main & fix js string.builder ( #2233 )
2019-10-05 18:07:10 +10:00
Alexander Medvednikov
e14861694c
another v.js fix
2019-10-05 08:03:26 +03:00
Alexander Medvednikov
ed99fc2d42
v.js: fix strings.Builder
2019-10-05 07:40:32 +03:00
Don Alfons Nisnoni
68bcf6830c
array: add index() method
2019-10-04 23:07:19 +03:00
Alexander Medvednikov
52f4f4026b
compiler: cache modules
2019-10-04 15:48:09 +03:00
Alexander Medvednikov
f45d3f07ed
fix 3 last C warnings and make sure no new warnings are introduced
2019-10-04 05:49:41 +03:00
unknown-v
b3805140ec
Remove json_test.exp & json_test.lib
2019-10-03 02:00:11 +03:00
Swastik Baranwal
7d763e0776
fix js build
2019-10-02 15:46:08 +03:00
Alexander Medvednikov
5ba354fa2c
`if a := foo() {` syntax for handling optionals
2019-10-01 22:57:38 +03:00
hazohelet
56e4ed1e6b
compiler: float comparison uses machine epsilon by default
2019-10-01 22:38:36 +03:00
joe-conigliaro
7fd2ef975b
parser: add v error if assigning var to blank identifier `_`
...
also fix C warn & double semicolon
2019-10-01 15:40:11 +03:00
Delyan Angelov
2ac80485c0
C backend: fix a couple of C warnings on Linux
2019-10-01 14:35:59 +03:00
Alexander Medvednikov
243626c7c1
readline: capitalize structs
2019-10-01 06:28:06 +03:00
Alexander Medvednikov
841d824216
builtin: a very early version of the hashmap
2019-10-01 06:20:50 +03:00
Alexander Medvednikov
2aa6ab71db
darwin: no need to free the buffer
2019-09-30 23:29:53 +03:00