diff options
| author | Bastian Kauschke <bastian_kauschke@hotmail.de> | 2020-03-08 14:24:32 +0100 |
|---|---|---|
| committer | Bastian Kauschke <bastian_kauschke@hotmail.de> | 2020-03-08 14:24:32 +0100 |
| commit | 6d03bbd480ef9bef09321fbfdc00229a03091b11 (patch) | |
| tree | dcf7fd10df1455d72968a192223a3a73ce56d6ce /src/librustc_mir/interpret | |
| parent | f943349eafaa75a60c05b0c84dcdb771d0eae8c9 (diff) | |
| download | rust-6d03bbd480ef9bef09321fbfdc00229a03091b11.tar.gz rust-6d03bbd480ef9bef09321fbfdc00229a03091b11.zip | |
constify `mem::discriminant`
Diffstat (limited to 'src/librustc_mir/interpret')
| -rw-r--r-- | src/librustc_mir/interpret/intrinsics.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/librustc_mir/interpret/intrinsics.rs b/src/librustc_mir/interpret/intrinsics.rs index 891afbf437f..1e5ed76c467 100644 --- a/src/librustc_mir/interpret/intrinsics.rs +++ b/src/librustc_mir/interpret/intrinsics.rs @@ -216,6 +216,11 @@ impl<'mir, 'tcx, M: Machine<'mir, 'tcx>> InterpCx<'mir, 'tcx, M> { }; self.write_scalar(val, dest)?; } + sym::discriminant_value => { + let place = self.deref_operand(args[0])?; + let discr_val = self.read_discriminant(place.into())?.0; + self.write_scalar(Scalar::from_uint(discr_val, dest.layout.size), dest)?; + } sym::unchecked_shl | sym::unchecked_shr | sym::unchecked_add |
