x is evaluated to produce the variable. y is evaluated and, if required, converted to the type of x through an implicit conversion (§12.2). That all sounds fine, but my understanding of reality is ...