Davide Beatrici
|
c9a5896468
|
bultin: always enable GC_THREADS, even with -d dynamic_boehm , otherwise multithread operation is unsafe (#15275)
According to upstream documentation, only GC_WIN32_THREADS is explicit.
This PR fixes a random memory corruption(s) with "-d dynamic_boehm" on OpenMandriva.
1679adc04d .log
```
DEBUG: + VFLAGS='-prod -d dynamic_boehm'
DEBUG: + /usr/bin/clang -Os -fomit-frame-pointer -g3 -gdwarf-4 -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fstack-protector-all --param=ssp-buffer-size=4 -m64 -mtune=generic -flto -std=gnu99 -w -o tmp_1 v.c -lm -lpthread -Os -fomit-frame-pointer -g3 -gdwarf-4 -Wstrict-aliasing=2 -pipe -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fstack-protector-all --param=ssp-buffer-size=4 -m64 -mtune=generic -flto -Wl,-O2 -Wl,--no-undefined -flto
DEBUG: + ./tmp_1 -no-parallel -o tmp_2 -prod -d dynamic_boehm cmd/v
DEBUG: + ./tmp_2 -o v -prod -d dynamic_boehm cmd/v
DEBUG: /var/tmp/rpm-tmp.mcjmqc: line 52: 644 Bus error (core dumped) ./v build-tools
```
|
2022-07-30 14:59:12 +03:00 |
|
yuyi
|
db79888daf
|
picoev: restore struct Picoev definition (#15278)
|
2022-07-30 14:30:13 +03:00 |
|
yuyi
|
6e8350a9c9
|
fmt: fix interface method with fntype argument (#15280)
|
2022-07-30 14:29:41 +03:00 |
|
yuyi
|
e6a04905e9
|
fmt: fix comptime method call (#15279)
|
2022-07-30 14:28:34 +03:00 |
|
yuyi
|
b6ce7cc198
|
checker: check invalid variable (fix #15240) (#15260)
|
2022-07-30 14:27:28 +03:00 |
|
Delyan Angelov
|
0133ff2cbf
|
checker: use reserved_type_names_chk.matches(word) instead of word in reserved_type_names
|
2022-07-29 23:23:34 +03:00 |
|
Delyan Angelov
|
f0a8d57735
|
checker: use array_builtin_methods_chk.matches(method_name) instead of method_name in array_builtin_methods
|
2022-07-29 23:23:34 +03:00 |
|
Delyan Angelov
|
336305daa5
|
scanner,parser,gen: use km.matches(word) instead of km.find(word) != -1
|
2022-07-29 23:23:33 +03:00 |
|
Delyan Angelov
|
2db8bd62a2
|
token: fix a new_keywords_matcher_from_array_trie bug (first word with idx 0 was ignored); add tests
|
2022-07-29 23:23:33 +03:00 |
|
Delyan Angelov
|
a42eb3b947
|
cgen: use a trie matcher for c_reserved checks as well
|
2022-07-29 23:23:32 +03:00 |
|
zakuro
|
8268df7e1d
|
parser: create and use Parser.unexpected to unify all unexpected token error messages (#15259)
|
2022-07-29 19:28:34 +03:00 |
|
yuyi
|
1be595605a
|
parser: fix optional fn argument (#15271)
|
2022-07-29 19:10:50 +03:00 |
|
yuyi
|
0bf23488dc
|
checker: check struct field's fn call (fix #15249) (#15257)
|
2022-07-29 19:00:51 +03:00 |
|
lemon
|
927ec1fadb
|
native: support || , && and simple boolean expression evaluation (#15256)
|
2022-07-29 07:17:01 +03:00 |
|
Delyan Angelov
|
04b28d11be
|
cgen: use switch for matches with integer literals, instead of an if else if ladder (#15254)
|
2022-07-29 00:36:29 +03:00 |
|
yuyi
|
17ce1a0e8d
|
parser: check undefined ident in if guard expr (#15253)
|
2022-07-28 19:13:41 +03:00 |
|
Delyan Angelov
|
242ade8938
|
os: fix File.eof on FreeBSD (feof is a C macro there)
|
2022-07-28 17:26:55 +03:00 |
|
Reuben Thomas
|
ed56c3957e
|
os: add File.reopen and File.eof methods (#15184)
|
2022-07-28 16:21:23 +03:00 |
|
Dialga
|
18ae726015
|
v.pkgconfig: add the default path for Debian 32bit (#15250)
|
2022-07-28 14:06:56 +03:00 |
|
Delyan Angelov
|
a16f9ac41f
|
mysql: include workaround for windows programs that just exit, when the libmysql.dll is not found, into vlib/mysql/README.md
|
2022-07-27 22:26:36 +03:00 |
|
l-m
|
10f3c9f127
|
builtin: add string.replace_char and string.normalize_tabs (#15239)
|
2022-07-27 22:04:39 +03:00 |
|
yuyi
|
60094d95e2
|
cgen: check comptime call method (no value) used as value (#15241)
|
2022-07-27 21:32:00 +03:00 |
|
yuyi
|
6a7eb82d9e
|
cgen: fix comptime for method call with arguments (#15236)
|
2022-07-27 03:22:05 +03:00 |
|
stringnick
|
afaab7ab4d
|
stdatomic: add/sub return result of op (#15235)
|
2022-07-27 03:21:03 +03:00 |
|
Hitalo de Jesus do Rosário Souza
|
e5e750d533
|
orm: default attribute (#15221)
|
2022-07-27 00:59:32 +03:00 |
|
yuyi
|
c976a691ad
|
scanner: correct error message of empty character literal (fix #15226) (#15228)
|
2022-07-26 15:07:08 +03:00 |
|
Bastian Buck
|
4ab72ccb69
|
os: add a security advisory for potential TOCTOU risks when using os.is_writable , os.is_executable etc (#15222)
|
2022-07-26 12:02:48 +03:00 |
|
yuyi
|
03b7c76b38
|
cgen: optimize auto_str_methods of [str:skip] fields (#15227)
|
2022-07-26 09:38:50 +03:00 |
|
yuyi
|
0b0c496eff
|
cgen: fix printing struct with skip fields (#15224)
|
2022-07-26 04:37:16 +03:00 |
|
Alexander Medvednikov
|
f1ebfb2d42
|
cgen: str:skip field
|
2022-07-25 17:25:47 +03:00 |
|
Alexander Medvednikov
|
5a3a145e99
|
gg: fix native draw_circle on macos
|
2022-07-25 17:25:47 +03:00 |
|
yuyi
|
f619becbdc
|
scanner: check undefined ident in string literal (#15212)
|
2022-07-25 14:28:47 +03:00 |
|
Hitalo de Jesus do Rosário Souza
|
82db1e4746
|
pg: improve pg README.md (#15206)
|
2022-07-25 08:32:21 +03:00 |
|
Andrew Compton
|
f9385f6300
|
os: make get_raw_line() should not break lines on \r on windows (fix #5900) (#15205)
|
2022-07-25 08:03:07 +03:00 |
|
Delyan Angelov
|
6a5db0df61
|
v.token: use a more performant KeywordMatcher in the scanner and parser (#15196)
|
2022-07-25 06:32:06 +03:00 |
|
Subhomoy Haldar
|
297cb5f89c
|
math.big: improve multiplication performance (#15200)
|
2022-07-24 19:35:37 +03:00 |
|
Hitalo de Jesus do Rosário Souza
|
1f3be99859
|
crypto: add an example of how to verify jwt tokens (#15198)
|
2022-07-24 10:27:21 +03:00 |
|
yuyi
|
5464de406c
|
cgen: fix custom str on struct with too many fields (#15195)
|
2022-07-24 10:15:22 +03:00 |
|
Delyan Angelov
|
de0683fe30
|
tests: fix compilation of tcp_test.v
|
2022-07-23 23:33:43 +03:00 |
|
Delyan Angelov
|
c63fed5393
|
tests: remove needless import math in translated_test.v
|
2022-07-23 23:24:17 +03:00 |
|
Alexander Medvednikov
|
d6de53362f
|
checker: improve unused label check
|
2022-07-23 01:36:27 +03:00 |
|
Alexander Medvednikov
|
4d3401c852
|
checker: check for unused labels
|
2022-07-23 01:25:20 +03:00 |
|
Reuben Thomas
|
2ffad85f06
|
doc: remove misleading comment about stdin() (#15154)
|
2022-07-23 00:22:50 +03:00 |
|
yuyi
|
b0c32e0dbf
|
checker: fix fn variadic with enum value (#15177)
|
2022-07-22 16:08:22 +03:00 |
|
yuyi
|
092f5f0bf8
|
checker: fix comptime if in const declaration (fix #15160) (#15169)
|
2022-07-22 16:03:45 +03:00 |
|
zakuro
|
9ec8a99243
|
parser: cleanup orblock duplicate code (#15173)
|
2022-07-22 12:36:50 +03:00 |
|
Delyan Angelov
|
e9809572b1
|
ast: use const empty_expr instead of fn empty_expr (thanks to Joe Conigliaro for the idea) (#15175)
|
2022-07-22 12:14:46 +03:00 |
|
Delyan Angelov
|
c6aea659e3
|
cgen,ci: fix v -usecache self on macos
|
2022-07-22 11:43:20 +03:00 |
|
Delyan Angelov
|
f75d7eb114
|
ci: fix v build-examples (use voidptr(u64(0)) inside vlib/js/dom/dom.js.v)
|
2022-07-21 23:08:18 +03:00 |
|
Delyan Angelov
|
5340f8afea
|
ci: fix vlib/v/checker/tests/nil.vv and its .out file
|
2022-07-21 23:05:02 +03:00 |
|