simrat39 / rust-tools.nvim

Tools for better development in rust using neovim's builtin lsp
MIT License
2.17k stars 160 forks source link

Inlay hints is giving wrong hints for recursive functions #420

Open SeanningTatum opened 11 months ago

SeanningTatum commented 11 months ago

Problem

Inlay hints is not giving proper hints for recursive functions

Actual

fn quick_sort(array: &mut Vec<i64>, low: usize, high: usize)  {
        let pivot = partition(array, low, high); => usize
        quick_sort(array, low, pivot.checked_sub(1).unwrap_or(0)); <- (high, default)
        quick_sort(array, pivot + 1, high); <- (low)
}

Expected

fn quick_sort(array: &mut Vec<i64>, low: usize, high: usize)  {
        let pivot = partition(array, low, high); => usize
        quick_sort(array, low, pivot.checked_sub(1).unwrap_or(0)); <- (array, low, high)
        quick_sort(array, pivot + 1, high); <- (array, low, high)
}

Attachments

image

mrcjkb commented 9 months ago

This looks like a rust_analyzer bug.

Maybe related to https://github.com/rust-lang/rust-analyzer/issues/15167?