error[E0308]: mismatched types --> $DIR/suggest-remove-deref.rs:13:9 | LL | foo(*hello); | --- ^^^^^^ expected reference, found struct `S` | | | arguments to this function are incorrect | = note: expected reference `&_` found struct `S` note: function defined here --> $DIR/suggest-remove-deref.rs:10:4 | LL | fn foo<T: X>(_: &T) {} | ^^^ ----- help: consider removing deref here | LL - foo(*hello); LL + foo(hello); | error[E0308]: mismatched types --> $DIR/suggest-remove-deref.rs:21:9 | LL | bar(*s); | --- ^^ expected `&String`, found struct `String` | | | arguments to this function are incorrect | note: function defined here --> $DIR/suggest-remove-deref.rs:17:4 | LL | fn bar(_: &String) {} | ^^^ ---------- help: consider removing deref here | LL - bar(*s); LL + bar(s); | error: aborting due to 2 previous errors For more information about this error, try `rustc --explain E0308`.