Rollup merge of #78089 - varkor:opt_const_param_of-error, r=lcnr
Fix issue with specifying generic arguments for primitive types Fixes https://github.com/rust-lang/rust/issues/78005. r? @lcnr
This commit is contained in:
commit
684fbd50ab
@ -112,12 +112,16 @@ pub(super) fn opt_const_param_of(tcx: TyCtxt<'_>, def_id: LocalDefId) -> Option<
|
||||
tcx.sess.delay_span_bug(tcx.def_span(def_id), "anon const with Res::Err");
|
||||
return None;
|
||||
}
|
||||
_ => span_bug!(
|
||||
DUMMY_SP,
|
||||
"unexpected anon const res {:?} in path: {:?}",
|
||||
res,
|
||||
path,
|
||||
),
|
||||
_ => {
|
||||
// If the user tries to specify generics on a type that does not take them,
|
||||
// e.g. `usize<T>`, we may hit this branch, in which case we treat it as if
|
||||
// no arguments have been passed. An error should already have been emitted.
|
||||
tcx.sess.delay_span_bug(
|
||||
tcx.def_span(def_id),
|
||||
&format!("unexpected anon const res {:?} in path: {:?}", res, path),
|
||||
);
|
||||
return None;
|
||||
}
|
||||
};
|
||||
|
||||
generics
|
||||
|
5
src/test/ui/usize-generic-argument-parent.rs
Normal file
5
src/test/ui/usize-generic-argument-parent.rs
Normal file
@ -0,0 +1,5 @@
|
||||
fn foo() {
|
||||
let x: usize<foo>; //~ ERROR const arguments are not allowed for this type
|
||||
}
|
||||
|
||||
fn main() {}
|
9
src/test/ui/usize-generic-argument-parent.stderr
Normal file
9
src/test/ui/usize-generic-argument-parent.stderr
Normal file
@ -0,0 +1,9 @@
|
||||
error[E0109]: const arguments are not allowed for this type
|
||||
--> $DIR/usize-generic-argument-parent.rs:2:18
|
||||
|
|
||||
LL | let x: usize<foo>;
|
||||
| ^^^ const argument not allowed
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0109`.
|
Loading…
Reference in New Issue
Block a user