@@ -42,6 +42,8 @@ use rustc::hir::{self, PatKind};
42
42
use rustc:: hir:: intravisit:: Visitor ;
43
43
use rustc:: hir:: intravisit;
44
44
45
+ use rustc_i128:: { u128, i128} ;
46
+
45
47
use super :: index_builder:: { FromId , IndexBuilder , Untracked } ;
46
48
47
49
pub struct EncodeContext < ' a , ' tcx : ' a > {
@@ -75,12 +77,14 @@ impl<'a, 'tcx> Encoder for EncodeContext<'a, 'tcx> {
75
77
76
78
encoder_methods ! {
77
79
emit_usize( usize ) ;
80
+ emit_u128( u128 ) ;
78
81
emit_u64( u64 ) ;
79
82
emit_u32( u32 ) ;
80
83
emit_u16( u16 ) ;
81
84
emit_u8( u8 ) ;
82
85
83
86
emit_isize( isize ) ;
87
+ emit_i128( i128 ) ;
84
88
emit_i64( i64 ) ;
85
89
emit_i32( i32 ) ;
86
90
emit_i16( i16 ) ;
@@ -259,7 +263,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
259
263
260
264
let data = VariantData {
261
265
kind : variant. kind ,
262
- disr : variant. disr_val . to_u64_unchecked ( ) ,
266
+ disr : variant. disr_val . to_u128_unchecked ( ) ,
263
267
struct_ctor : None
264
268
} ;
265
269
@@ -410,7 +414,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
410
414
411
415
let data = VariantData {
412
416
kind : variant. kind ,
413
- disr : variant. disr_val . to_u64_unchecked ( ) ,
417
+ disr : variant. disr_val . to_u128_unchecked ( ) ,
414
418
struct_ctor : Some ( def_id. index )
415
419
} ;
416
420
@@ -672,7 +676,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
672
676
} ;
673
677
EntryKind :: Struct ( self . lazy ( & VariantData {
674
678
kind : variant. kind ,
675
- disr : variant. disr_val . to_u64_unchecked ( ) ,
679
+ disr : variant. disr_val . to_u128_unchecked ( ) ,
676
680
struct_ctor : struct_ctor
677
681
} ) )
678
682
}
@@ -681,7 +685,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
681
685
682
686
EntryKind :: Union ( self . lazy ( & VariantData {
683
687
kind : variant. kind ,
684
- disr : variant. disr_val . to_u64_unchecked ( ) ,
688
+ disr : variant. disr_val . to_u128_unchecked ( ) ,
685
689
struct_ctor : None
686
690
} ) )
687
691
}
0 commit comments