Bei folgendem Funktionsaufruf:
f(g(), h())
Könnte eine Implementierung theoretisch g()und h()parallel ausgeführt werden, da die Reihenfolge der Auswertung von Funktionsargumenten nicht angegeben ist (soweit mir bekannt ist dies in C ++ 11 immer noch der Fall) ?
Eine solche Parallelisierung konnte nur eingesetzt werden, gund es war hbekannt, dass sie ziemlich trivial war (im offensichtlichsten Fall nur auf lokale Daten zuzugreifen), um keine Parallelitätsprobleme zu verursachen, aber über diese Einschränkung hinaus kann ich nichts sehen, was dies verbietet .
Erlaubt der Standard dies? Auch wenn nur nach der Als-ob-Regel?
(In dieser Antwort behauptet Mankarse etwas anderes; er zitiert jedoch nicht den Standard, und mein Durchlesen von [expr.call]hat keinen offensichtlichen Wortlaut ergeben.)