'

La sobrecarga de funciones y procedimientos consiste en crear varias funciones y procedimientos con el mismo nombre o identificador, diferenciándose en la cantidad de parámetros ó en el uso de parámetros con tipos de datos diferentes.

Es decir se puede crear un procedimiento para ordenar una lista de nombres que acepte como parámetro un arreglo con cadenas de caracteres, y el mismo identificador del procedimiento anterior se puede usar para crear otro procedimiento para ordenar una lista de números que acepte como parámetro un arreglo de enteros. A continuación el ejemplo:

En el caso de usar la sobrecarga en funciones no se puede crear funciones con el mismo nombre y que solamente se diferencien en el valor devuelto por la función. No es posible hacer una sobrecarga de una función o procedimiento diferenciando sus parámetros con el uso de la palabra reservada Var, es decir si un procedimiento tiene un parámetro que use la palabra reservada Var y el otro procedimiento tiene el mismo parámetro sin el uso de Var, entonces los procedimientos no serán sobrecargados; lo mismo sucede con las funciones. La palabra reservada overload es usado por el compilador delphi cuando se desea sobrecargar funciones y procedimientos, pero en freepascal todas las funciones y procedimientos pueden ser sobrecargados sin el uso de esta palabra reservada, excepto cuando se sobrecarguen funciones o procedimientos que esten en unidades distintas. ver el capitulo 6.7. Unidades (Librerias), para mayor información.