mirror of https://github.com/rust-lang/rust
26 lines
530 B
Rust
26 lines
530 B
Rust
// skip-filecheck
|
|
// This is a miscompilation, #111005 to track
|
|
|
|
//@ test-mir-pass: RenameReturnPlace
|
|
|
|
#![feature(custom_mir, core_intrinsics)]
|
|
extern crate core;
|
|
use core::intrinsics::mir::*;
|
|
|
|
// EMIT_MIR nrvo_miscompile_111005.wrong.RenameReturnPlace.diff
|
|
#[custom_mir(dialect = "runtime", phase = "initial")]
|
|
pub fn wrong(arg: char) -> char {
|
|
mir! {
|
|
{
|
|
let temp = arg;
|
|
RET = temp;
|
|
temp = 'b';
|
|
Return()
|
|
}
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
assert_eq!(wrong('a'), 'a');
|
|
}
|