40ae34194c
detects redundant imports that can be eliminated. for #117772 : In order to facilitate review and modification, split the checking code and removing redundant imports code into two PR.
33 lines
764 B
Rust
33 lines
764 B
Rust
// run-pass
|
|
// Test an issue where global caching was causing free regions from
|
|
// distinct scopes to be compared (`'g` and `'h`). The only important
|
|
// thing is that compilation succeeds here.
|
|
|
|
// pretty-expanded FIXME #23616
|
|
|
|
#![allow(missing_copy_implementations)]
|
|
#![allow(unused_variables)]
|
|
|
|
pub struct CFGNode;
|
|
|
|
pub type Node<'a> = &'a CFGNode;
|
|
|
|
pub trait GraphWalk<'c, N> {
|
|
/// Returns all the nodes in this graph.
|
|
fn nodes(&'c self) where [N]:ToOwned<Owned=Vec<N>>;
|
|
}
|
|
|
|
impl<'g> GraphWalk<'g, Node<'g>> for u32
|
|
{
|
|
fn nodes(&'g self) where [Node<'g>]:ToOwned<Owned=Vec<Node<'g>>>
|
|
{ loop { } }
|
|
}
|
|
|
|
impl<'h> GraphWalk<'h, Node<'h>> for u64
|
|
{
|
|
fn nodes(&'h self) where [Node<'h>]:ToOwned<Owned=Vec<Node<'h>>>
|
|
{ loop { } }
|
|
}
|
|
|
|
fn main() { }
|