Separate the IR evaluator, add an interesting stack-breaking case.
This commit is contained in:
3
build.rs
3
build.rs
@@ -77,7 +77,8 @@ fn generate_tests(f: &mut File, path_so_far: PathBuf) -> std::io::Result<()> {
|
||||
f,
|
||||
" let ir = syntax.type_infer().expect(\"example is typed correctly\");"
|
||||
)?;
|
||||
writeln!(f, " let ir_result = ir.eval();")?;
|
||||
writeln!(f, " let ir_evaluator = crate::ir::Evaluator::default();")?;
|
||||
writeln!(f, " let ir_result = ir_evaluator.eval(ir.clone());")?;
|
||||
writeln!(f, " match (&syntax_result, &ir_result) {{")?;
|
||||
writeln!(f, " (Err(e1), Err(e2)) => assert_eq!(e1, e2),")?;
|
||||
writeln!(f, " (Ok((v1, o1)), Ok((v2, o2))) => {{")?;
|
||||
|
||||
Reference in New Issue
Block a user