The values โโof the variables are known at compile time, so there is no need to store them at run time.
int bar = 0;
just translates to
"shift the stack pointer by 4 bytes"
Variable types do not have to be known at all at runtime. You may get compiler warnings about incompatible types, for example, printing an int
with %c
, but for you this is more of a consistency check. A variable simply names a piece of data, and you decide how to interpret it - as an integer, as a pointer, as 4 characters ...
source share