From f143ae02209a5de80d3b2ad336984274d793fb19 Mon Sep 17 00:00:00 2001 From: Milan Bouchet-Valat Date: Fri, 17 Jun 2016 17:11:34 +0200 Subject: [PATCH] Fix StackOverflow error with >>, << and >>> on Bool and Unsigned Error was triggered e.g. by false >> 0x01. --- base/bool.jl | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/base/bool.jl b/base/bool.jl index cef413455db46..c867ede02515d 100644 --- a/base/bool.jl +++ b/base/bool.jl @@ -20,6 +20,10 @@ typemax(::Type{Bool}) = true (|)(x::Bool, y::Bool) = box(Bool,or_int(unbox(Bool,x),unbox(Bool,y))) ($)(x::Bool, y::Bool) = (x!=y) +>>(x::Bool, c::Unsigned) = Int(x) >> c +<<(x::Bool, c::Unsigned) = Int(x) << c +>>>(x::Bool, c::Unsigned) = Int(x) >>> c + signbit(x::Bool) = false sign(x::Bool) = x abs(x::Bool) = x