]> git.lizzy.rs Git - rust.git/commitdiff
add test for should_inline incorrect param_env
authorBastian Kauschke <bastian_kauschke@hotmail.de>
Tue, 6 Oct 2020 15:51:02 +0000 (17:51 +0200)
committerBastian Kauschke <bastian_kauschke@hotmail.de>
Wed, 7 Oct 2020 08:04:08 +0000 (10:04 +0200)
src/test/ui/mir/mir-inlining/ice-issue-77306-1.rs [new file with mode: 0644]
src/test/ui/mir/mir-inlining/ice-issue-77306-2.rs [new file with mode: 0644]
src/test/ui/mir/mir-inlining/ice-issue-77306.rs [deleted file]

diff --git a/src/test/ui/mir/mir-inlining/ice-issue-77306-1.rs b/src/test/ui/mir/mir-inlining/ice-issue-77306-1.rs
new file mode 100644 (file)
index 0000000..4d083bf
--- /dev/null
@@ -0,0 +1,17 @@
+// run-pass
+// compile-flags:-Zmir-opt-level=2
+
+// Previously ICEd because we did not normalize during inlining,
+// see https://github.com/rust-lang/rust/pull/77306 for more discussion.
+
+pub fn write() {
+    create()()
+}
+
+pub fn create() -> impl FnOnce() {
+   || ()
+}
+
+fn main() {
+    write();
+}
diff --git a/src/test/ui/mir/mir-inlining/ice-issue-77306-2.rs b/src/test/ui/mir/mir-inlining/ice-issue-77306-2.rs
new file mode 100644 (file)
index 0000000..a346d45
--- /dev/null
@@ -0,0 +1,32 @@
+// run-pass
+// compile-flags:-Zmir-opt-level=2
+
+struct Cursor {}
+struct TokenTree {}
+
+impl Iterator for Cursor {
+    type Item = TokenTree;
+
+    fn next(&mut self) -> Option<TokenTree> {
+        None
+    }
+}
+
+fn tokenstream_probably_equal_for_proc_macro() {
+    fn break_tokens(_tree: TokenTree) -> impl Iterator<Item = TokenTree> {
+        let token_trees: Vec<TokenTree> = vec![];
+        token_trees.into_iter()
+    }
+
+    let c1 = Cursor {};
+    let c2 = Cursor {};
+
+    let mut t1 = c1.flat_map(break_tokens);
+    let mut t2 = c2.flat_map(break_tokens);
+
+    for (_t1, _t2) in t1.by_ref().zip(t2.by_ref()) {}
+}
+
+fn main() {
+    tokenstream_probably_equal_for_proc_macro();
+}
diff --git a/src/test/ui/mir/mir-inlining/ice-issue-77306.rs b/src/test/ui/mir/mir-inlining/ice-issue-77306.rs
deleted file mode 100644 (file)
index 4d083bf..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-// run-pass
-// compile-flags:-Zmir-opt-level=2
-
-// Previously ICEd because we did not normalize during inlining,
-// see https://github.com/rust-lang/rust/pull/77306 for more discussion.
-
-pub fn write() {
-    create()()
-}
-
-pub fn create() -> impl FnOnce() {
-   || ()
-}
-
-fn main() {
-    write();
-}