Because why not use std::io:Error, Claude?

Index: libs/core/uv_compat/tty.rs
--- libs/core/uv_compat/tty.rs.orig
+++ libs/core/uv_compat/tty.rs
@@ -378,7 +378,7 @@ mod global_termios {
   }
 
   /// Get a pointer to the thread-local errno value.
-  #[cfg(target_os = "macos")]
+  #[cfg(any(target_os = "macos", target_os = "freebsd"))]
   fn errno_location() -> *mut c_int {
     unsafe extern "C" {
       fn __error() -> *mut c_int;
@@ -394,7 +394,15 @@ mod global_termios {
     unsafe { __errno_location() }
   }
 
-  #[cfg(not(any(target_os = "macos", target_os = "linux")))]
+  #[cfg(target_os = "openbsd")]
+  fn errno_location() -> *mut c_int {
+    unsafe extern "C" {
+      fn __errno() -> *mut c_int;
+    }
+    unsafe { __errno() }
+  }
+
+  #[cfg(not(any(target_os = "macos", target_os = "linux", target_os = "openbsd",  target_os = "freebsd")))]
   fn errno_location() -> *mut c_int {
     compile_error!(
       "errno_location not implemented for this platform — \
