A function designator is an expression with function type. That is, when you type func(a,b); to call a function, func is the function designator.
(Such a function designator when present in an expression normally "decays" into a pointer to function, much like arrays decay into a pointer to the first element.)
The meaning of "sequence point before the actual call" is that all operands must be fully evaluated (executed) before the function is called.
If you have func(a(), b()), it is unspecified if a() or b() is executed first, but you know that both of them are definitely executed before func is called.
So if a() for example modified a global variable that is also used by func, that would be fine because the access to that variable would be sequenced in a well-defined order.
EDIT - sources
There's C17 6.5.2.2 requiring a function pointer whenever a function is called:
Constraints
The expression that denotes the called function shall have type pointer to function returning void or returning a complete object type other than an array type.
This is made possible by mandatory "function decay", C17 6.3.2.1/4:
A function designator is an expression that has function type. Except when it is the operand of the sizeof operator, or the unary & operator, a function designator with type "function returning type" is converted to an expression that has type "pointer to function returning type".