@@ -284,7 +284,7 @@ impl TypeConverter {
284284 // in the case of pointers.
285285 CTypeKind :: Void => Ok ( mk ( )
286286 . set_mutbl ( mutbl)
287- . ptr_ty ( mk ( ) . path_ty ( vec ! [ "core" , "ffi" , "c_void" ] ) ) ) ,
287+ . ptr_ty ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_void" ] ) ) ) ,
288288
289289 CTypeKind :: VariableArray ( mut elt, _len) => {
290290 while let CTypeKind :: VariableArray ( elt_, _) = ctxt. resolve_type ( elt) . kind {
@@ -317,59 +317,58 @@ impl TypeConverter {
317317 ctype : CTypeId ,
318318 ) -> TranslationResult < Box < Type > > {
319319 if self . translate_valist && ctxt. is_va_list ( ctype) {
320- let path = vec ! [ "core" , "ffi" , "VaList" ] ;
321- let ty = mk ( ) . path_ty ( mk ( ) . abs_path ( path) ) ;
320+ let ty = mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "VaList" ] ) ;
322321 return Ok ( ty) ;
323322 }
324323
325324 match ctxt. index ( ctype) . kind {
326325 CTypeKind :: Void => Ok ( mk ( ) . tuple_ty ( vec ! [ ] ) ) ,
327- CTypeKind :: Bool => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "bool" ] ) ) ) ,
328- CTypeKind :: Short => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_short" ] ) ) ) ,
329- CTypeKind :: Int => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_int" ] ) ) ) ,
330- CTypeKind :: Long => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_long" ] ) ) ) ,
331- CTypeKind :: LongLong => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_longlong" ] ) ) ) ,
332- CTypeKind :: UShort => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_ushort" ] ) ) ) ,
333- CTypeKind :: UInt => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_uint" ] ) ) ) ,
334- CTypeKind :: ULong => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_ulong" ] ) ) ) ,
335- CTypeKind :: ULongLong => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_ulonglong" ] ) ) ) ,
336- CTypeKind :: SChar => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_schar" ] ) ) ) ,
337- CTypeKind :: UChar => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_uchar" ] ) ) ) ,
338- CTypeKind :: Char => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_char" ] ) ) ) ,
339- CTypeKind :: Double => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_double" ] ) ) ) ,
326+ CTypeKind :: Bool => Ok ( mk ( ) . path_ty ( vec ! [ "bool" ] ) ) ,
327+ CTypeKind :: Short => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_short" ] ) ) ,
328+ CTypeKind :: Int => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_int" ] ) ) ,
329+ CTypeKind :: Long => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_long" ] ) ) ,
330+ CTypeKind :: LongLong => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_longlong" ] ) ) ,
331+ CTypeKind :: UShort => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_ushort" ] ) ) ,
332+ CTypeKind :: UInt => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_uint" ] ) ) ,
333+ CTypeKind :: ULong => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_ulong" ] ) ) ,
334+ CTypeKind :: ULongLong => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_ulonglong" ] ) ) ,
335+ CTypeKind :: SChar => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_schar" ] ) ) ,
336+ CTypeKind :: UChar => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_uchar" ] ) ) ,
337+ CTypeKind :: Char => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_char" ] ) ) ,
338+ CTypeKind :: Double => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_double" ] ) ) ,
340339 CTypeKind :: LongDouble | CTypeKind :: Float128 => {
341340 self . use_crate ( ExternCrate :: F128 ) ;
342- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "f128" , "f128" ] ) ) )
341+ Ok ( mk ( ) . abs_path_ty ( vec ! [ "f128" , "f128" ] ) )
343342 }
344- CTypeKind :: Float => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "core" , "ffi" , "c_float" ] ) ) ) ,
345- CTypeKind :: Int128 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "i128" ] ) ) ) ,
346- CTypeKind :: UInt128 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "u128" ] ) ) ) ,
347- CTypeKind :: BFloat16 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "bf16" ] ) ) ) ,
348-
349- CTypeKind :: Int8 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "i8" ] ) ) ) ,
350- CTypeKind :: Int16 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "i16" ] ) ) ) ,
351- CTypeKind :: Int32 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "i32" ] ) ) ) ,
352- CTypeKind :: Int64 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "i64" ] ) ) ) ,
353- CTypeKind :: IntPtr => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "isize" ] ) ) ) ,
354- CTypeKind :: UInt8 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "u8" ] ) ) ) ,
355- CTypeKind :: UInt16 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "u16" ] ) ) ) ,
356- CTypeKind :: UInt32 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "u32" ] ) ) ) ,
357- CTypeKind :: UInt64 => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "u64" ] ) ) ) ,
358- CTypeKind :: UIntPtr => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "usize" ] ) ) ) ,
343+ CTypeKind :: Float => Ok ( mk ( ) . abs_path_ty ( vec ! [ "core" , "ffi" , "c_float" ] ) ) ,
344+ CTypeKind :: Int128 => Ok ( mk ( ) . path_ty ( vec ! [ "i128" ] ) ) ,
345+ CTypeKind :: UInt128 => Ok ( mk ( ) . path_ty ( vec ! [ "u128" ] ) ) ,
346+ CTypeKind :: BFloat16 => Ok ( mk ( ) . path_ty ( vec ! [ "bf16" ] ) ) ,
347+
348+ CTypeKind :: Int8 => Ok ( mk ( ) . path_ty ( vec ! [ "i8" ] ) ) ,
349+ CTypeKind :: Int16 => Ok ( mk ( ) . path_ty ( vec ! [ "i16" ] ) ) ,
350+ CTypeKind :: Int32 => Ok ( mk ( ) . path_ty ( vec ! [ "i32" ] ) ) ,
351+ CTypeKind :: Int64 => Ok ( mk ( ) . path_ty ( vec ! [ "i64" ] ) ) ,
352+ CTypeKind :: IntPtr => Ok ( mk ( ) . path_ty ( vec ! [ "isize" ] ) ) ,
353+ CTypeKind :: UInt8 => Ok ( mk ( ) . path_ty ( vec ! [ "u8" ] ) ) ,
354+ CTypeKind :: UInt16 => Ok ( mk ( ) . path_ty ( vec ! [ "u16" ] ) ) ,
355+ CTypeKind :: UInt32 => Ok ( mk ( ) . path_ty ( vec ! [ "u32" ] ) ) ,
356+ CTypeKind :: UInt64 => Ok ( mk ( ) . path_ty ( vec ! [ "u64" ] ) ) ,
357+ CTypeKind :: UIntPtr => Ok ( mk ( ) . path_ty ( vec ! [ "usize" ] ) ) ,
359358 CTypeKind :: IntMax => {
360359 self . use_crate ( ExternCrate :: Libc ) ;
361- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "libc" , "intmax_t" ] ) ) )
360+ Ok ( mk ( ) . abs_path_ty ( vec ! [ "libc" , "intmax_t" ] ) )
362361 }
363362 CTypeKind :: UIntMax => {
364363 self . use_crate ( ExternCrate :: Libc ) ;
365- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "libc" , "uintmax_t" ] ) ) )
364+ Ok ( mk ( ) . abs_path_ty ( vec ! [ "libc" , "uintmax_t" ] ) )
366365 }
367- CTypeKind :: Size => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "usize" ] ) ) ) ,
368- CTypeKind :: SSize => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "isize" ] ) ) ) ,
369- CTypeKind :: PtrDiff => Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "isize" ] ) ) ) ,
366+ CTypeKind :: Size => Ok ( mk ( ) . path_ty ( vec ! [ "usize" ] ) ) ,
367+ CTypeKind :: SSize => Ok ( mk ( ) . path_ty ( vec ! [ "isize" ] ) ) ,
368+ CTypeKind :: PtrDiff => Ok ( mk ( ) . path_ty ( vec ! [ "isize" ] ) ) ,
370369 CTypeKind :: WChar => {
371370 self . use_crate ( ExternCrate :: Libc ) ;
372- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ "libc" , "wchar_t" ] ) ) )
371+ Ok ( mk ( ) . abs_path_ty ( vec ! [ "libc" , "wchar_t" ] ) )
373372 }
374373
375374 CTypeKind :: Pointer ( qtype) => self . convert_pointer ( ctxt, qtype) ,
@@ -382,22 +381,22 @@ impl TypeConverter {
382381 let new_name = self
383382 . resolve_decl_name ( decl_id)
384383 . ok_or_else ( || format_err ! ( "Unknown decl id {:?}" , decl_id) ) ?;
385- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ new_name] ) ) )
384+ Ok ( mk ( ) . path_ty ( vec ! [ new_name] ) )
386385 }
387386
388387 CTypeKind :: Union ( decl_id) => {
389388 let new_name = self . resolve_decl_name ( decl_id) . unwrap ( ) ;
390- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ new_name] ) ) )
389+ Ok ( mk ( ) . path_ty ( vec ! [ new_name] ) )
391390 }
392391
393392 CTypeKind :: Enum ( decl_id) => {
394393 let new_name = self . resolve_decl_name ( decl_id) . unwrap ( ) ;
395- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ new_name] ) ) )
394+ Ok ( mk ( ) . path_ty ( vec ! [ new_name] ) )
396395 }
397396
398397 CTypeKind :: Typedef ( decl_id) => {
399398 let new_name = self . resolve_decl_name ( decl_id) . unwrap ( ) ;
400- Ok ( mk ( ) . path_ty ( mk ( ) . path ( vec ! [ new_name] ) ) )
399+ Ok ( mk ( ) . path_ty ( vec ! [ new_name] ) )
401400 }
402401
403402 CTypeKind :: ConstantArray ( element, count) => {
0 commit comments