I assume that string.eq should only compare non-null strings; that if either operand is null, that's a trap. But, we should make it explicit.