16.1 Writing Functions
Functions may be written in the usual way in accordance with the C/C++ language.
The only specifier that has any effect on functions is static
. Interrupt functions are defined with the use of the interrupt
attribute, see 16.2 Function Attributes And Specifiers.
A function defined using the static
specifier only affects the scope of the function, i.e., limits the places in the source code where the function may be called. Functions that are static
may only be directly called from code in the file in which the function is defined. The equivalent symbol used in assembly code to represent the function may change if the function is static
, see 9.2.2 Static Variables. This specifier does not change the way the function is encoded.