Places of automatic semicolon insertion followed by in and decrements. E.g.: return 1\n++i; or in a block { return 1\n--j } Same goes for return 2 } j = 1; (the } character is considered a terminating character, thus the result should be a return 2 and j should be set to 1.