@@ -426,9 +426,10 @@ pub type InlineAsmDiagHandler = unsafe extern "C" fn(&SMDiagnostic, *const c_voi
426426
427427
428428pub mod debuginfo {
429- use super :: Metadata ;
429+ use super :: { InvariantOpaque , Metadata } ;
430430
431- extern { pub type DIBuilder ; }
431+ #[ repr( C ) ]
432+ pub struct DIBuilder < ' a > ( InvariantOpaque < ' a > ) ;
432433
433434 pub type DIDescriptor = Metadata ;
434435 pub type DIScope = DIDescriptor ;
@@ -1211,13 +1212,13 @@ extern "C" {
12111212
12121213 pub fn LLVMRustMetadataAsValue ( C : & ' a Context , MD : & ' a Metadata ) -> & ' a Value ;
12131214
1214- pub fn LLVMRustDIBuilderCreate ( M : & Module ) -> & DIBuilder ;
1215+ pub fn LLVMRustDIBuilderCreate ( M : & ' a Module ) -> & ' a mut DIBuilder < ' a > ;
12151216
1216- pub fn LLVMRustDIBuilderDispose ( Builder : & DIBuilder ) ;
1217+ pub fn LLVMRustDIBuilderDispose ( Builder : & ' a mut DIBuilder < ' a > ) ;
12171218
12181219 pub fn LLVMRustDIBuilderFinalize ( Builder : & DIBuilder ) ;
12191220
1220- pub fn LLVMRustDIBuilderCreateCompileUnit ( Builder : & ' a DIBuilder ,
1221+ pub fn LLVMRustDIBuilderCreateCompileUnit ( Builder : & DIBuilder < ' a > ,
12211222 Lang : c_uint ,
12221223 File : & ' a DIFile ,
12231224 Producer : * const c_char ,
@@ -1227,17 +1228,17 @@ extern "C" {
12271228 SplitName : * const c_char )
12281229 -> & ' a DIDescriptor ;
12291230
1230- pub fn LLVMRustDIBuilderCreateFile ( Builder : & DIBuilder ,
1231+ pub fn LLVMRustDIBuilderCreateFile ( Builder : & DIBuilder < ' a > ,
12311232 Filename : * const c_char ,
12321233 Directory : * const c_char )
1233- -> & DIFile ;
1234+ -> & ' a DIFile ;
12341235
1235- pub fn LLVMRustDIBuilderCreateSubroutineType ( Builder : & ' a DIBuilder ,
1236+ pub fn LLVMRustDIBuilderCreateSubroutineType ( Builder : & DIBuilder < ' a > ,
12361237 File : & ' a DIFile ,
12371238 ParameterTypes : & ' a DIArray )
12381239 -> & ' a DICompositeType ;
12391240
1240- pub fn LLVMRustDIBuilderCreateFunction ( Builder : & ' a DIBuilder ,
1241+ pub fn LLVMRustDIBuilderCreateFunction ( Builder : & DIBuilder < ' a > ,
12411242 Scope : & ' a DIDescriptor ,
12421243 Name : * const c_char ,
12431244 LinkageName : * const c_char ,
@@ -1254,21 +1255,21 @@ extern "C" {
12541255 Decl : Option < & ' a DIDescriptor > )
12551256 -> & ' a DISubprogram ;
12561257
1257- pub fn LLVMRustDIBuilderCreateBasicType ( Builder : & DIBuilder ,
1258+ pub fn LLVMRustDIBuilderCreateBasicType ( Builder : & DIBuilder < ' a > ,
12581259 Name : * const c_char ,
12591260 SizeInBits : u64 ,
12601261 AlignInBits : u32 ,
12611262 Encoding : c_uint )
1262- -> & DIBasicType ;
1263+ -> & ' a DIBasicType ;
12631264
1264- pub fn LLVMRustDIBuilderCreatePointerType ( Builder : & ' a DIBuilder ,
1265+ pub fn LLVMRustDIBuilderCreatePointerType ( Builder : & DIBuilder < ' a > ,
12651266 PointeeTy : & ' a DIType ,
12661267 SizeInBits : u64 ,
12671268 AlignInBits : u32 ,
12681269 Name : * const c_char )
12691270 -> & ' a DIDerivedType ;
12701271
1271- pub fn LLVMRustDIBuilderCreateStructType ( Builder : & ' a DIBuilder ,
1272+ pub fn LLVMRustDIBuilderCreateStructType ( Builder : & DIBuilder < ' a > ,
12721273 Scope : Option < & ' a DIDescriptor > ,
12731274 Name : * const c_char ,
12741275 File : & ' a DIFile ,
@@ -1283,7 +1284,7 @@ extern "C" {
12831284 UniqueId : * const c_char )
12841285 -> & ' a DICompositeType ;
12851286
1286- pub fn LLVMRustDIBuilderCreateMemberType ( Builder : & ' a DIBuilder ,
1287+ pub fn LLVMRustDIBuilderCreateMemberType ( Builder : & DIBuilder < ' a > ,
12871288 Scope : & ' a DIDescriptor ,
12881289 Name : * const c_char ,
12891290 File : & ' a DIFile ,
@@ -1295,19 +1296,19 @@ extern "C" {
12951296 Ty : & ' a DIType )
12961297 -> & ' a DIDerivedType ;
12971298
1298- pub fn LLVMRustDIBuilderCreateLexicalBlock ( Builder : & ' a DIBuilder ,
1299+ pub fn LLVMRustDIBuilderCreateLexicalBlock ( Builder : & DIBuilder < ' a > ,
12991300 Scope : & ' a DIScope ,
13001301 File : & ' a DIFile ,
13011302 Line : c_uint ,
13021303 Col : c_uint )
13031304 -> & ' a DILexicalBlock ;
13041305
1305- pub fn LLVMRustDIBuilderCreateLexicalBlockFile ( Builder : & ' a DIBuilder ,
1306+ pub fn LLVMRustDIBuilderCreateLexicalBlockFile ( Builder : & DIBuilder < ' a > ,
13061307 Scope : & ' a DIScope ,
13071308 File : & ' a DIFile )
13081309 -> & ' a DILexicalBlock ;
13091310
1310- pub fn LLVMRustDIBuilderCreateStaticVariable ( Builder : & ' a DIBuilder ,
1311+ pub fn LLVMRustDIBuilderCreateStaticVariable ( Builder : & DIBuilder < ' a > ,
13111312 Context : Option < & ' a DIScope > ,
13121313 Name : * const c_char ,
13131314 LinkageName : * const c_char ,
@@ -1320,7 +1321,7 @@ extern "C" {
13201321 AlignInBits : u32 )
13211322 -> & ' a DIGlobalVariable ;
13221323
1323- pub fn LLVMRustDIBuilderCreateVariable ( Builder : & ' a DIBuilder ,
1324+ pub fn LLVMRustDIBuilderCreateVariable ( Builder : & DIBuilder < ' a > ,
13241325 Tag : c_uint ,
13251326 Scope : & ' a DIDescriptor ,
13261327 Name : * const c_char ,
@@ -1333,24 +1334,24 @@ extern "C" {
13331334 AlignInBits : u32 )
13341335 -> & ' a DIVariable ;
13351336
1336- pub fn LLVMRustDIBuilderCreateArrayType ( Builder : & ' a DIBuilder ,
1337+ pub fn LLVMRustDIBuilderCreateArrayType ( Builder : & DIBuilder < ' a > ,
13371338 Size : u64 ,
13381339 AlignInBits : u32 ,
13391340 Ty : & ' a DIType ,
13401341 Subscripts : & ' a DIArray )
13411342 -> & ' a DIType ;
13421343
1343- pub fn LLVMRustDIBuilderGetOrCreateSubrange ( Builder : & DIBuilder ,
1344+ pub fn LLVMRustDIBuilderGetOrCreateSubrange ( Builder : & DIBuilder < ' a > ,
13441345 Lo : i64 ,
13451346 Count : i64 )
1346- -> & DISubrange ;
1347+ -> & ' a DISubrange ;
13471348
1348- pub fn LLVMRustDIBuilderGetOrCreateArray ( Builder : & ' a DIBuilder ,
1349+ pub fn LLVMRustDIBuilderGetOrCreateArray ( Builder : & DIBuilder < ' a > ,
13491350 Ptr : * const Option < & ' a DIDescriptor > ,
13501351 Count : c_uint )
13511352 -> & ' a DIArray ;
13521353
1353- pub fn LLVMRustDIBuilderInsertDeclareAtEnd ( Builder : & ' a DIBuilder ,
1354+ pub fn LLVMRustDIBuilderInsertDeclareAtEnd ( Builder : & DIBuilder < ' a > ,
13541355 Val : & ' a Value ,
13551356 VarInfo : & ' a DIVariable ,
13561357 AddrOps : * const i64 ,
@@ -1359,12 +1360,12 @@ extern "C" {
13591360 InsertAtEnd : & ' a BasicBlock )
13601361 -> & ' a Value ;
13611362
1362- pub fn LLVMRustDIBuilderCreateEnumerator ( Builder : & DIBuilder ,
1363+ pub fn LLVMRustDIBuilderCreateEnumerator ( Builder : & DIBuilder < ' a > ,
13631364 Name : * const c_char ,
13641365 Val : u64 )
1365- -> & DIEnumerator ;
1366+ -> & ' a DIEnumerator ;
13661367
1367- pub fn LLVMRustDIBuilderCreateEnumerationType ( Builder : & ' a DIBuilder ,
1368+ pub fn LLVMRustDIBuilderCreateEnumerationType ( Builder : & DIBuilder < ' a > ,
13681369 Scope : & ' a DIScope ,
13691370 Name : * const c_char ,
13701371 File : & ' a DIFile ,
@@ -1375,7 +1376,7 @@ extern "C" {
13751376 ClassType : & ' a DIType )
13761377 -> & ' a DIType ;
13771378
1378- pub fn LLVMRustDIBuilderCreateUnionType ( Builder : & ' a DIBuilder ,
1379+ pub fn LLVMRustDIBuilderCreateUnionType ( Builder : & DIBuilder < ' a > ,
13791380 Scope : & ' a DIScope ,
13801381 Name : * const c_char ,
13811382 File : & ' a DIFile ,
@@ -1390,7 +1391,7 @@ extern "C" {
13901391
13911392 pub fn LLVMSetUnnamedAddr ( GlobalVar : & Value , UnnamedAddr : Bool ) ;
13921393
1393- pub fn LLVMRustDIBuilderCreateTemplateTypeParameter ( Builder : & ' a DIBuilder ,
1394+ pub fn LLVMRustDIBuilderCreateTemplateTypeParameter ( Builder : & DIBuilder < ' a > ,
13941395 Scope : Option < & ' a DIScope > ,
13951396 Name : * const c_char ,
13961397 Ty : & ' a DIType ,
@@ -1400,14 +1401,14 @@ extern "C" {
14001401 -> & ' a DITemplateTypeParameter ;
14011402
14021403
1403- pub fn LLVMRustDIBuilderCreateNameSpace ( Builder : & ' a DIBuilder ,
1404+ pub fn LLVMRustDIBuilderCreateNameSpace ( Builder : & DIBuilder < ' a > ,
14041405 Scope : Option < & ' a DIScope > ,
14051406 Name : * const c_char ,
14061407 File : & ' a DIFile ,
14071408 LineNo : c_uint )
14081409 -> & ' a DINameSpace ;
14091410
1410- pub fn LLVMRustDICompositeTypeSetTypeArray ( Builder : & ' a DIBuilder ,
1411+ pub fn LLVMRustDICompositeTypeSetTypeArray ( Builder : & DIBuilder < ' a > ,
14111412 CompositeType : & ' a DIType ,
14121413 TypeArray : & ' a DIArray ) ;
14131414
0 commit comments