Shiqing
519028e263
Fix incorrect string open/close check in REPL
2019-08-29 21:40:49 +03:00
Henrixounez
52c2763ee3
compiler: prompt error if trying to use f for floats
2019-08-29 21:39:58 +03:00
Henrixounez
4b9cc1246e
compiler: allow functions return without main function
2019-08-29 21:39:39 +03:00
Delyan Angelov
4f62e8235f
repl: add a test for naked strings.
2019-08-29 12:30:33 +03:00
Delyan Angelov
83954acfd4
compiler: use cerror instead of panic.
2019-08-29 11:50:18 +03:00
Joe Conigliaro
4a506b0566
fix issue #1777
2019-08-29 11:46:05 +03:00
Alexander Medvednikov
91ece782af
compiler: move Var back to table.v now that the struct bug is fixed
2019-08-28 21:23:46 +03:00
Alexander Medvednikov
5b1700e52a
compiler: fix struct order bug
2019-08-28 21:19:34 +03:00
Alexander Medvednikov
f29079daac
better winroot.zip info message
2019-08-28 21:19:34 +03:00
Delyan Angelov
c92654a044
fix building v on alpine with musl libc
2019-08-28 19:26:18 +03:00
unknown-v
fed9f01b2d
use -rdynamic only if host os is not windows
2019-08-28 16:23:53 +03:00
Vitaly Takmazov
5124eae47d
msvc: check exit code
2019-08-28 13:26:27 +03:00
Delyan Angelov
73c6bae480
print backtraces on panic on mac and linux
2019-08-27 23:29:13 +03:00
joe-conigliaro
02fc7e14cd
make trim use cutset like trim_right/trim_left
2019-08-27 22:53:32 +03:00
Delyan Angelov
2d87fea074
compiler: allow passing options to v run
2019-08-27 21:08:54 +03:00
Alexander Medvednikov
e2c7d3b2d9
v symlink
2019-08-27 19:35:48 +03:00
Alexander Medvednikov
f6147b7ac7
Revert "switch deprecation notice"
...
This reverts commit a43b831965
.
2019-08-27 13:10:18 +03:00
Alexander Medvednikov
b48b076dac
remove is_play
2019-08-27 13:10:18 +03:00
Sunny Lam
a5b44b3bc5
disable implicit-function-declaration for FreeBSD
2019-08-27 12:53:50 +03:00
Alexander Medvednikov
cca85566d3
parser: fix duplicate enum generation
2019-08-27 02:48:55 +03:00
Alexander Medvednikov
a43b831965
switch deprecation notice
2019-08-27 02:47:49 +03:00
Danil-Lapirow
7edcbeca1a
parser: match expression + match fixes
2019-08-27 00:39:11 +03:00
Alexander Medvednikov
d4b6b6c833
freetype: render all Unicode characters
2019-08-27 00:20:54 +03:00
Delyan Angelov
99c9410cc2
compiler: add all C reserved words to CReserved
2019-08-26 20:04:57 +03:00
Robin Martijn
5df31c16f7
json: fix #1751 ; support unsigned integers
2019-08-26 20:02:19 +03:00
teggot
f34d14d901
Register map type while declaration
2019-08-26 20:01:34 +03:00
Delyan Angelov
aa438c7c3f
os: fix exec() and get_raw_line(); fix Windows tests and examples
2019-08-26 13:51:48 +03:00
Henrixounez
fe50aeb130
compiler: prevent multiple same field initialization
2019-08-26 13:39:45 +03:00
Swastik Baranwal
db525524ee
string: title() and small fixes
2019-08-26 13:32:53 +03:00
Henrixounez
ad32a3770b
compiler: cast correctly strings between byte* and char* when needed
2019-08-25 01:50:44 +03:00
Henrixounez
0a0d6536c2
compiler: access index when casting array into an array[] for pointer
2019-08-25 01:49:51 +03:00
Alexander Medvednikov
57880aed18
compiler: fix linux crash
2019-08-24 15:04:31 +03:00
Alexander Medvednikov
dfc7c9c00f
final tcc fixes
2019-08-24 14:39:27 +03:00
Alexander Medvednikov
cd10890258
minor tcc fixes
2019-07-08 03:44:47 +02:00
Alexander Medvednikov
4c07df6a21
small webassembly fix
2019-08-24 03:09:23 +03:00
Alexander Medvednikov
031e7fe113
os: libproc.h on macos only
2019-08-24 02:53:11 +03:00
Alexander Medvednikov
7fd9827318
all: add missing includes
2019-08-24 02:48:47 +03:00
teggot
2be0777c98
Fix issue of missing code in C
2019-08-24 00:27:48 +03:00
teggot
421b6ce4ac
Fix typo
2019-08-24 00:26:30 +03:00
Alexander Medvednikov
d98c20466e
cc.v: build with "implicit-function-declaration" and fix declarations
...
required for the webassembly backend
2
2019-08-24 00:20:53 +03:00
Delyan Angelov
1b3a21f197
compiler: use absolute paths for the c files and clean them up
2019-08-23 20:05:02 +03:00
Alexander Medvednikov
0589decc43
parser: change the new_parser() signature
2019-08-23 13:43:31 +03:00
Alexander Medvednikov
624a932420
compiler: cc.v
2019-08-23 12:06:01 +03:00
Delyan Angelov
d362f73af8
compiler: support passing -cc to specify the desired C compiler
2019-08-23 11:42:48 +03:00
Alexander Medvednikov
df593870ae
scanner: fix a string overflow
2019-08-23 03:28:25 +03:00
Alexander Medvednikov
8f1bf6033e
compiler: remove module_path()
2019-08-23 03:10:37 +03:00
Alexander Medvednikov
e39cb41d6b
json: custom json field names with "[json:field_name]"
2019-08-23 02:54:39 +03:00
Alexander Medvednikov
7086547471
compiler: replace STRUCT_DEFAULT_VALUE with {0}
2019-08-23 02:38:18 +03:00
Alexander Medvednikov
6c6cbe0821
changelog for the upcoming V 0.1.19
2019-08-23 00:26:59 +03:00
Alexander Medvednikov
dcfc9eb1a1
remove from the language
2019-08-22 23:19:31 +03:00
Alexander Medvednikov
eb5fcafa77
table: TypeCategory; freetype: remove C code; [typedef] C structs;
...
Objective-C interfaces
2019-08-22 22:18:55 +03:00
Henrixounez
780ddaf22b
compiler: handles printing of structures and arrays of structures
2019-08-22 14:34:33 +03:00
Henrixounez
232532ba3b
repl: clear screen and help menu
2019-08-22 14:24:37 +03:00
Henrixounez
be99a65f2b
compiler: comptime generated str methods for arrays are public
2019-08-22 14:22:44 +03:00
Delyan Angelov
77b31de117
compiler: produce errors in C "filepath:line:column:" format
2019-08-22 14:15:11 +03:00
Henrixounez
9b3b22d6b3
compiler: allows compound assignment operators on array
2019-08-22 04:57:43 +03:00
Delyan Angelov
1ddc9dc604
orm: allow variables like q.nr_orders in queries too.
2019-08-20 21:35:13 +03:00
Delyan Angelov
cf06faf09b
orm: allow both integer and string arguments in db.select and db.select limit 1
2019-08-20 17:32:39 +03:00
Delyan Angelov
49899c649c
orm: fix select .. limit 1 . This case now returns an ?Row.
2019-08-20 16:33:14 +03:00
Emily Hudson
151686501d
compiler: fix MSVC flag parsing
2019-08-20 16:32:15 +03:00
Delyan Angelov
9ff8793666
compiler: refactoring - extract cheaders.v and live.v from main.v .
2019-08-20 11:26:50 +03:00
Alexander Medvednikov
707ddba143
examples: rename hot_code_reloading to hot_reload
2019-08-20 00:08:45 +03:00
Delyan Angelov
41efe545f2
repl_test: remove dependance on echo, use stdin redirection instead.
2019-08-18 23:02:32 +03:00
Henrixounez
e1d2c83ff6
repl: functions and conditional blocks support
2019-08-18 22:50:38 +03:00
Henrixounez
14c2319dcc
compiler: prevent accessing negative index of arrays
2019-08-18 20:11:47 +03:00
Henrixounez
38db845378
compiler: auto dereference mutable variable upon return
2019-08-18 20:09:01 +03:00
Henrixounez
14f13ff55a
tests: v implementation of repl tests
2019-08-18 19:26:55 +03:00
Henrixounez
aae063b9ad
repl: dont save line if last compilation errored
2019-08-18 19:25:46 +03:00
Delyan Angelov
f013359a44
compiler: improve error handling for 'v install'
2019-08-18 17:57:57 +03:00
Emily Hudson
d373b331fa
ompiler: MSVC related fixes and v test v
for windows testing
...
* MSVC related fixes and v test v for windows testing
* If second stage crashes on windows goto error
* use os.exec instead of system so that the error can be printed
* use -debug for osx vid
* Fix some whitespace to trigger a rebuild
2019-08-18 17:25:33 +03:00
Delyan Angelov
bbc5c14d99
repl: fix compiler/tests/repl/error.repl test case.
2019-08-18 17:24:02 +03:00
Alexander Medvednikov
56fbafe03a
cc(): fix -x objective-c; ui.focus_app()
2019-08-18 16:59:36 +03:00
Delyan Angelov
4a27b8f43d
compiler: improved error, when c compiler is missing/not found.
2019-08-18 13:03:28 +03:00
S-YOU
329e7bd2c8
add static inline attribute
2019-08-18 13:02:07 +03:00
Alexander Medvednikov
8e1c31e860
cc(): print compilation error correctly
2019-08-18 01:30:48 +03:00
Alexander Medvednikov
fe2d2bd2a3
fmt: remove trailing spaces
2019-08-17 22:21:43 +03:00
Alexander Medvednikov
8a1324c141
os: make exec() return ?Result with exit code and output
2019-08-17 21:11:40 +03:00
teggot
79c727f014
Add support for raw json fields in structs
2019-08-17 16:20:40 +03:00
Alexander Medvednikov
37a607dce5
fix v test v
2019-08-17 01:15:38 +03:00
Alexander Medvednikov
c6e7838a44
V 0.1.18
2019-08-17 00:48:07 +03:00
Alexander Medvednikov
94b900bd0a
map: allow array values
2019-08-16 23:28:47 +03:00
Alexander Medvednikov
54b3c4d2c5
json: error if the module is not imported
2019-08-16 18:32:35 +03:00
Marco Böttcher
d6d17fe3f2
scanner: string interpolation with $var at the end
2019-08-16 17:06:27 +03:00
Alexander Medvednikov
b188ecf680
Makefile: re-write make test
in V
2019-08-16 16:51:46 +03:00
Delyan Angelov
5ea4b463bb
compiler: fix issue #1612 .
2019-08-16 14:05:42 +03:00
Alexander Medvednikov
c156cef972
vweb: fix the test
2019-08-16 09:58:27 +03:00
Alexander Medvednikov
dc9cebe26c
orm fixes; glfw: remove C code
2019-08-16 09:10:03 +03:00
Alexander Medvednikov
c0cc4701af
$if debug {
2019-08-16 08:50:36 +03:00
Marco Böttcher
87216cff63
compiler: '\$' escape
2019-08-15 12:41:23 +03:00
Joe Conigliaro
5eee980499
auto init struct map fields
2019-08-14 23:54:45 +03:00
Henrixounez
772c0c3f93
compiler: prevent string to byte cast
2019-08-14 09:48:05 +03:00
Henrixounez
437ba14521
compiler: prompts an error when accessing a map with wrong type
2019-08-14 09:46:46 +03:00
Alexander Medvednikov
ef2ab31e88
sql: only accept strings and ints for now
2019-08-12 21:07:03 +03:00
Alexander Medvednikov
cba4d59712
vweb: make app_test.v compile
2019-08-12 17:38:30 +03:00
Alexander Medvednikov
6002511052
pg: remove printf
2019-08-12 16:41:41 +03:00
Henrixounez
2ba1edaa80
repl: default printing fix and test
2019-08-12 16:19:56 +03:00
Emily Hudson
decdd8be9f
Prevent people on platforms that arent 'windows' from being able to build with msvc
2019-08-12 15:11:13 +03:00
Alexander Medvednikov
32754e3b4c
small sql fix
2019-08-12 14:41:40 +03:00
Henrixounez
872aa536d8
compiler: unsigned number properly printed and converted to string
...
fix: array accessing now works with unsigned numbers
2019-08-12 09:15:53 +03:00
Alexander Medvednikov
3c6a11eb0b
fix mut_test.v
2019-08-11 22:45:21 +03:00
Alexander Medvednikov
8c3475b902
generate .str()
for all arrays
2019-08-11 22:39:45 +03:00
Delyan Angelov
7957ec3186
v install: fix installing a single module
2019-08-11 17:35:55 +02:00
Alexander Medvednikov
72a7eb6e35
parser: do not allow 1 % 0
2019-08-11 14:47:34 +03:00
Stefanos Baziotis
02ea168f71
Fix deprecated error
2019-08-11 13:24:31 +02:00
Alexander Medvednikov
8f8e0dfad7
V ORM
2019-08-10 13:35:29 +02:00
iRedMail
c67783bcd1
v install: install multiple modules in one command: 'v install m1 m2 m3 …'
2019-08-10 12:21:31 +02:00
Julian Schurhammer
1864e92ff4
parser: disallow statements after a return, branch check $if, $else, switch, and loops correctly
2019-08-10 10:26:42 +02:00
Alexander Medvednikov
25d97ebbe4
v install: always build vget
2019-08-10 10:14:49 +02:00
Rendims
45766dcb2e
main: generate main body on new line
...
Fix issue #1551
2019-08-10 07:14:44 +02:00
Henrixounez
7879bde8bb
repl: enabled back and added automated tests
...
fixed typos and macos errors
2019-08-10 07:01:40 +02:00
Henrixounez
a81875b24b
REPL: checks if EOF
...
Check if newline to not create empty println
2019-08-10 00:10:42 +02:00
Henrixounez
146a9507c6
REPL: fix repl using older binary on piping
...
repl: delete binary files when exiting
2019-08-10 00:08:21 +02:00
Henrixounez
81cdda842c
compiler: fix panic on open bracket without newline
2019-08-09 22:39:29 +02:00
Delyan Angelov
5c29a7ef7d
v run: windows and repl fixes
2019-08-09 22:37:31 +02:00
Delyan Angelov
796b9dab74
compiler: passing -show_c_cmd should always print the C compiler command.
2019-08-09 13:02:25 +02:00
Alexander Medvednikov
ae0e3efb8e
scanner: experimental ≠ etc support
2019-08-09 09:32:51 +02:00
Julian Schurhammer
6a9bda806f
parser: panic and exit count as returns
2019-08-09 08:17:31 +02:00
Alexander Medvednikov
fbc480fbed
ft: rename to freetype
2019-08-08 16:43:11 +02:00
Alexander Medvednikov
5ea1c538b6
fn: fix & argument bug
2019-08-08 16:09:04 +02:00
joe-conigliaro
66ffa764dd
compiler: properly add submodule to types
2019-08-08 14:35:53 +02:00
joe-conigliaro
b8d37e0d53
properly add submodule to type
2019-08-08 10:33:47 +02:00
Alexander Medvednikov
27fad0f19b
ft: clean up
2019-08-08 10:08:44 +02:00
Julian Schurhammer
61983a6799
parser: check that functions return in all if/else branches
2019-08-08 09:49:56 +02:00
Julian Schurhammer
28147c0930
os.exec: return ?string instead of string
2019-08-08 07:30:05 +02:00
Alexander Medvednikov
1470b3da11
parser: better immutability error messages
2019-08-08 07:00:36 +02:00
Emily Hudson
802ff1d012
compiler: scoped defer + build tests with msvc
2019-08-07 17:51:21 +02:00
Joe Conigliaro
1270e8a9f2
fix error in msvc_win
2019-08-07 16:31:19 +02:00
Alexander Medvednikov
4b69d43f9f
fix examples
2019-08-07 14:16:10 +02:00
Alexander Medvednikov
78c20e02ee
tmp test fix
2019-08-07 13:50:28 +02:00
Alexander Medvednikov
4b86ba6f6a
main.v: fix msvc
2019-08-07 13:41:40 +02:00
Alexander Medvednikov
cebb6cd537
ft: minor fixes
2019-08-07 13:39:54 +02:00
Alexander Medvednikov
ff6e0df0a5
array: minor fixes
2019-08-07 13:39:54 +02:00
joe-conigliaro
511a3d3901
vlib.crypto+other: fix mut args
2019-08-07 13:37:07 +02:00
Alexander Medvednikov
818c4a14e5
compiler: fix a bug with mutable array args
2019-08-07 12:36:45 +02:00
joe-conigliaro
0bcc53c366
vlib: fix mutable args
2019-08-07 09:53:33 +02:00
Alexander Medvednikov
34e0b164eb
make function arguments immutable by default
2019-08-07 08:59:00 +02:00
Delyan Angelov
d072178cef
v run: recompile and execute changed file.v just once.
2019-08-07 08:04:40 +02:00
Alexander Medvednikov
52f473d1c7
all: fix immutable fn args
2019-08-07 05:28:00 +02:00
Alexander Medvednikov
76def48f01
compiler: make Windows headers work with clang-format
2019-08-07 05:28:00 +02:00
Alexander Medvednikov
8b75f2125a
http: init_module() to init openssl once
2019-08-06 14:03:01 +02:00
Alexander Medvednikov
bea8f6d7e5
http: remove libcurl dependency; replace it with a simple OpenSSL backend
2019-08-06 13:32:09 +02:00
Henrixounez
347e59d604
compiler: fix scanner overflowing string on numbers without newline
2019-08-06 11:50:09 +02:00
Alexander Medvednikov
7a7b5040e2
http: fix response headers and status code; clean up ft and gg
2019-08-06 03:06:27 +02:00
Marco Böttcher
aff8d05040
compiler: add a test case to ensure more stable local modules
2019-08-05 10:05:00 +02:00
joe-conigliaro
01c2d25ae5
compiler: rename pkg to mod and auto save file import table
2019-08-05 09:49:52 +02:00
S-YOU
5939238655
add @VMOD to resolve modules path
2019-08-05 09:42:50 +02:00
Joe Conigliaro
2fab73983b
add builtin import pass + use builder in map
2019-08-05 06:01:53 +02:00
Alexander Medvednikov
5ed338dc2e
bring back map.str()
2019-08-05 04:34:12 +02:00
Alexander Medvednikov
8d3617b3de
fix fn_test.v and urllib.v
2019-08-05 03:31:22 +02:00
Alexander Medvednikov
350e13679c
force ()
in complex bool expressions: (a && b) || c
instead of a && b || c
2019-08-05 03:22:28 +02:00
Delyan Angelov
0379b9cc69
compiler: conditional guard for platform specific #includes directives in _xxx.v files.
2019-08-05 02:17:49 +02:00
Emily Hudson
59a4c923c4
Fix for jsdecode struct initialisation
2019-08-04 13:42:48 +02:00
ma6174
12dfd5f016
fix Raspberry Pi build
2019-08-04 11:24:23 +02:00
Delyan Angelov
9a3570a5b3
compiler: proper line numbers in debuggers (fixes regression after 207bab5
).
2019-08-04 11:05:54 +02:00
Alexander Medvednikov
ee437de8d3
type name check fixes
2019-08-04 09:38:46 +02:00
Alexander Medvednikov
8bce5cb810
force snake_case in struct fields
2019-08-04 09:18:16 +02:00
Alexander Medvednikov
576192949d
fixed size array with const size: numbers := [N]int
2019-08-04 04:11:16 +02:00
Alexander Medvednikov
01531369f7
bring back local modules
2019-08-04 00:11:56 +02:00
Alexander Medvednikov
e446f988f7
clean up map initialization
2019-08-03 10:26:36 +02:00
Alexander Medvednikov
a5f5b52204
map := { 'foo': 'bar' }
syntax
2019-08-03 10:20:04 +02:00
Alvydas Vitkauskas
69084b0c57
change error printing format
2019-08-02 23:26:23 +02:00
Alexander Medvednikov
8ecd62e56f
comptime: fix app.$action() or {}
2019-08-02 05:20:18 +02:00
Alexander Medvednikov
f81562ee7e
vweb: 404
2019-08-02 04:11:42 +02:00
Alexander Medvednikov
a7e464fee9
user modules + v install
from vpm
2019-08-01 17:28:25 +02:00
Alexander Medvednikov
8058bf3750
http_nix.v: remove remaining C code
2019-07-31 23:01:06 +02:00
Alexander Medvednikov
15f1169102
disable REPL until it is fixed
2019-07-31 21:05:20 +02:00
Henrixounez
715bd21118
compiler: check is ptr when free in closing scope ( #1399 )
2019-07-31 19:21:49 +02:00
vitalyster
37a0e6ebef
Travis: run tests for Windows ( #1403 )
2019-07-31 19:01:52 +02:00
Henrixounez
7918a790b4
compiler: check if output file is a folder
2019-07-31 12:02:59 +02:00
Joe Conigliaro
8c04b5fe9c
use map.delete and last_node
2019-07-31 10:56:12 +02:00
Vitaly Takmazov
9b45b9ce66
repl: do not eat first line
...
for some reason first line was skipped
2019-07-31 10:52:39 +02:00
Alexander Medvednikov
ddb4f45b02
another map bug fix + fix some warnings
2019-07-31 10:47:58 +02:00
Vitaly Takmazov
68b46bb943
windows: utf-8 stdout was not initialized when we have main()
...
Initialization moved to init_consts for that
2019-07-31 10:20:40 +02:00
Vitaly Takmazov
f3d6bc9146
compiler: no need to optimize println on Windows
...
this fixes string interpolation
2019-07-31 10:01:02 +02:00
Alexander Medvednikov
a4882f1955
better C error message
2019-07-31 07:16:18 +02:00
Alexander Medvednikov
5c9a08ce81
v up: Windows fix
2019-07-31 04:49:29 +02:00
Alexander Medvednikov
f6e717a5fd
v up to update V
2019-07-31 04:40:38 +02:00
Alexander Medvednikov
8a7ddd102e
vweb: tmpl fixes
2019-07-31 04:00:43 +02:00
AtjonTV
5b68e2ff50
Fix module import errors by checking dirs with dir_exists
2019-07-30 19:57:27 +02:00
Alexander Medvednikov
79be98d2fb
Revert "Support for the printf optimisation for windows and wide strings"
...
This reverts commit acd28fa495
.
2019-07-30 18:28:00 +02:00
d2verb
9bcb5aaa55
defer: fix #1281
2019-07-30 18:05:06 +02:00
F1ssi0N
acd28fa495
Support for the printf optimisation for windows and wide strings
2019-07-30 18:04:19 +02:00
joe-conigliaro
5e57d099d7
v panic debug information
2019-07-30 15:08:14 +02:00
joe-conigliaro
74b3ef3a3f
minor module fixes
2019-07-30 03:49:47 +02:00
Alexander Medvednikov
626da27ad6
better C error message
2019-07-29 19:39:56 +02:00
Alexander Medvednikov
ba6bcdb469
fix vweb template compilation
2019-07-29 19:14:07 +02:00
Alexander Medvednikov
54f847a85b
V 0.1.17
2019-07-29 18:31:47 +02:00
Alexander Medvednikov
ce1288e946
clean up
2019-07-29 18:24:48 +02:00
Alexander Medvednikov
207bab5f79
generics, vweb, comptime codegen, etc
2019-07-29 18:24:48 +02:00
Delyan Angelov
f1373874ef
compiler: fix issue #1350 - an error is produced, when a void fn returns a value
2019-07-29 16:35:56 +02:00
joe-conigliaro
1a22482c09
move module tests
2019-07-28 17:20:24 +02:00
Joe Conigliaro
2a30564ed1
fix
2019-07-28 17:15:24 +02:00
Alexander Medvednikov
dbb64ec149
Revert "modules: fix "is not a directory" error"
...
This reverts commit d38940ad57
.
2019-07-28 01:22:15 +02:00
Alexander Medvednikov
d38940ad57
modules: fix "is not a directory" error
2019-07-28 01:11:38 +02:00
Alexander Medvednikov
b0913dc5a8
print "running [exe name]" only in verbose mode
2019-07-27 16:42:17 +02:00
F1ssi0N
720648703b
Hack interfaces into working with arguments
2019-07-27 16:30:57 +02:00
joe-conigliaro
26a1762156
make empty module dir error less confusing
2019-07-27 02:18:56 +02:00
Joe Conigliaro
3850227b46
use mod var
2019-07-27 01:14:35 +02:00
joe-conigliaro
7b95f09f86
detect import of non existent modules
2019-07-26 18:24:40 +02:00
joe-conigliaro
979917144f
internal modules
2019-07-26 18:02:58 +02:00
Emily Hudson
90bb48db5d
interactive debugging
2019-07-26 16:45:16 +02:00
Alexander Medvednikov
f7530234c7
fix Windows build
2019-07-25 15:05:44 +02:00
Alexander Medvednikov
2ad0d0200d
make the new mut check work with fn foo(mut bar)
2019-07-25 14:04:45 +02:00
Alexander Medvednikov
9ccd3bde01
do not allow declaring a mutable variable if it's never modified
2019-07-25 13:44:34 +02:00
Emily Hudson
dbf027acb8
MSVC: Use vswhere instead of mscrazy ( #1307 )
...
* Use vswhere + our own reg stuff instead of microsoft_craziness
* Cleanup code
* HKEY is a pointer so RegKey should be a pointer
2019-07-25 12:29:24 +02:00
Delyan Angelov
61fea2d82a
#! support on Unix systems
2019-07-25 12:27:59 +02:00
Alexander Medvednikov
3a8cdadcf5
free strings
2019-07-25 01:22:45 +02:00
Alexander Medvednikov
d1b732cbcc
function argument benchmark
2019-07-25 00:13:54 +02:00
Alexander Medvednikov
9837d6cf69
fix option_test.v
2019-07-24 22:49:16 +02:00
Alexander Medvednikov
d2b33397cc
optionals: better errors
2019-07-24 22:41:46 +02:00
Emily Hudson
049d78a78d
Change CGen so that v.c is compileable with msvc
2019-07-24 17:46:41 +02:00
Alexander Medvednikov
09c447e2b8
remove type keyword hack
2019-07-24 15:44:25 +02:00
Alexander Medvednikov
6b2063a2ea
mutable args: don't allow primitives
2019-07-24 15:33:41 +02:00
Alexander Medvednikov
7ea688aa43
fix mutable array args
2019-07-24 15:10:48 +02:00
Emily Hudson
32aae80a64
Windows: fix some heap corruptions, fix msvc not building with unicode flags, fix os.getwd, fix mscrazy using a less recent installation
2019-07-24 15:00:26 +02:00
Vitaly Takmazov
0bbefca875
Windows: unicode command line
2019-07-24 14:32:36 +02:00
Alexander Medvednikov
7f29928aec
examples: fix news_fetcher on Windows
2019-07-24 12:34:25 +02:00
vitalyster
fcb1f211e3
Windows Unicode I/O
2019-07-24 12:16:45 +02:00
Alexander Medvednikov
c28a490c17
@ for escaping keywords
2019-07-24 02:28:29 +02:00
Alexander Medvednikov
13e1b4edb1
V 0.1.16
2019-07-24 00:45:32 +02:00
Alexander Medvednikov
2291e9fcfe
Revert "Windows Unicode support"
...
This reverts commit 8462e99bc5
.
2019-07-24 00:24:34 +02:00
Alexander Medvednikov
b48e23757f
msvc fixes
2019-07-24 00:20:07 +02:00
d2verb
88758082d2
scanner.v: refactoring
2019-07-24 00:06:48 +02:00
vitalyster
8462e99bc5
Windows Unicode support
2019-07-23 23:40:24 +02:00
Emily Hudson
e25ea7f9dd
add MSVC C backend support; fix live code reloading on Windows; other Windows fixes
2019-07-23 23:23:13 +02:00
Alexander Medvednikov
3cf8e18cf6
include <pthread> on all BSDs
2019-07-23 23:15:21 +02:00
joe-conigliaro
b06cfd702d
module aliasing and sub modules for import () syntax
2019-07-23 23:12:55 +02:00
Alexander Medvednikov
527b9e13fa
key in map
syntax
2019-07-23 23:00:09 +02:00
Delyan Angelov
04bd8d7f7d
compiler: Fix for #1268 . Passing -o file.c, skips the C compiler invocation and leaves the intermediary file.c .
2019-07-23 13:35:19 +02:00
Delyan Angelov
a307a51b46
live reload: stability fixes
2019-07-22 19:08:32 +02:00
Alexander Medvednikov
390394b56b
string: make substr() copy the data, like in Java and C#; remove .cstr()
...
this makes managing memory used by strings much easier
V strings are now fully compatible with C strings
2019-07-22 17:03:45 +02:00
Alexander Medvednikov
01caee5b53
include <pthread> on macOS
2019-07-22 13:45:02 +02:00
joe-conigliaro
0ed240e123
modules: cycle error improvements
2019-07-22 12:44:08 +02:00
Delyan Angelov
a65ae726ee
live reload: fix SIGSEGV when calling dlclose, while a live fn is still running.
2019-07-22 12:25:41 +02:00
Alexander Medvednikov
e11c23a817
main.v: print how much time cc() took; more flags explained
2019-07-21 19:42:51 +02:00
Alexander Medvednikov
18d95114e0
testing: do not print anything if a test passed successfully
2019-07-21 17:59:25 +02:00
joe-conigliaro
135f200ea2
modules: cyclic import detection
2019-07-21 17:53:35 +02:00
Alexander Medvednikov
23c5f88f3e
Revert "Windows Unicode I/O "
...
This reverts commit 3e005074a3
.
2019-07-21 17:29:40 +02:00
Alexander Medvednikov
ac238a5362
allow multiple defers
2019-07-21 16:34:21 +02:00
Alexander Medvednikov
5d188130e5
fix memory free
2019-07-21 16:30:10 +02:00
Alexander Medvednikov
e2364f6285
main.v: update help
2019-07-21 14:42:54 +02:00
Alexander Medvednikov
40c31f701f
free arrays when they are out of scope
...
main.v: update help
2019-07-21 14:42:31 +02:00
vitalyster
3e005074a3
Windows Unicode I/O
2019-07-21 13:29:32 +02:00
Alexander Medvednikov
6e6f6bc387
free/malloc fixes
2019-07-21 12:36:21 +02:00
Alexander Medvednikov
3245377683
fix defer before returns
2019-07-21 00:52:21 +02:00
Alexander Medvednikov
1b4656a4dc
string cast: better error message
2019-07-21 00:04:34 +02:00
Alexander Medvednikov
c3c6648c57
string(bytes_array) cast
2019-07-20 22:03:38 +02:00
Alexander Medvednikov
769cda1d1f
simplify gg; remove forced OpenGL dependency; graph builder /w hot code reloading
2019-07-20 16:06:15 +02:00
Brian Callahan
876dee6435
OpenBSD needs pthread.h
...
Like Linux, OpenBSD also needs pthread.h (likely that all the BSDs do).
2019-07-20 11:48:06 +02:00
d2verb
67c2932f34
parser: change cur_line, tmp_line only in main pass
2019-07-18 20:21:23 +02:00
Delyan Angelov
38c58f9f1b
compiler: fix #1193 . Flag -c_options is now named -cflags.
...
You can also pass -cflags '-Os -fno-inline-small-functions'
2019-07-18 19:45:31 +02:00
Delyan Angelov
97e97222ee
live reload: All of the [live] functions are reloaded now, not just the first one.
2019-07-18 19:34:28 +02:00
joe-conigliaro
b3bdcfda42
Fix modules order
2019-07-18 19:25:46 +02:00
Alexander Medvednikov
382f85fa39
-live: fix an info message
2019-07-18 18:03:09 +02:00
Alexander Medvednikov
53b6c91d18
allow building code with [live] without -live
2019-07-18 16:02:06 +02:00
Delyan Angelov
1ef0f3b549
live reload: the reload_so function now uses too, instead of hard coding the v name (which some people do not have in their PATH or have as an alias)
2019-07-18 15:56:38 +02:00
joe-conigliaro
53ac6d352f
auto detect u64 const
2019-07-18 10:55:39 +02:00
Alexander Medvednikov
f5c8ee4742
string(buffer, len) cast
2019-07-18 04:50:44 +02:00
d2verb
92fbe56276
table: fix #1219
2019-07-18 04:32:49 +02:00
Alexander Medvednikov
c35adbea91
vfmt fixes
2019-07-17 21:00:39 +02:00
Alexander Medvednikov
7dc7502fe2
fix REPL and hot code reloading for users that don't have V in PATH
2019-07-17 19:23:47 +02:00
Alexander Medvednikov
b9f3f2d622
v script
2019-07-17 13:49:42 +02:00
Alexander Medvednikov
14ad70d3a0
match: else
2019-07-17 02:47:45 +02:00
Alexander Medvednikov
76d6e9fd1a
minor match_test.v fixes
2019-07-17 02:44:41 +02:00
Alexander Medvednikov
a9463a180d
new match statement
2019-07-17 02:41:08 +02:00
Igor Pershikov
3f506714ec
Fix bug with BOM
2019-07-17 00:05:04 +02:00
Delyan Angelov
5d0cb1437c
Add support for VFLAGS environment variable, merged with cmd args.
...
Using VFLAGS, you can pass common options through it to the V compiler,
without having to manually specify them everytime when you type V ...
In addition, since environment variables are *inherited*, all subprocess
V compilers, which V launches (for example when compiling with -live),
will *also* use the same VFLAGS environment variable.
Example usage:
export VFLAGS="-debug -show_c_cmd"
v -live message.v
=> This will keep *both* of the generated C source files .message.c
*AND* .message_shared_lib.c . It will also cause both V compile
subprocesses to print their resulting C compiler backend lines.
This is very useful when using GDB to debug problems.
2019-07-16 19:35:16 +02:00
Delyan Angelov
17580f3013
Support for passing different options to the C compiler backend.
...
Example: 'v -c_options=-Os' will pass -Os to the C compiler.
In effect the C compiler will optimize the generated binary for size.
2019-07-16 19:34:44 +02:00
Alexander Medvednikov
1748632144
do not create ~/.vlang directory
2019-07-16 17:44:25 +02:00
Alexander Medvednikov
8aa7da1be1
http_win: fix BUF_MAX
2019-07-16 15:29:27 +02:00
Alexander Medvednikov
54b069f9ad
fix high order fns
2019-07-16 14:39:34 +02:00
Alexander Medvednikov
8c516bec4f
[][]int
2019-07-16 13:56:48 +02:00
Alexander Medvednikov
31032d3a62
allow field 'type'
2019-07-16 13:01:39 +02:00
Alexander Medvednikov
830f63e86a
make maps work with structs defined in different modules
2019-07-16 12:18:52 +02:00
Alexander Medvednikov
0a4a9a35c3
.key_type
2019-07-16 12:17:17 +02:00
Alexander Medvednikov
eb7aee5ae0
store temp C files in the same directory
2019-07-16 02:12:05 +02:00
Alexander Medvednikov
cc06fe7ae6
os.dir(); fix vroot on Windows
2019-07-16 01:57:06 +02:00
Alexander Medvednikov
8902256592
V 0.1.15
2019-07-15 23:56:18 +02:00
Alexander Medvednikov
edbcefb811
fix and simplify VROOT
2019-07-15 23:33:31 +02:00
Alexander Medvednikov
840e496a51
force snake_case in variable names
2019-07-15 22:53:33 +02:00
Alexander Medvednikov
100bcc2034
use defer
2019-07-15 22:18:43 +02:00
Alexander Medvednikov
17c6ba04a2
defer statement
2019-07-15 22:13:12 +02:00
Alexander Medvednikov
62e6e03492
-ldl is only required on Linux
2019-07-15 20:40:37 +02:00
Alexander Medvednikov
9b020fad53
fix OpenBSD build
2019-07-15 20:22:48 +02:00
Alexander Medvednikov
374781da1a
OpenBSD, NetBSD, DragonFly support
2019-07-15 20:19:07 +02:00
Alexander Medvednikov
449fd372f9
*_nix.v support
2019-07-15 19:23:09 +02:00
Alexander Medvednikov
b36a9f7e55
glfw always on top
2019-07-15 19:23:09 +02:00
Delyan Angelov
37aff9b107
hot reload: no -sanitize is needed anymore, -live is now enough on both Linux and MacOS X
...
* hot reload for GL programs: force the main executable (the shared library loader) to be build with -rdynamic flag, when -live is passed to v compiler.
* hot reload: optimize away a redundant load_so/0 call at the start of the reload_so thread.
* hot code reload for MacOSX requires -flat_namespace flag instead of -rdynamic (on linux).
2019-07-15 17:32:00 +02:00
Alexander Medvednikov
7c6f59afa6
FreeBSD support
2019-07-15 17:24:44 +02:00
d2verb
4020a3ab8c
Prevent main function form returning value
2019-07-15 17:19:24 +02:00
d2verb
40ad868f22
Fix #1107
2019-07-15 16:30:06 +02:00
Henrixounez
48c06df5f5
parser: fix bug not printing percentages
2019-07-15 14:26:39 +02:00
d2verb
916b13b286
fix maps
2019-07-15 12:33:18 +02:00
Delyan Angelov
0556f5fd4e
When compiling with -shared (a step in compiling with -live), store the C intermediary file in a different file than main (loader) file, so that debugging symbol lookup information is correct (the files are not replaced constantly with each other).
2019-07-15 12:30:03 +02:00
Delyan Angelov
60ad97c4fb
fix hot code reloading for GUI example bounce on linux: works when compiled with 'v -live -sanitize bounce.v' .
...
It crashes with SIGSEGV, when -sanitize is not given.
Also thirdparty/glad/glad.o should be build with -fPIC .
2019-07-15 12:28:35 +02:00
Alexander Medvednikov
f7dbbf5810
re-write map.v and update the compiler
2019-07-14 22:08:17 +02:00
hazohelet
441281dd4f
parser: fix small typo
2019-07-14 16:48:57 +02:00
Alexander Medvednikov
48f841bb26
make enums defined in other modules work
2019-07-14 00:10:53 +02:00
joe-conigliaro
b4afa964fc
hash/crc32
2019-07-13 15:11:32 +02:00
Nick Treleaven
cec3ea5b4d
Document v -lib
and don't advertise --help
long option
...
--help and --version are accepted, but these don't fit the `-option`
format of V's other options. To avoid confusion, don't mention them.
2019-07-13 14:54:31 +02:00
d2verb
2811145437
Add enum_test.v
2019-07-13 12:19:57 +02:00
joe-conigliaro
298ca8676f
Change import syntax to "import as alias"
2019-07-13 12:15:16 +02:00
aguspiza
d0e7d0070d
fix travis windows user home
2019-07-12 20:35:01 +02:00
hazohelet
2a0d8072c1
delete unnecessary lines
2019-07-12 15:46:15 +02:00
joe-conigliaro
9a957ccc18
module aliasing & file import scope
2019-07-12 07:37:54 +02:00
Alexander Medvednikov
56b7c9e35f
for key, val in map syntax
2019-07-12 07:27:30 +02:00
hazohelet
b039538a27
parser: fix if expressions with multiple else if's
2019-07-12 06:54:01 +02:00
Alexander Medvednikov
5b3295db94
remove # from gg and glm
2019-07-12 06:50:25 +02:00
hazohelet
e15c2da1f4
enable else-if expression
2019-07-12 06:04:37 +02:00
Alexander Medvednikov
22b41c7873
V 0.1.14
2019-07-12 05:23:00 +02:00
hazohelet
560ba55572
enable consts with operators in scripts
2019-07-12 04:53:51 +02:00
Alexander Medvednikov
f834644db4
make gg work on Windows; prebuild glad and cJSON; new ft module
2019-07-12 04:50:14 +02:00
Alexander Medvednikov
da51fea605
fix disappearing printf when compiling with
2019-07-10 22:07:56 +02:00
Alexander Medvednikov
4a8ba9756f
disable u32 check for now
2019-07-10 22:05:50 +02:00
Alexander Medvednikov
9efe305093
fix Linux build
2019-07-10 21:57:15 +02:00
Alexander Medvednikov
3d4cd0bbc0
check integer const overflow at compilation
2019-07-10 21:22:03 +02:00
Alexander Medvednikov
1b09e37a80
fix typ_to_fmt()
2019-07-10 14:38:39 +02:00
Alexander Medvednikov
c8fc262da3
println: make aliases printable
2019-07-10 14:26:37 +02:00
Alexander Medvednikov
fba8443f30
allow defining methods on aliases
2019-07-10 14:18:21 +02:00
Alexander Medvednikov
9907f07602
fix the __ error message
2019-07-10 10:08:37 +02:00
Alexander Medvednikov
28843a12c7
cache string.hash()
2019-07-10 10:00:12 +02:00
Alexander Medvednikov
e1ddac1590
utf8: remove unused UTF8_CHAR_LEN macro and add a simple utf8 test
2019-07-10 09:07:04 +02:00
Alexander Medvednikov
68228f9977
parser: clean up submodule implementation a bit
2019-07-10 09:02:04 +02:00
Alexander Medvednikov
87762d6cf3
DOT => .dot
2019-07-10 02:07:54 +02:00
Alexander Medvednikov
c44d54fb4c
V 0.1.13
2019-07-10 02:03:09 +02:00
Alexander Medvednikov
26ef99293d
new enum syntax; update the compiler (p.tok == .name
)
2019-07-10 02:02:38 +02:00
Henrixounez
26af513e1b
repl: remove void line for unused and compile as repl
2019-07-09 20:55:37 +02:00
Delyan Angelov
932f6d1bef
Fix hot code reloading on linux
2019-07-09 20:54:23 +02:00
Henrixounez
7b1be8a2bd
CI: Add back erased commits and dont test hot code examples
2019-07-09 20:44:30 +02:00
Alexander Medvednikov
045d480c8c
clean up the examples a bit
2019-07-07 22:09:08 +02:00
Alexander Medvednikov
7fed451226
inotify TODO
2019-07-07 22:04:41 +02:00
Alexander Medvednikov
de8dc4cddb
hot code reloading examples
2019-07-07 22:02:27 +02:00
Nick Treleaven
af19aa5096
Fix #1021 - Optional or
branch doesn't define err
2019-07-07 01:24:36 +02:00
joe-conigliaro
8a2d25247f
submodules
2019-07-07 01:22:47 +02:00
aguspiza
36908fa304
fix for #1020
2019-07-07 01:20:56 +02:00
Alexander Medvednikov
59796a4168
small REPL fixes
2019-07-06 15:39:26 +02:00
Shivanjan Chakravorty
f630d3f342
main: vrepl interactive shell update
2019-07-06 12:07:44 +02:00
Henrixounez
28c2a949b2
compiler: fix errors on dots methods
2019-07-06 12:02:18 +02:00
hazohelet
204bcee951
fix typo
2019-07-06 12:01:58 +02:00
Alexander Medvednikov
68b7ae26b3
fix tests
2019-07-05 22:12:06 +02:00
Alexander Medvednikov
8d407cec90
another Windows \r\n bug fix
2019-07-05 22:07:44 +02:00
Alexander Medvednikov
871fb3831a
do not allow fn main() to return a value
2019-07-05 22:03:00 +02:00
Alexander Medvednikov
d47e2f113f
Revert "make function arguments immutable"
...
This reverts commit 0f0ed8d716
.
2019-07-05 02:44:22 +02:00
Alexander Medvednikov
0f0ed8d716
make function arguments immutable
2019-07-05 00:24:13 +02:00
Alexander Medvednikov
74dbb1bce3
interface: fix function is private bug
2019-07-04 23:30:11 +02:00
Alexander Medvednikov
92528205c1
minor fixes
2019-07-04 22:39:15 +02:00
Alexander Medvednikov
cc77d8cdd2
fix Windows line ending bug
2019-07-04 21:55:29 +02:00
Alexander Medvednikov
9b0bb2f72c
make.bat for easier compilation on Windows
2019-07-04 20:44:44 +02:00
Alexander Medvednikov
300ed59598
do not allow import builtin
2019-07-04 17:36:53 +02:00
Alexander Medvednikov
8f10e37370
make << work with appending arrays; PostgreSQL driver
2019-07-04 17:31:14 +02:00