diff options
| author | Oliver Schneider <github35764891676564198441@oli-obk.de> | 2018-08-30 15:29:29 +0200 |
|---|---|---|
| committer | Oliver Scherer <github35764891676564198441@oli-obk.de> | 2018-10-25 16:46:19 +0200 |
| commit | cce53b3631ba67495e5f1db6cc2fcbe93faac0fb (patch) | |
| tree | 483b567205c12a4c6931678c2f8a2d8576056a0d /src | |
| parent | 7fdf06cdde49c8cd87e34e85a95c1fe90ebdb0c3 (diff) | |
| download | rust-cce53b3631ba67495e5f1db6cc2fcbe93faac0fb.tar.gz rust-cce53b3631ba67495e5f1db6cc2fcbe93faac0fb.zip | |
Forward `TooGeneric` errors
Diffstat (limited to 'src')
| -rw-r--r-- | src/librustc_mir/interpret/eval_context.rs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/librustc_mir/interpret/eval_context.rs b/src/librustc_mir/interpret/eval_context.rs index ce991c50330..78e8ca02533 100644 --- a/src/librustc_mir/interpret/eval_context.rs +++ b/src/librustc_mir/interpret/eval_context.rs @@ -24,6 +24,7 @@ use rustc::ty::{self, Ty, TyCtxt, TypeFoldable}; use rustc::ty::query::TyCtxtAt; use rustc_data_structures::indexed_vec::IndexVec; use rustc::mir::interpret::{ + ErrorHandled, GlobalId, Scalar, FrameInfo, AllocId, EvalResult, EvalErrorKind, truncate, sign_extend, @@ -611,8 +612,11 @@ impl<'a, 'mir, 'tcx: 'mir, M: Machine<'a, 'mir, 'tcx>> EvalContext<'a, 'mir, 'tc } else { self.param_env }; - self.tcx.const_eval(param_env.and(gid)).map_err(|_| { - EvalErrorKind::ReferencedConstant.into() + self.tcx.const_eval(param_env.and(gid)).map_err(|err| { + match err { + ErrorHandled::Reported => EvalErrorKind::ReferencedConstant.into(), + ErrorHandled::TooGeneric => EvalErrorKind::TooGeneric.into(), + } }) } |
