Issue #3184 had to do with inference failures around reborrowed pointers, but I neglected to handle reborrowed slices.
As a result, tests like this:
fn subslice<'r>(v: &'r fn()) -> &'r fn() { v }
fn both<'r>(v: &'r fn()) -> &'r fn() {
    subslice(subslice(v))
}
fn main() {
    both(main);
}
 
fail to compile.  I have a patch coming soon.