Andrew Kelley
b6bb0ee1ac
Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen
...
Conflicts:
* lib/std/os/linux/tls.zig
* test/behavior/align.zig
* test/behavior/atomics.zig
* test/behavior/vector.zig
2021-05-08 10:53:22 -07:00
Andrew Kelley
530e67cb86
Merge pull request #8683 from LemonBoy/thumblinux
...
Initial bringup for Linux/Thumb2
2021-05-06 12:50:34 -04:00
Andrew Kelley
fc40d23723
Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen
...
Conflicts:
* build.zig
* lib/std/array_list.zig
* lib/std/c/ast.zig
* lib/std/c/parse.zig
* lib/std/os/bits/linux.zig
2021-05-05 10:48:22 -07:00
LemonBoy
afbcb6209d
std: Initial bringup for Linux on Thumb2
...
There are some small problems here and there, mostly due to the pointers
having the lsb set and disrupting the fn alignment tests and the
`@FrameSize` implementation.
2021-05-04 18:52:53 +02:00
lithdew
96fe49ef62
std/os/bits/windows: add timeval extern struct
2021-05-03 14:49:10 +09:00
lithdew
16fc1b904c
std/os/linux/bits: correct socket option codes for ppc/ppc64
2021-05-03 14:49:10 +09:00
lithdew
cc6714a929
std/os/bits: add timeval struct for riscv64 linux
2021-05-03 14:49:10 +09:00
lithdew
13068da43e
x/os, x/net: re-approach Address, rename namespace TCP -> tcp
...
Address comments from @ifreund and @MasterQ32 to address unsafeness and
ergonomics of the `Address` API.
Rename the `TCP` namespace to `tcp` as it does not contain any
top-level fields.
Fix missing reference to `sockaddr` which was identified by @kprotty in
os/bits/linux/arm64.zig.
2021-05-03 14:49:10 +09:00
lithdew
2ab588049e
x/os, x/net: layout tcp, ipv4/ipv6, and socket abstractions
...
The `Socket` abstraction was refactored to only comprise of methods that
can be generically used/applied to all socket domains and protocols.
A more comprehensive IPv4/IPv6 module derived from @LemonBoy's earlier
work was implemented under `std.x.os.IPv4` and `std.x.os.IPv6`. Using
this module, one can then combine them together into a union for example
in order to optimize memory usage when dealing with socket addresses.
A `TCP.Client` and `TCP.Listener` abstraction is introduced that is one
layer over the `Socket` abstraction, which isolates methods that can
only be applied to a "client socket" and a "listening socket". All prior
tests from the `Socket` abstraction, which all previously operated
assuming the socket is operating via. TCP/IP, were moved. All TCP socket
options were also moved into the `TCP.Client` and `TCP.Listener`
abstractions respectively away from the `Socket` abstraction.
Some additional socket options from @LemonBoy's prior PR for Darwin were
also moved in (i.e. SIGNOPIPE).
2021-05-03 14:49:10 +09:00
LemonBoy
69a9c1488d
std: Add signal numbers for SPARC
2021-05-01 12:25:40 +02:00
LemonBoy
527053a4e4
std: Import correct errno defs for SPARC
...
Taken from Linux arch/sparc/include/uapi/asm/errno.h
2021-05-01 11:03:59 +02:00
Andrew Kelley
4307436b99
move behavior tests from test/stage1/ to test/
...
And fix test cases to make them pass. This is in preparation for
starting to pass behavior tests with self-hosted.
2021-04-29 15:54:04 -07:00
Andrew Kelley
df24ce52b1
Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen
...
In particular I wanted to take advantage of the new hex float parsing
code.
2021-04-28 14:57:38 -07:00
Andrew Kelley
95b42f9e6b
Merge pull request #8604 from hoanga/haiku-support-sysdefs
...
further haiku support system definitions
2021-04-26 16:12:23 -04:00
lithdew
98706c9686
x: fmt source code
2021-04-25 21:15:02 +09:00
Andrew Kelley
e86cee258c
Merge remote-tracking branch 'origin/master' into stage2-whole-file-astgen
...
In particular I wanted the change that makes `suspend;` illegal in the
parser.
2021-04-24 10:44:41 -07:00
Al Hoang
762d4a959c
update haiku system constants
2021-04-23 23:40:42 -05:00
Andrew Kelley
507a8096d2
std: fix compile errors caught by stage2 AstGen
...
* `comptime const` is redundant
* don't use `extern enum`; specify a tag type.
`extern enum` is only when you need tags to alias. But aliasing tags
is a smell. I will be making a proposal shortly to remove `extern enum`
from the language.
* there is no such thing as `packed enum`.
* instead of `catch |_|`, omit the capture entirely.
* unused function definition with missing parameter name
* using `try` outside of a function or test
2021-04-22 18:07:46 -07:00
LemonBoy
e4f9a3041a
std: Use stat definition with 32bit *time fields
...
We're not ready for Y38K yet.
2021-04-21 16:31:30 +02:00
Andrew Kelley
429cd2b5dd
std: change @import("builtin") to std.builtin
2021-04-15 19:06:39 -07:00
Benjamin Feng
2e85eb2bf8
Rename time32 syscalls to match rest of stdlib
2021-04-10 22:47:22 -05:00
Benjamin Feng
df910b33f4
Add ppc Linux bits
2021-04-10 22:47:22 -05:00
Michael Dusan
341dc03b63
netbsd: minor fixes to allow stage1 to build
2021-04-07 16:26:21 -07:00
Vincent Rischmann
5ce4524027
os/bits/linux: add IPv6 socket options
2021-04-04 20:43:41 +03:00
Vincent Rischmann
3dd8396a55
os/linux: fix IO_Uring.timeout
...
According to the io_uring PDF (https://kernel.dk/io_uring.pdf ) the
timeout struct must be 64 bits on both 32 and 64 bit architectures.
2021-03-02 14:13:11 +02:00
Andrew Kelley
a20169a610
zig fmt the std lib
2021-03-01 20:04:28 -07:00
daurnimator
1f17221bc4
std: add sendmsg
2021-02-28 21:57:43 +02:00
Al Hoang
c17396691c
initial support for haiku sync update
...
* add cpu count
* use haiku find_directory
* add definitions and exports for building in haiku
2021-02-25 16:41:42 -07:00
Al Hoang
6b0372229d
initial support for haiku continue clean up
...
* remove unused definitions
* setup os specific blocks
2021-02-25 16:41:42 -07:00
Al Hoang
025635c3f8
initial support for haiku past stage0
2021-02-25 16:41:42 -07:00
Andrew Kelley
5f35dc0c0d
zig fmt the std lib
2021-02-24 21:29:23 -07:00
data-man
340825a7af
Add epoll_pwait2 Linux syscall
2021-02-21 11:47:13 +02:00
Tadeo Kondrak
5dfe0e7e8f
Convert inline fn to callconv(.Inline) everywhere
2021-02-10 20:06:12 -07:00
Bill Nagel
1e2be14b6b
define nfds_t for windows
2021-01-12 16:37:58 -08:00
Vincent Rischmann
3468872d83
os/bits/linux: add the termios cc bits
2021-01-11 15:39:36 -08:00
Andrew Kelley
73b17474d7
Merge pull request #7134 from alexnask/fix_std_fs_watch
...
The std.fs.Watch rewrite PR
2021-01-11 12:45:36 -08:00
Robin Voetter
83fad7d4f7
Add IP_ constants
2021-01-08 01:35:52 +01:00
xackus
1640c357f4
freebsd, netbsd, dragonfly: add struct timeval
2021-01-05 13:07:25 -08:00
daurnimator
e4c4a0a5f6
Improve uring definitions
2021-01-03 19:52:20 -08:00
Sébastien Marie
a9c75a2b48
openbsd: add pollfd interface
2021-01-01 20:05:19 -08:00
Frank Denis
6c2e0c2046
Year++
2020-12-31 15:45:24 -08:00
LemonBoy
daed2ba2a0
std: Add more standard type definitions for FreeBSD
...
Closes #7550
2020-12-30 10:25:43 -08:00
LemonBoy
b297c2eae9
std: Fix compilation on FreeBSD/Darwin
2020-12-29 10:40:26 -07:00
LemonBoy
2c16a96686
std: Fix poll definitions for FreeBSD/Darwin
2020-12-29 10:40:00 -07:00
Andrew Kelley
8fc765387f
Merge pull request #7449 from kristoff-it/macos-termios
...
add termios bits for darwin
2020-12-26 17:13:17 -08:00
Sébastien Marie
6e2622661c
openbsd: implement segfault handling on openbsd x86_64
2020-12-23 20:47:06 +02:00
Loris Cro
9bb0da6100
added comments, removed useless comptime keywords
2020-12-23 17:28:59 +01:00
Loris Cro
8c00c7473c
add termios bits for darwin
2020-12-23 17:28:59 +01:00
Sébastien Marie
4420dabdf5
openbsd: fix siginfo_t struct definition
...
`_proc` struct part contains an union for kill/cld parts.
see [siginfo_t](77c6c13150/sys/sys/siginfo.h (L132) )
2020-12-23 11:08:55 +02:00
Alex Cameron
60020fd545
Enable segfault handling on FreeBSD.
2020-12-23 11:02:05 +02:00