There is no guarantee about the order of evaluation within a composite
literal in general. However, there is a guarantee that all function
calls will be evaluated in left to right order in any expression,
including a composite literal. So while you didn't actually say what
you expect, I think that your example is guaranteed to behave the same
in any Go implementation.
Ian