diff options
| author | Dave Cheney <dave@cheney.net> | 2014-08-19 10:52:50 +1000 |
|---|---|---|
| committer | Dave Cheney <dave@cheney.net> | 2014-08-19 10:52:50 +1000 |
| commit | afb6221bf79d7ed59e4a859f147bbed2ea2c3617 (patch) | |
| tree | 3151c4296291924d78bc272993b48cd466c12460 | |
| parent | 326f48eb9cfcdaf7433756361b465df5b889dd46 (diff) | |
| download | go-afb6221bf79d7ed59e4a859f147bbed2ea2c3617.tar.xz | |
cmd/6g: fix undefined behavior in reg.c
Update #8527
Fixes, cmd/6g/reg.c:847:24: runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
LGTM=minux, rsc
R=minux, rsc
CC=dvyukov, golang-codereviews
https://golang.org/cl/129290043
| -rw-r--r-- | src/cmd/6g/reg.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/cmd/6g/reg.c b/src/cmd/6g/reg.c index 02945fb401..5e3a198186 100644 --- a/src/cmd/6g/reg.c +++ b/src/cmd/6g/reg.c @@ -844,7 +844,7 @@ prop(Reg *r, Bits ref, Bits cal) if(v == v1 || ((cal.b[j/32]>>(j&31))&1) == 0) { for(; v1 != nil; v1 = v1->nextinnode) { j = v1 - var; - cal.b[j/32] |= 1<<(j&31); + cal.b[j/32] |= 1UL<<(j&31); } } } |
