It evaluates the symbol in global scope, and it will return its object, or an error if undefined:
x = 2
:x + 2 # Error, cannot add Symbol and Int
eval(:x) + 2 # 4
Symbol(:x, 0) # :x0
eval(Symbol(:x,0)) # Error x0 not defined