@@ -55,6 +55,7 @@ pub use self::CallConv::*;
55
55
pub use self :: Visibility :: * ;
56
56
pub use self :: DiagnosticSeverity :: * ;
57
57
pub use self :: Linkage :: * ;
58
+ pub use self :: DLLStorageClassTypes :: * ;
58
59
59
60
use std:: ffi:: CString ;
60
61
use std:: cell:: RefCell ;
@@ -123,6 +124,15 @@ pub enum DiagnosticSeverity {
123
124
Note ,
124
125
}
125
126
127
+
128
+ #[ repr( C ) ]
129
+ #[ derive( Copy , Clone ) ]
130
+ pub enum DLLStorageClassTypes {
131
+ DefaultStorageClass = 0 ,
132
+ DLLImportStorageClass = 1 ,
133
+ DLLExportStorageClass = 2 ,
134
+ }
135
+
126
136
bitflags ! {
127
137
flags Attribute : u32 {
128
138
const ZExt = 1 << 0 ,
@@ -2075,7 +2085,8 @@ extern {
2075
2085
pub fn LLVMRustArchiveIteratorFree ( AIR : ArchiveIteratorRef ) ;
2076
2086
pub fn LLVMRustDestroyArchive ( AR : ArchiveRef ) ;
2077
2087
2078
- pub fn LLVMRustSetDLLExportStorageClass ( V : ValueRef ) ;
2088
+ pub fn LLVMRustSetDLLStorageClass ( V : ValueRef ,
2089
+ C : DLLStorageClassTypes ) ;
2079
2090
2080
2091
pub fn LLVMRustGetSectionName ( SI : SectionIteratorRef ,
2081
2092
data : * mut * const c_char ) -> c_int ;
@@ -2125,6 +2136,12 @@ pub fn SetLinkage(global: ValueRef, link: Linkage) {
2125
2136
}
2126
2137
}
2127
2138
2139
+ pub fn SetDLLStorageClass ( global : ValueRef , class : DLLStorageClassTypes ) {
2140
+ unsafe {
2141
+ LLVMRustSetDLLStorageClass ( global, class) ;
2142
+ }
2143
+ }
2144
+
2128
2145
pub fn SetUnnamedAddr ( global : ValueRef , unnamed : bool ) {
2129
2146
unsafe {
2130
2147
LLVMSetUnnamedAddr ( global, unnamed as Bool ) ;
0 commit comments