Порядок оценки параметров не определен, это означает, что компилятор может оценивать параметр в любом порядке, но не должен вызывать UB. Это необязательно для параметров с распределением, например, выделение имеет побочный эффект, но для семантики программы порядок распределения не должен иметь значения.
class person;
// consumes 2 persons, needs to delete them later
void use_persons(person* a, person* b);
int main() {
// Alice can be allocated before or after Bob
use_persons(new person("Alice"), new person("Bob"));
}