mirror of
https://github.com/Ed94/Odin.git
synced 2026-08-07 16:18:52 +00:00
Fix #1972
This commit is contained in:
@@ -1568,7 +1568,7 @@ sys_gettid :: proc "contextless" () -> int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sys_getrandom :: proc "contextless" (buf: [^]byte, buflen: int, flags: uint) -> int {
|
sys_getrandom :: proc "contextless" (buf: [^]byte, buflen: int, flags: uint) -> int {
|
||||||
return cast(int)intrinsics.syscall(SYS_getrandom, buf, cast(uintptr)(buflen), cast(uintptr)(flags))
|
return cast(int)intrinsics.syscall(SYS_getrandom, uintptr(buf), uintptr(buflen), uintptr(flags))
|
||||||
}
|
}
|
||||||
|
|
||||||
sys_open :: proc "contextless" (path: cstring, flags: int, mode: int = 0o000) -> int {
|
sys_open :: proc "contextless" (path: cstring, flags: int, mode: int = 0o000) -> int {
|
||||||
@@ -1748,7 +1748,7 @@ sys_unlink :: proc "contextless" (path: cstring) -> int {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sys_unlinkat :: proc "contextless" (dfd: int, path: cstring, flag: int = 0) -> int {
|
sys_unlinkat :: proc "contextless" (dfd: int, path: cstring, flag: int = 0) -> int {
|
||||||
return int(intrinsics.syscall(SYS_unlinkat, uintptr(dfd), uintptr(rawptr(path)), flag))
|
return int(intrinsics.syscall(SYS_unlinkat, uintptr(dfd), uintptr(rawptr(path)), uintptr(flag)))
|
||||||
}
|
}
|
||||||
|
|
||||||
sys_rmdir :: proc "contextless" (path: cstring) -> int {
|
sys_rmdir :: proc "contextless" (path: cstring) -> int {
|
||||||
|
|||||||
@@ -4523,7 +4523,8 @@ bool check_builtin_procedure(CheckerContext *c, Operand *operand, Ast *call, i32
|
|||||||
if (x.mode != Addressing_Invalid) {
|
if (x.mode != Addressing_Invalid) {
|
||||||
convert_to_typed(c, &x, t_uintptr);
|
convert_to_typed(c, &x, t_uintptr);
|
||||||
}
|
}
|
||||||
if (!is_type_uintptr(operand->type)) {
|
convert_to_typed(c, &x, t_uintptr);
|
||||||
|
if (!is_type_uintptr(x.type)) {
|
||||||
gbString t = type_to_string(x.type);
|
gbString t = type_to_string(x.type);
|
||||||
error(x.expr, "Argument %td must be of type 'uintptr', got %s", i, t);
|
error(x.expr, "Argument %td must be of type 'uintptr', got %s", i, t);
|
||||||
gb_string_free(t);
|
gb_string_free(t);
|
||||||
|
|||||||
Reference in New Issue
Block a user