> 
> **Possible Duplicate:**  
> 
> [order of evaluation of function parameters](https://stackoverflow.com/questions/6725706/order-of-evaluation-of-function-parameters) 
> 
> 
> 

Is it safe to use the following construction in C/C++?

```
f(g(), h());

```

where `g()` is expected to be evaluated **first**, then `h()`.

Do all compilers show the same behavior on all architectures?