Skip to content

Commit 78feb4d

Browse files
Add checkup on number of arguments
1 parent 4bb9023 commit 78feb4d

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/librustc_typeck/check/intrinsic.rs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,13 @@ pub fn check_platform_intrinsic_type(ccx: &CrateCtxt,
408408
let mut structural_to_nomimal = HashMap::new();
409409

410410
let sig = tcx.no_late_bound_regions(i_ty.ty.fn_sig()).unwrap();
411+
if intr.inputs.len() != sig.inputs.len() {
412+
span_err!(tcx.sess, it.span, E0444,
413+
"platform-specific intrinsic has invalid number of \
414+
arguments: found {}, expected {}",
415+
intr.inputs.len(), sig.inputs.len());
416+
return
417+
}
411418
let input_pairs = intr.inputs.iter().zip(&sig.inputs);
412419
for (i, (expected_arg, arg)) in input_pairs.enumerate() {
413420
match_intrinsic_type_to_type(tcx, &format!("argument {}", i + 1), it.span,

0 commit comments

Comments
 (0)