When this code is run, the output is:
In outer class m1()
G.s12
Why does the call to m1() execute before printing the String variable? Should't the method arguments be evaluated from left to right? Also, the return value from m1 prints after the String value.