Try print type? if false  ; this is logic!
Try print 1 + if false  ; this is 41 on my computer
print type? if false 
print 1 + if false 
I would guess that something is not set here. What does the language definition say? Should if false [anything] be none? It is in REBOL.
if false [anything]
Red should return none too in such case.
FIX: issue #321 (Result of if, when condition is false, is arbitrary)