Skip to content
This repository was archived by the owner on Oct 12, 2022. It is now read-only.

Commit 53ba9b1

Browse files
committed
aio.d nitpicking
1 parent 6c21ed7 commit 53ba9b1

File tree

1 file changed

+26
-18
lines changed

1 file changed

+26
-18
lines changed

src/core/sys/posix/aio.d

Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
/**
22
* D header file to interface with the
3-
* $(HTTP pubs.opengroup.org/onlinepubs/9699919799/basedefs/aio.h.html, Linux aio API).
4-
* Available since Linux 2.6
3+
* $(HTTP pubs.opengroup.org/onlinepubs/9699919799/basedefs/aio.h.html, Posix AIO API).
54
*
65
* Copyright: Copyright D Language Foundation 2018.
76
* License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0)
@@ -11,27 +10,36 @@ module core.sys.posix.aio;
1110

1211
private import core.sys.posix.signal;
1312

14-
version (CRuntime_Glibc):
15-
version (X86_64):
13+
version (Posix):
1614

1715
extern (C):
1816
@system:
1917
@nogc:
2018
nothrow:
2119

22-
struct aiocb
20+
version (CRuntime_Glibc)
2321
{
24-
int aio_fildes;
25-
int aio_lio_opcode;
26-
int aio_reqprio;
27-
void *aio_buf; //volatile
28-
size_t aio_nbytes;
29-
sigevent aio_sigevent;
22+
version (X86_64)
23+
{
24+
struct aiocb
25+
{
26+
int aio_fildes;
27+
int aio_lio_opcode;
28+
int aio_reqprio;
29+
void *aio_buf; //volatile
30+
size_t aio_nbytes;
31+
sigevent aio_sigevent;
3032

31-
ubyte[24] internal_members_padding;
32-
off_t aio_offset;
33-
ubyte[32] __glibc_reserved;
33+
ubyte[24] internal_members_padding;
34+
off_t aio_offset;
35+
ubyte[32] __glibc_reserved;
36+
}
37+
}
38+
else
39+
static assert(0);
3440
}
41+
else
42+
static assert(false, "Unsupported platform");
3543

3644
/* Return values of cancelation function. */
3745
enum
@@ -59,8 +67,8 @@ enum
5967
int aio_read(aiocb *aiocbp);
6068
int aio_write(aiocb *aiocbp);
6169
int aio_fsync(int op, aiocb *aiocbp);
62-
int aio_error(aiocb *aiocbp);
63-
ssize_t aio_return(aiocb *aiocbp);
64-
int aio_suspend(aiocb*[] aiocb_list, int nitems, timespec *timeout);
70+
int aio_error(const(aiocb)* aiocbp);
71+
ssize_t aio_return(const(aiocb)* aiocbp);
72+
int aio_suspend(const(aiocb*)* aiocb_list, int nitems, const(timespec)* timeout);
6573
int aio_cancel(int fd, aiocb *aiocbp);
66-
int lio_listio(int mode, aiocb*[] aiocb_list, int nitems, sigevent *sevp);
74+
int lio_listio(int mode, const(aiocb*)* aiocb_list, int nitems, sigevent *sevp);

0 commit comments

Comments
 (0)