Closed
Description
Using #[cmse_nonsecure_entry]
on a function limits its capabilities. Namely, only up to 4 32-bit arguments can be accepted, and none of them may be passed on the stack. The same is true for the "C-cmse-nonsecure-call"
ABI.
Currently, this is checked in LLVM, so the user experience is sub-par, and the check happens very late (during codegen instead of type checking). It should be checked in rustc instead.