Container level variables have static lifetime and are order-independent and lazily analyzed. The initialization value of container level variables is implicitly comptime. If a container level variable is const then its value is comptime-known, otherwise it is runtime-known.
I wonder if I could pass the address of a static variable as a comptime argument to a function. But apparently the compiler is not ok with that.
Does it make sense to say that the value of the variable might not be known, but its address should be?
x is not a container level variable in this example. You would have to declare it outside of main for it to be one (or otherwise place it in a struct/union/enum definition).