7171 Commits

Author SHA1 Message Date
Vexu
a6960b89ed
translate-c-2 fix container type resolution 2019-12-17 22:05:07 +02:00
Vexu
65531c73a9
translate-c-2 switch 2019-12-17 17:19:28 +02:00
Vexu
0283ab8a1a
translate-c-2 conditional operator 2019-12-17 12:06:28 +02:00
Vexu
daa22d42b0
translate-c-2 floats 2019-12-17 11:28:56 +02:00
Vexu
9cda93a24e
translate-c-2 don't shadow primitive types 2019-12-17 10:20:02 +02:00
Andrew Kelley
b242c2ac10
avoid using undefined value
closes #3933
2019-12-16 22:47:19 -05:00
Vexu
ab6fe57462
translate-c-2 for loops 2019-12-17 01:40:06 +02:00
Vexu
d54bcb2b62
translate-c-2 break and continue 2019-12-16 23:54:16 +02:00
Andrew Kelley
b1abe4a172
Revert "added -- to pass args to zig build commands"
This reverts commit d4e56ae6ae15ed1b062b0d775893abb5579fc66d.

This broke the build
2019-12-16 16:36:42 -05:00
Dmitry Atamanov
744133acb1 Fixes utf8ToUtf16Le (#3923) 2019-12-16 16:27:26 -05:00
emekoi
d4e56ae6ae added -- to pass args to zig build commands 2019-12-16 16:24:54 -05:00
Andrew Kelley
13cdc137e6
Merge pull request #3570 from ziglang/c-sanitize-undef
use -fsanitize=undefined for C code in safe build modes
2019-12-16 16:17:52 -05:00
LemonBoy
de0d8885b4 Fix alignment query on unresolved types
Fixes #3919
2019-12-16 15:54:06 -05:00
Vexu
6a3d48353b
translate-c-2 while loops 2019-12-16 22:10:17 +02:00
Andrew Kelley
839b3a61ad
expose the ability to disable C sanitization
and disable C sanitization when building libcs.
Empirically, they seem to trigger undef-sanitization.
2019-12-16 13:51:21 -05:00
Andrew Kelley
f8cd981c04
use -fsanitize=undefined for C code in safe build modes
closes #3569
2019-12-16 13:06:02 -05:00
Henry Wu
170de5ecae generated docs: log trace instead of error
When the error occurred for getValueText it could potentially omit
useful documentation since the page stops rendering.
2019-12-16 12:40:38 -05:00
xackus
cb5a5ebb20 langref table of contents in a separate column on large displays 2019-12-16 12:25:56 -05:00
Andrew Kelley
b3cbf290c8
remove misleading documentation 2019-12-16 12:07:05 -05:00
Andrew Kelley
496f271d17
Merge branch 'shawnl-lessThan'
* always allow integer comparison operations no matter the
   bit width, signedness, or comptime-ness of operands.
   closes #2133
 * implement comparisons for vectors, which returns vector of
   bools.

closes #3001
2019-12-16 11:39:13 -05:00
Andrew Kelley
1cad0acc7e
add behavior test for vector comparison 2019-12-16 11:22:28 -05:00
Vexu
e3f1bfe483
translate-c-2 if statements 2019-12-16 18:19:37 +02:00
Vexu
626562555e
translate-c-2 wors-case assign 2019-12-16 18:19:37 +02:00
Vexu
d9527edfe0
translate-c-2 comma operator 2019-12-16 18:19:24 +02:00
Andrew Kelley
9468d63819
allow comparison of any numeric types 2019-12-16 11:09:10 -05:00
Lachlan Easton
fe0e8c87b7 Tokenizer: Copy optional tokens prior to being set to null #3737 (#3910)
* Tokenizer: Copy optional tokens prior to being set to null #3737

* Add TODO comments, reminder to audit copying optional pattern.
2019-12-16 11:01:02 -05:00
Andrew Kelley
0f09ff4923
Merge pull request #3916 from Vexu/translate-c-2
Translate-c-2 macros
2019-12-16 10:55:32 -05:00
Andrew Kelley
650acc5e3d
Merge pull request #3922 from LemonBoy/eventfd-err
More eventfd stuff
2019-12-16 10:45:09 -05:00
Vexu
04dc0bd0e4
translate-c-2 variable aliasing 2019-12-16 12:45:00 +02:00
LemonBoy
9d9b0720f5 Fix for the error codepath in ChildProcess 2019-12-16 10:57:29 +01:00
LemonBoy
c257f892fd Revert "Revert "Use eventfd in ChildProcess on Linux""
This reverts commit 2c7a2aefbfd0dbab190f912b4fbcbda96fb5ac44.
2019-12-16 10:56:53 +01:00
Merlyn Morgan-Graham
0c03fe48b3 Fix compile errors after rebasing on master (missing switch->else) 2019-12-16 01:37:53 -08:00
Merlyn Morgan-Graham
89ef635b35 Add boolean and, boolean or binary ops in translate-c-2 2019-12-16 01:34:05 -08:00
Merlyn Morgan-Graham
acff2d407b Add bit shift binary ops in translate-c-2 2019-12-16 01:34:04 -08:00
Merlyn Morgan-Graham
c8c89648b0 Add comparison and bitwise binary ops in translate-c-2 2019-12-16 01:34:04 -08:00
Vexu
a37caaa528
translate-c-2 parameter name aliasing 2019-12-16 10:39:31 +02:00
Shawn Landden
143603b39f
std: lessThan and greaterThan between signed and unsigned
It is a deviation from C, but I think we should consider making this the behavior
of the operators. See #2133
2019-12-16 01:41:26 -05:00
Andrew Kelley
2c7a2aefbf
Revert "Use eventfd in ChildProcess on Linux"
This reverts commit b169f7b0d51fa9e7cf570479079369b9736093ff.

This caused `integer cast truncated bits` at
std/child_process.zig:801:12

Can be reproduced on my machine simply by running `make`.
2019-12-16 01:39:41 -05:00
Vexu
620bf695e8
organize tests 2019-12-16 07:43:18 +02:00
Vexu
0f38410ea6
improve extern enum 2019-12-15 19:28:53 -05:00
Vexu
ab60c8e28f
c tokenizer escape sequences 2019-12-16 00:55:50 +02:00
Vexu
9f0e83a571
translate-c-2 macro functions 2019-12-15 23:46:35 +02:00
LemonBoy
59de23dfa0 Don't assume TLS storage has a fixed address
Fixes #3433
2019-12-15 16:23:42 -05:00
LemonBoy
b169f7b0d5 Use eventfd in ChildProcess on Linux
Closes #819
2019-12-15 14:43:37 -05:00
LemonBoy
f1407b4b7e Generate the fn pointers into the correct address space
Fixes #3645
2019-12-15 14:42:53 -05:00
LemonBoy
19ddbd9e9e Make sure the address is aligned for intToPtr ops
Closes #773
2019-12-15 14:41:05 -05:00
Vexu
ed2a19dcec
translate-c-2 macro cast 2019-12-15 21:32:30 +02:00
Vexu
57170f9eb6
translate-c-2 macro inline fn 2019-12-15 19:28:34 +02:00
Vexu
75218d4765
translate-c-2 macros 2019-12-15 14:44:11 +02:00
Vexu
c3724a6e72
translate-c-2 c tokenizer 2019-12-15 10:30:38 +02:00