Fix Android errno

This commit is contained in:
Christoffer Lerno
2025-06-08 11:33:28 +02:00
parent 1dcd40aa5f
commit c7b3ae0cf9

View File

@@ -1,5 +1,7 @@
module libc::os @if(env::LIBC);
import std::core::env;
const HAS_NATIVE_ERRNO = env::LINUX || env::ANDROID || env::DARWIN || env::WIN32;
// Linux
extern fn int* __errno_location() @if(env::LINUX);
macro int errno() @if(env::LINUX) => *__errno_location();
@@ -27,7 +29,7 @@ extern fn void _get_errno(int* result) @if(env::WIN32);
extern fn void _set_errno(int err) @if(env::WIN32);
// Default
module libc::os @if(!env::LIBC || !(env::LINUX || env::DARWIN || env::WIN32));
module libc::os @if(!env::LIBC || !HAS_NATIVE_ERRNO);
tlocal int _errno_c3 = 0;
fn void errno_set(int err) => _errno_c3 = err;
fn int errno() => _errno_c3;