begin integer x ! The intention was this: x = (65 << 24) ! (76 << 16) ! (71 << 8) ! 3 ! but the vax compiler contained this line: x = ((3 + (71 << 8)) + 76 << 16) + 65 << 24 ! and C is complaining that the result does not fit in 32 bits. ! So clearly, the precedence of shift vs add is wrong! ! 5 Statements compiled ! test/shiftprecbug.c: In function 'main': ! test/shiftprecbug.c:17:39: warning: result of '1196359745 << 24' requires 56 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=] ! 17 | X = ((3 + (71 << 8)) + 76 << 16) + 65 << 24; ! | ^~ endofprogram