dinfo: introduce extra_empty()
We do need to have an empty state to handle conditions which are
impossible. For example:
x = 1;
if (x >= 2) { ...
If we treat an impossible state as an extra_undefined() then when we merge
the extra_undefined() and the true state we get an extra_undefined(). What
we want is an extra_empty() and when we merge it with the true state we
get the true state.
There are plenty of places in the code where certain conditions. Perhaps
on the first loop through then we don't enter certain if statements. So
it makes sense to handle impossible conditions in a deliberate way.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>