@@ -40,31 +40,26 @@ impl<'a, 'tcx, Bx: BuilderMethods<'a, 'tcx>> FunctionCx<'a, 'tcx, Bx> {
40
40
& mut self ,
41
41
constant : & mir:: Constant < ' tcx > ,
42
42
) -> Result < ConstValue < ' tcx > , ErrorHandled > {
43
- match constant. literal . val {
44
- ty:: ConstKind :: Unevaluated ( def_id, substs, promoted) => {
45
- let substs = self . monomorphize ( & substs) ;
46
- self . cx
47
- . tcx ( )
48
- . const_eval_resolve ( ty:: ParamEnv :: reveal_all ( ) , def_id, substs, promoted, None )
49
- . map_err ( |err| {
50
- if promoted. is_none ( ) {
51
- self . cx
52
- . tcx ( )
53
- . sess
54
- . span_err ( constant. span , "erroneous constant encountered" ) ;
55
- }
56
- err
57
- } )
58
- }
43
+ match self . monomorphize ( & constant. literal ) . val {
44
+ ty:: ConstKind :: Unevaluated ( def_id, substs, promoted) => self
45
+ . cx
46
+ . tcx ( )
47
+ . const_eval_resolve ( ty:: ParamEnv :: reveal_all ( ) , def_id, substs, promoted, None )
48
+ . map_err ( |err| {
49
+ if promoted. is_none ( ) {
50
+ self . cx
51
+ . tcx ( )
52
+ . sess
53
+ . span_err ( constant. span , "erroneous constant encountered" ) ;
54
+ }
55
+ err
56
+ } ) ,
59
57
ty:: ConstKind :: Value ( value) => Ok ( value) ,
60
- _ => {
61
- let const_ = self . monomorphize ( & constant. literal ) ;
62
- if let ty:: ConstKind :: Value ( value) = const_. val {
63
- Ok ( value)
64
- } else {
65
- span_bug ! ( constant. span, "encountered bad ConstKind in codegen: {:?}" , const_) ;
66
- }
67
- }
58
+ err => span_bug ! (
59
+ constant. span,
60
+ "encountered bad ConstKind after monomorphizing: {:?}" ,
61
+ err
62
+ ) ,
68
63
}
69
64
}
70
65
0 commit comments