Free Pascal supports the use of functions and procedures. It supports
Function overloading, i. e. functions with the same name but different parameter lists.
Const parameters.
Open arrays (i. e. arrays without bounds).
Variable number of arguments as in C.
Return-like construct as in C, through the Exit keyword.
Remark In many of the subsequent paragraphs the words procedure and function will be used interchangeably. The statements made are valid for both, except when indicated otherwise.