La llamada a una función especifica la relación entre los parámetros reales y los formales y ejecuta la función. Los parámetros se asocian normalmente por posición, aunque, opcionalmente, también se pueden asociar por nombre. Si la función tiene parámetros formales por omisión, no es necesario asociarles un parámetro real.
La llamada a una función devuelve un resultado que ha de ser recogido, bien asignándolo a una variable del tipo adecuado, bien integrándolo en una expresión.
function_call ::= function_name; | function_prefix actual_parameter_part; actual_parameter_part ::= (parameter_association {, parameter_association}) parameter_association ::= [formal_parameter_selector_name =>] explicit_actual_parameter explicit_actual_parameter ::= expression | variable_name
function Suma (A, B: Integer) return Integer; ...
X, Y, Z : Integer; R : Float; ...
-- Llamadas asignando el resultado a una variable Z := Suma (3, Y); Z := Suma (X, Y); Z := Suma (X, B => Y);
-- Llamadas Integradas en expresiones if Suma (X, Y) > Z then ... end if; Z := Suma (X, Y) * 10; R := Float (Suma (X, Y)) / 10.0;