summaryrefslogtreecommitdiffstats
path: root/vendor/libloading/src/os/unix
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/libloading/src/os/unix')
-rw-r--r--vendor/libloading/src/os/unix/consts.rs7
-rw-r--r--vendor/libloading/src/os/unix/mod.rs4
2 files changed, 8 insertions, 3 deletions
diff --git a/vendor/libloading/src/os/unix/consts.rs b/vendor/libloading/src/os/unix/consts.rs
index dbe4df972..ea7a6a102 100644
--- a/vendor/libloading/src/os/unix/consts.rs
+++ b/vendor/libloading/src/os/unix/consts.rs
@@ -60,6 +60,8 @@ mod posix {
cfg_if! {
if #[cfg(target_os = "haiku")] {
pub(super) const RTLD_LAZY: c_int = 0;
+ } else if #[cfg(target_os = "aix")] {
+ pub(super) const RTLD_LAZY: c_int = 4;
} else if #[cfg(any(
target_os = "linux",
target_os = "android",
@@ -104,6 +106,7 @@ mod posix {
target_os = "openbsd",
target_os = "netbsd",
+ target_os = "aix",
target_os = "solaris",
target_os = "illumos",
@@ -129,6 +132,8 @@ mod posix {
all(target_os = "android",target_pointer_width = "32"),
))] {
pub(super) const RTLD_GLOBAL: c_int = 2;
+ } else if #[cfg(target_os = "aix")] {
+ pub(super) const RTLD_GLOBAL: c_int = 0x10000;
} else if #[cfg(any(
target_env = "uclibc",
all(target_os = "linux", target_arch = "mips"),
@@ -169,6 +174,8 @@ mod posix {
cfg_if! {
if #[cfg(target_os = "netbsd")] {
pub(super) const RTLD_LOCAL: c_int = 0x200;
+ } else if #[cfg(target_os = "aix")] {
+ pub(super) const RTLD_LOCAL: c_int = 0x80000;
} else if #[cfg(any(
target_os = "macos",
target_os = "ios",
diff --git a/vendor/libloading/src/os/unix/mod.rs b/vendor/libloading/src/os/unix/mod.rs
index fd0777eab..df7efdad5 100644
--- a/vendor/libloading/src/os/unix/mod.rs
+++ b/vendor/libloading/src/os/unix/mod.rs
@@ -365,9 +365,7 @@ pub struct Symbol<T> {
impl<T> Symbol<T> {
/// Convert the loaded `Symbol` into a raw pointer.
pub fn into_raw(self) -> *mut raw::c_void {
- let pointer = self.pointer;
- mem::forget(self);
- pointer
+ self.pointer
}
}