lutherwenxu
5c79c0e743
compiler: enforce reserved keywords replacement
...
* compiler: Enforce reserved keywords replacement on empty value initialization
* compiler: Add test for reserved keywords enforcement
A new struct has been introduced in the tests that contains all C reserved keywords that are not reserved in V. Some read and write are tested too.
2019-09-28 14:13:09 +03:00
joe-conigliaro
0fc9ada0aa
parser: use actual blank ident for consts
2019-09-28 13:59:54 +03:00
luoheng
5348c667cc
compiler/parser: fix single element in array error
2019-09-28 13:50:30 +03:00
joe-conigliaro
802da8f31d
compiler: clean up. remove new_parser_string_id ( #2140 )
...
* clean up
* fix comment
* fix comment
2019-09-28 04:56:05 +03:00
Alexander Medvednikov
dd58298500
compiler: fix interfaces after the recent tokens change
2019-09-27 21:01:08 +03:00
unknown-v
14a8d4ae3c
parser: replace "≠" with "!="
2019-09-27 18:55:30 +03:00
joe-conigliaro
ad99b82930
compiler: make vgen use strings.Builder & allow parser creation from string
2019-09-27 14:02:01 +03:00
Alexander Medvednikov
8cbfd7a9da
parser: partial interface fix
2019-09-27 06:03:54 +03:00
Alexander Medvednikov
8f9c0b621e
parser: fix columns in errors
2019-09-27 05:27:57 +03:00
Alexander Medvednikov
da43267e09
parser: cached tokens (second step)
2019-09-27 04:01:12 +03:00
Alexander Medvednikov
a45255337d
bring back "parser: cache tokens (first step)"
...
This reverts commit 0fcdd7db35
.
2019-09-27 04:00:48 +03:00
Alexander Medvednikov
0fcdd7db35
Revert "parser: cache tokens (first step)"
...
This reverts commit 8992707fbb
.
2019-09-26 06:05:18 +03:00
Alexander Medvednikov
8992707fbb
parser: cache tokens (first step)
2019-09-26 05:20:08 +03:00
Alexander Medvednikov
04e4018228
compiler: small fixes + some logic for freeing strings
2019-09-26 03:24:58 +03:00
joe-conigliaro
d4bae356ba
compiler/vlib: add error for no new vars in loop ("_,_") & remove "." from errors
2019-09-25 17:59:50 +03:00
joe-conigliaro
8974aa4513
compiler/vlib: change _ :=
to _ =
and disable _ :=
2019-09-25 15:10:45 +03:00
joe-conigliaro
746655c1d5
compiler: re assignable blank identifier _
& no longer a variable
2019-09-25 14:53:44 +03:00
Alexander Medvednikov
55d09d23b4
compiler: rename cerror() to verror(); some small optimizations
2019-09-24 19:38:04 +03:00
joe-conigliaro
3317d7fd7c
compiler: clean up multiple returns and verify number of returned values
2019-09-24 13:14:04 +03:00
joe-conigliaro
a44a03f9a5
compiler: fix mark_var_used()
2019-09-24 06:18:06 +03:00
Alexander Medvednikov
d74c91616f
remove all p.log()'s
2019-09-23 23:18:55 +03:00
Alexander Medvednikov
d2d75f3824
parser: do not allow "int?", only "?int"
2019-09-23 23:17:06 +03:00
Alexander Medvednikov
f27f3515ae
compiler: optimize mark_var_used() etc
2019-09-23 23:06:40 +03:00
Alexander Medvednikov
8d52d877fb
compiler: free local_vars
2019-09-23 22:16:52 +03:00
Alexander Medvednikov
bf1ee28194
ui: Objective-C @interface support for Cocoa; minor clean-ups
2019-09-23 15:54:17 +03:00
joe-conigliaro
422ba3a3ce
compiler: unused module check always
2019-09-23 15:11:05 +03:00
joe-conigliaro
23c84516e2
compiler: error on unused imports
2019-09-23 13:42:20 +03:00
joe-conigliaro
23e30962b9
compiler: multiple returns - add test & fix use with array/map
2019-09-23 13:39:35 +03:00
joe-conigliaro
60d932e57d
compiler: functions with multiple returns
2019-09-23 05:45:19 +03:00
Alexander Medvednikov
b4207e1be7
compiler: allow "u64_var == 0" without casting the const literal
2019-09-23 02:14:10 +03:00
Delyan Angelov
7421781150
CI: split jobs into more steps; compiler: fix "v test v" with tcc
2019-09-22 17:24:15 +03:00
luoheng
f1d5f8e2bf
parser: allow !
only with bools
2019-09-21 18:21:45 +03:00
Henrixounez
ffcff9ebd4
builtins: ustring comparisons, concatenation and other functions
2019-09-20 19:07:38 +03:00
Delyan Angelov
f042dfb861
compiler: fix line numbers in unused variable error messages
2019-09-20 13:42:37 +03:00
Alexander Medvednikov
b6bb6a5a60
do not allow go print()
2019-09-19 18:02:31 +03:00
Alexander Medvednikov
ad6ab39287
table: use ?Var in find_const()
2019-09-19 14:19:44 +03:00
Alexander Medvednikov
f629069572
autofree: free strings
2019-09-19 14:04:27 +03:00
Alexander Medvednikov
cb31eeec55
compiler: first step to require explicit definition of imported C fns
2019-09-19 05:16:25 +03:00
Alexander Medvednikov
13e4c79f58
table: use optional in find_method()
2019-09-19 04:56:22 +03:00
Danil-Lapirow
b0092235fc
parser: fix a more complicated "in" usage
2019-09-18 16:13:22 +03:00
joe-conigliaro
695d4018ea
compiler: let attributes work with pub functions
2019-09-18 15:32:55 +03:00
Alexander Medvednikov
040d03912b
table: use an optional for find_fn()
2019-09-18 15:06:34 +03:00
Alexander Medvednikov
d180324413
find_field: use optional
2019-09-18 14:28:11 +03:00
Alexander Medvednikov
d1500511e6
"none" keyword for optionals + more memory fixes
2019-09-18 14:15:10 +03:00
Alexander Medvednikov
ecffa8e1d9
v.js: fix for ..
2019-09-17 22:21:44 +03:00
Alexander Medvednikov
1397d532c6
compiler: check if mutable receivers are modified
2019-09-17 13:10:43 +03:00
joe-conigliaro
cbd4478b5e
compiler: fix msvc empty struct & enable travis msvc
2019-09-16 13:01:07 +03:00
Alexander Medvednikov
3db4d66824
operator | not defined on bool
2019-09-15 19:35:48 +03:00
Alexander Medvednikov
48c05b5a45
cgen: use *char in all functions with *char args to avoid warnings
2019-09-15 18:56:33 +03:00
Alexander Medvednikov
5cc81b91cb
JavaSript backend (early stage)
2019-09-15 03:49:57 +03:00