https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107874
--- Comment #20 from anlauf at gcc dot gnu.org --- (In reply to anlauf from comment #19) > I don't recall having seen a mentioning in the standard of the order of > evaluation of different function (or subroutine) arguments. Do you? The closest I can find is the following in F2018: C.5.1 Evaluation of function references (10.1.7) (1) If more than one function reference appears in a statement, they can be executed in any order (subject to a function result being evaluated after the evaluation of its arguments) and their values cannot depend on the order of execution. This lack of dependence on order of evaluation enables parallel execution of the function references. And: A.2 Processor dependencies According to this document, the following are processor dependent: ... • the order of finalization of components of objects of derived type (7.5.6.2) • the order of finalization when several objects are finalized as the consequence of a single event (7.5.6.2);