This sentence in the Go spec under
https://golang.org/ref/spec#Constant_expressions took me several attempts to parse:
"Except for shift operations, if the operands of a binary operation are different kinds of untyped constants, the operation and, for non-boolean operations, the result use the kind that appears later in this list: integer, rune, floating-point, complex."
It was the two comma'd clauses "the operation and, for non-boolean operations" in the middle that caused me to do a double and triple-take. Partly because there are so many clauses piled up, but partly because I first read "the operation and" as "the operation &".
Seems like this sentence could be refactored for simplicity. I think setting off "for non-boolean operations" in parens instead of commas would help a little. Or, probably better, breaking up into a couple of sentences. There are three types of operations here with different behavior: shift operations, boolean operations, and normal/other operations.
-Ben