diff --git a/ices/99665-1.rs b/ices/99665-1.rs new file mode 100644 index 00000000..df68b3b5 --- /dev/null +++ b/ices/99665-1.rs @@ -0,0 +1,14 @@ +pub trait MyComponent { + type Properties; +} + +impl MyComponent for M +where + M: 'static, +{ + type Properties = (); +} + +fn main() { + |_: <&u8 as MyComponent>::Properties| {}; +} diff --git a/ices/99665-2.rs b/ices/99665-2.rs new file mode 100644 index 00000000..4bd68057 --- /dev/null +++ b/ices/99665-2.rs @@ -0,0 +1,21 @@ +pub trait MyComponent { + type Properties; +} + +impl MyComponent for M +where + M: 'static, +{ + type Properties = TableProps; +} + +pub struct TableProps +where + M: 'static, +{ + pub entries: M, +} + +fn main() { + |_: <&u32 as MyComponent>::Properties| {}; +} diff --git a/ices/99734.sh b/ices/99734.sh new file mode 100755 index 00000000..d433630d --- /dev/null +++ b/ices/99734.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +cat > out.rs <<'EOF' + +pub use std::*; + +pub mod task {} + +pub fn main() { + println!("Hello, world!"); +} + +EOF + +rustdoc out.rs diff --git a/ices/99777-1.rs b/ices/99777-1.rs new file mode 100644 index 00000000..8333c8e5 --- /dev/null +++ b/ices/99777-1.rs @@ -0,0 +1,4 @@ +pub fn test() { + #[doc(alias = "test")] + let num_flags = 0; +} diff --git a/ices/99777-2.rs b/ices/99777-2.rs new file mode 100644 index 00000000..8333c8e5 --- /dev/null +++ b/ices/99777-2.rs @@ -0,0 +1,4 @@ +pub fn test() { + #[doc(alias = "test")] + let num_flags = 0; +} diff --git a/ices/99777-3.rs b/ices/99777-3.rs new file mode 100644 index 00000000..2e9a41a3 --- /dev/null +++ b/ices/99777-3.rs @@ -0,0 +1,6 @@ +fn main() { + match () { + #[doc(alias = "foo")] + _ => {} + } +} diff --git a/ices/99820.rs b/ices/99820.rs new file mode 100644 index 00000000..3fc22108 --- /dev/null +++ b/ices/99820.rs @@ -0,0 +1,19 @@ +#![feature(const_trait_impl)] +#![feature(fn_traits)] +#![feature(unboxed_closures)] + +struct Closure; + +impl const FnOnce<&usize> for Closure { + type Output = usize; + + extern "rust-call" fn call_once(self, arg: &usize) -> Self::Output { + *arg + } +} + +enum Bug { + V(T), +} + +fn main() {} diff --git a/ices/99828.rs b/ices/99828.rs new file mode 100644 index 00000000..f93b52cb --- /dev/null +++ b/ices/99828.rs @@ -0,0 +1,9 @@ +fn get_iter(vec: &[i32]) -> impl Iterator + '_ { + vec.iter() +} + +fn main() { + let vec = Vec::new(); + let mut iter = get_iter(&vec); + iter.next(); +}