Skip to content
This repository was archived by the owner on May 23, 2024. It is now read-only.

Commit 29ff851

Browse files
authored
Add ICEs 77696, 77910, 77911, 77919 (#504)
* Add ICE 77696 * Add ICE 77919 * Add ICE 77911 * Add ICE 77910 * Add end of file newline
1 parent 64bad42 commit 29ff851

File tree

4 files changed

+48
-0
lines changed

4 files changed

+48
-0
lines changed

ices/77696.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#![feature(impl_trait_in_bindings)]
2+
3+
struct S;
4+
trait Trait {
5+
fn demo(&self) {}
6+
}
7+
impl Trait for S {}
8+
fn main() {
9+
let a: &impl Trait = &S;
10+
}

ices/77910.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
fn foo(s: &i32) -> &i32 {
2+
let xs;
3+
xs
4+
}
5+
6+
fn main() {
7+
let y;
8+
assert_eq!(foo, y);
9+
}

ices/77911.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/bin/bash
2+
3+
rustc -Z mir-opt-level=2 - << EOF
4+
use std::fs::File;
5+
use std::io::{BufRead, BufReader};
6+
7+
fn file_lines() -> impl Iterator<Item = String> {
8+
BufReader::new(File::open("data.txt").unwrap())
9+
.lines()
10+
.map(Result::unwrap)
11+
}
12+
13+
fn main() {
14+
for _ in file_lines() {}
15+
}
16+
17+
EOF

ices/77919.rs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
trait TypeVal<T> {
2+
const VAL: T;
3+
}
4+
struct Five;
5+
struct Multiply<N, M> {
6+
_n: PhantomData,
7+
}
8+
impl<N, M> TypeVal<usize> for Multiply<N, M> where N: TypeVal<VAL> {}
9+
10+
fn main() {
11+
[1; <Multiply<Five, Five>>::VAL];
12+
}

0 commit comments

Comments
 (0)