From: Nick Cameron Date: Tue, 23 Jun 2015 06:08:44 +0000 (-0700) Subject: Test for a particular parallel codegen corner case X-Git-Url: https://git.lizzy.rs/?a=commitdiff_plain;h=19645c4e219acc56f601c13a949cac3b2f7e9b48;p=rust.git Test for a particular parallel codegen corner case --- diff --git a/src/test/run-pass/parallel-codegen-closures.rs b/src/test/run-pass/parallel-codegen-closures.rs new file mode 100644 index 00000000000..5ba0fe018ed --- /dev/null +++ b/src/test/run-pass/parallel-codegen-closures.rs @@ -0,0 +1,34 @@ +// Copyright 2015 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 or the MIT license +// , at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +// Tests parallel codegen - this can fail if the symbol for the anonymous +// closure in `sum` pollutes the second codegen unit from the first. + +// compile-flags: -C codegen_units=2 + +#![feature(core)] +#![feature(iter_arith)] + +mod a { + fn foo() { + let x = ["a", "bob", "c"]; + let len: usize = x.iter().map(|s| s.len()).sum(); + } +} + +mod b { + fn bar() { + let x = ["a", "bob", "c"]; + let len: usize = x.iter().map(|s| s.len()).sum(); + } +} + +fn main() { +}