According to the Nim manual, the variable type is a "static type" while the actual value the variable points to in memory is the "dynamic type".
How is it possible they can be different types? I thought assigning the wrong type to a variable would be an error.