Commit Graph

3610 Commits (89521584a2c79975a815c11de70c6c543db4c5e1)

Author SHA1 Message Date
Delyan Angelov 578de634fe
sync: move pool related code to `sync.pool`, cleanup, add a README.md 2021-02-11 10:55:23 +02:00
Delyan Angelov 93c1c1cec3
builder: add generated C lines with -stats too 2021-02-11 08:38:09 +02:00
zakuro f371803a32
cgen: move comp_if_to_ifdef to comptime.v (#8668) 2021-02-11 01:22:49 +01:00
Delyan Angelov de287c0add
builder: add C source code size info on -stats 2021-02-10 19:12:12 +02:00
zakuro 4305ce1493
checker: extract long match branches in c.stmt(), into separate checker functions (#8666) 2021-02-10 18:51:41 +02:00
Delyan Angelov 4646c414d8
checker: fix -skip-unused with struct inits with default expressions 2021-02-10 18:25:57 +02:00
yuyi f2e74bce7a
checker: fix sumtype assign error (fix #7988) (#8655) 2021-02-10 10:59:56 +01:00
Alexander Medvednikov 035a163454 json: encode_pretty (p. 2) + tests 2021-02-10 10:17:29 +01:00
Alexander Medvednikov f67e4ab57c json: encode_pretty (p. 1) 2021-02-10 10:13:06 +01:00
yuyi 95c3ef3a6a
cgen: minor cleanup in stmt() (#8659) 2021-02-09 23:00:43 +01:00
Uwe Krüger f3c5f24c17
allow `lock` expression to return multiple objects (#8657) 2021-02-09 17:09:10 +02:00
Nick Treleaven d37fb5641f
parser: improve printing of unexpected tokens (#8654) 2021-02-09 17:07:30 +02:00
Delyan Angelov 5308b63a01
ci: fix the `-cflags "-Werror"` job, by explicit casting to `void**` 2021-02-09 14:22:51 +02:00
Delyan Angelov d110f0de74
tests: add a regression test for 3d2afcf 2021-02-09 14:11:09 +02:00
Delyan Angelov 3d2afcf02e
cgen: fix gohandle_name generation (use .cname) 2021-02-09 12:55:05 +02:00
spaceface 1bb4be17d8
cgen: remove srwlock definition workaround for tcc on windows (#8652) 2021-02-09 12:44:18 +02:00
spaceface 4152c704f3
sokol: remove `.lib` extensions in `#pragma` directives (#8639)
fixes tcc on windows - this kind of fix has been done several times in the past, and should probably be upstreamed to sokol soon to prevent things from breaking every time we update the headers.
2021-02-09 11:36:01 +02:00
Alexander Medvednikov bfee8a528c cgen: add "case" to c_reserved 2021-02-09 03:49:19 +01:00
Swastik Baranwal 09cff69919
all: allow using aliases as keys in map (#8589) 2021-02-08 18:51:05 +01:00
Lukas Neubert 8cb01ba8db
fmt: keep comments between and after imports (#8637) 2021-02-08 19:48:48 +02:00
Lukas Neubert cb1f63f765
parser: replace eat_line_end_comments() with configurable eat_comments() (#8636) 2021-02-08 18:16:02 +02:00
Lukas Neubert 5abd49d9bc
cgen: cast default struct field value to correct SumType/interface (#8619) 2021-02-08 17:33:05 +02:00
Swastik Baranwal e2ff26a066
cgen: fix gen of .sort method for `>` operator and improve grammar of error (#8615) 2021-02-08 17:19:54 +02:00
Nick Treleaven e2ff2a5405
parser: deprecate `{var |` struct update (#8618) 2021-02-08 17:03:05 +02:00
yuyi f2100166c7
cgen: minor cleanup in gen_str_for_option (#8622) 2021-02-08 17:00:51 +02:00
Nick Treleaven 9e751f72c4
doc, fmt: use `map{key: value}` syntax for map literals (#8623) 2021-02-08 16:57:42 +02:00
zakuro 8ae23cd89e
parser: make `v := f(v)' an undefined variable error (#8634) 2021-02-08 16:55:01 +02:00
zakuro e5839effbc
checker/cgen: allow `<<` operator for aliases (#8561) 2021-02-08 01:41:47 +01:00
Lukas Neubert 473cd1d416
fmt: single line ternary return (#8605) 2021-02-08 00:28:46 +01:00
Uwe Krüger 118ca1240e
all: allow `shared` element types for `struct` and arrays (#8631) 2021-02-08 00:28:29 +01:00
Lukas Neubert 7f4c582f1a
fmt: unwrap long infix exprs inside parenthesis if necessary (#8609) 2021-02-07 23:10:39 +01:00
Nick Treleaven ff1aa06455
parser: require ++/-- to be on the same line as the previous token (#8621) 2021-02-07 23:10:16 +01:00
yuyi 81e8c3bc1b
cgen: minor optimization in infix_expr (#8625) 2021-02-07 17:22:54 +01:00
zakuro 9f59b04e86
fmt: remove unused selective imports (#8595) 2021-02-07 03:58:43 +01:00
Nick Treleaven cd4f7101f7
parser: support short struct update syntax `{...ident,` (#8613) 2021-02-07 03:43:51 +01:00
Nick Treleaven b92f980274
token: fix Token.str() for punctuation and operators (#8610) 2021-02-07 03:40:00 +01:00
Delyan Angelov d77bb2f606
all: improve -skip-unused, track consts, walk all AST nodes, support tests 2021-02-07 02:51:45 +02:00
Nick Treleaven f5f65f929f
parser: parse `map{key_expr: val_expr}` (#8608) 2021-02-06 22:13:24 +01:00
Lukas Neubert db0fc8fbc9
fmt: better function call wrapping inside ternary if branches (#8604)
* fmt: better funcation call wrap in singel line ifs

* tests

* format files
2021-02-06 21:46:52 +01:00
Uwe Krüger cf230644b6
fmt: enable shared return types (#8614) 2021-02-06 21:25:06 +01:00
Uwe Krüger 5343f1374b
all: allow functions to return `shared` object (#8606) 2021-02-06 19:41:52 +01:00
zakuro fe9d062b41
gen: fix bug where unreached defer is executed (#8594) 2021-02-06 18:40:39 +02:00
Delyan Angelov e57b73bcfc
ci: fix the using_comptime_env.vv test (execute only on ubuntu-tcc again) 2021-02-06 13:07:21 +02:00
Swastik Baranwal 9b839b3b7d
cgen: fix gen of `>` operator overloading (#8600) 2021-02-06 12:59:20 +02:00
Delyan Angelov 1fcac4098b
tests: use a serial task runner for -skip-unused too 2021-02-06 10:08:59 +02:00
Delyan Angelov 167773dd1c
checker: make -skip-unused process a list of root functions, not just main.main 2021-02-06 09:41:24 +02:00
Uwe Krüger ab279dace7
cgen: support `shared` initialization from call returning optional (#8593) 2021-02-06 03:07:05 +01:00
yuyi 1b6efebac7
all: fix map = map2 assignment (#8581) 2021-02-06 03:06:34 +01:00
Delyan Angelov ed6fc79fbe
ci: run the -skip-unused tests on linux (so local testing is easier) 2021-02-05 20:03:24 +02:00
Delyan Angelov 99822e51de
ci: force println_os_executable.vv to have a stable output on all OSes 2021-02-05 20:01:02 +02:00