error: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. Consider changing the type to `&[...]` --> $DIR/ptr_arg.rs:6:14 | 6 | fn do_vec(x: &Vec) { | ^^^^^^^^^ | note: lint level defined here --> $DIR/ptr_arg.rs:4:9 | 4 | #![deny(ptr_arg)] | ^^^^^^^ error: writing `&String` instead of `&str` involves a new object where a slice will do. Consider changing the type to `&str` --> $DIR/ptr_arg.rs:14:14 | 14 | fn do_str(x: &String) { | ^^^^^^^ error: writing `&Vec<_>` instead of `&[_]` involves one more reference and cannot be used with non-Vec-based slices. Consider changing the type to `&[...]` --> $DIR/ptr_arg.rs:27:18 | 27 | fn do_vec(x: &Vec); | ^^^^^^^^^ error: aborting due to 3 previous errors