You misunderstood that table, function application associates to the left, not the right.
It comes into play when dealing with functions which return other functions.
Here is an example where it matters:
#include <iostream>
template<typename T>
T id_1(T t) {
t(1);
return t;
}
typedef void (*func)(int);
void nothing(int x) {}
func print(int x) {
std::cout << x << std::endl;
return nothing;
}
int main() {
std::cout << "left associative:\n";
id_1(print)(2);
std::cout << "right associative:\n";
id_1((print)(2));
}
Output
left associative:
1
2
right associative:
2