I'm working on an industrial code for Cortex-M0 controller, using uVision Keil 4.71.0.0 IDE. Our code is supposed to respect MISRA rules and is routinely checked with QA-C.
My problem is that some controller-specific functions like __wfi()
, __current_sp()
etc. don't seem to be defined anywhere, and QA-C is complaining about them:
340: __wfi();
^
Msg(5:3335) No function declaration.
Implicit declaration inserted: 'extern int __wfi();'.
CC Coding Rule 6 <next>
Right-clicking on the function name in Keil and selecting "Go to definition" confirms that the function is not defined:
Source Browser: '__wfi' - undefined Definition/Reference!
Does Keil provide an official header file with prototypes of such functions? Hardcoding such prototypes in our project's code or creating QA-C exceptions will require a formal review process which I would like to avoid.