This commit is contained in:
Bung 2022-12-16 15:01:15 +08:00 • committed by GitHub
commit a9bd78d579
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
23 changed files with 140 additions and 140 deletions

View file

@ -281,8 +281,8 @@ proc start*(c: proc(), stacksize: int = defaultStackSize): CoroutineRef {.discar
(proc(p: pointer) {.stdcall.} = runCurrentTask()), nil)
else:
coro = cast[CoroutinePtr](alloc0(sizeof(Coroutine) + stacksize))
coro.stack.top = cast[pointer](cast[ByteAddress](coro) + sizeof(Coroutine))
coro.stack.bottom = cast[pointer](cast[ByteAddress](coro.stack.top) + stacksize)
coro.stack.top = cast[pointer](cast[int](coro) + sizeof(Coroutine))
coro.stack.bottom = cast[pointer](cast[int](coro.stack.top) + stacksize)
when coroBackend == CORO_BACKEND_UCONTEXT:
discard getcontext(coro.execContext)
coro.execContext.uc_stack.ss_sp = coro.stack.top

View file

@ -495,8 +495,8 @@ proc mmsSetPosition(s: Stream, pos: int) =
proc mmsGetPosition(s: Stream): int = MemMapFileStream(s).pos
proc mmsPeekData(s: Stream, buffer: pointer, bufLen: int): int =
let startAddress = cast[ByteAddress](MemMapFileStream(s).mf.mem)
let p = cast[ByteAddress](MemMapFileStream(s).pos)
let startAddress = cast[int](MemMapFileStream(s).mf.mem)
let p = cast[int](MemMapFileStream(s).pos)
let l = min(bufLen, MemMapFileStream(s).mf.size - p)
moveMem(buffer, cast[pointer](startAddress + p), l)
result = l
@ -511,8 +511,8 @@ proc mmsWriteData(s: Stream, buffer: pointer, bufLen: int) =
let size = MemMapFileStream(s).mf.size
if MemMapFileStream(s).pos + bufLen > size:
raise newEIO("cannot write to stream")
let p = cast[ByteAddress](MemMapFileStream(s).mf.mem) +
cast[ByteAddress](MemMapFileStream(s).pos)
let p = cast[int](MemMapFileStream(s).mf.mem) +
cast[int](MemMapFileStream(s).pos)
moveMem(cast[pointer](p), buffer, bufLen)
inc(MemMapFileStream(s).pos, bufLen)

View file

@ -44,7 +44,7 @@ proc hexbyte*(hex: char): int {.inline.} =
proc parseOid*(str: cstring): Oid =
## Parses an OID.
var bytes = cast[cstring](cast[pointer](cast[ByteAddress](addr(result.time)) + 4))
var bytes = cast[cstring](cast[pointer](cast[int](addr(result.time)) + 4))
var i = 0
while i < 12:
bytes[i] = chr((hexbyte(str[2 * i]) shl 4) or hexbyte(str[2 * i + 1]))
@ -57,7 +57,7 @@ proc `$`*(oid: Oid): string =
result.setLen 24
var o = oid
var bytes = cast[cstring](cast[pointer](cast[ByteAddress](addr(o)) + 4))
var bytes = cast[cstring](cast[pointer](cast[int](addr(o)) + 4))
var i = 0
while i < 12:
let b = bytes[i].ord

View file

@ -1914,7 +1914,7 @@ func find*(s: string, sub: char, start: Natural = 0, last = -1): int {.rtl,
if length > 0:
let found = c_memchr(s[start].unsafeAddr, sub, cast[csize_t](length))
if not found.isNil:
return cast[ByteAddress](found) -% cast[ByteAddress](s.cstring)
return cast[int](found) -% cast[int](s.cstring)
else:
findImpl()
@ -1970,7 +1970,7 @@ func find*(s, sub: string, start: Natural = 0, last = -1): int {.rtl,
if last < 0 and start < s.len and subLen != 0:
let found = memmem(s[start].unsafeAddr, csize_t(s.len - start), sub.cstring, csize_t(subLen))
result = if not found.isNil:
cast[ByteAddress](found) -% cast[ByteAddress](s.cstring)
cast[int](found) -% cast[int](s.cstring)
else:
-1
else: