[OpenACC] Ensure clause expressions side-effects don't happen
The OpenACC standard says side-effects/ordering of expressions in
clauses and constructs (not yet, but PR for constructs) cannot be
depended on. We already had infrastructure to ensure constructs, and
non-template clauses did this right, but we had the ordering of a call
vs transform of the clauses happened in tree transform.
This patch ensures that the evaluation context put together for the
construct covers the clauses as well in tree transform.