Существует ли точка последовательности между вызовом функции, возвращающей объект, и вызовом метода для этого объекта?

Если я напишуf(x)->g(args, ...) могу ли я положиться на точку последовательности послеf(x) до оценкиargs, ...? Я могу видеть аргументы в обоих направлениях: §

1.9.17 "При вызове функции (независимо от того, является ли функция встроенной), после вычисления всех аргументов функции (если таковые имеются) существует точка последовательности, которая имеет место перед выполнением любых выражений или операторов в теле функции.Существует также точка последовательности после копирования возвращенного значения и перед выполнением любых выражений вне функции. "С другой стороны, указатель объекта неявно является скрытым аргументом.this как будто янаписаноg(f(x), args, ...) что говорит об этомЭто как аргумент, и поэтому не указано.

-> оператор не является нормальным бинарным оператором, так какg(...) не могу оцениваться раньшеf(x) как мог бы, если бы я написалf(x) + g(...), Я'Я удивлен, что могуне могу найти какое-то конкретное утверждение по этому поводу.

Ответы на вопрос(2)

Ваш ответ на вопрос