What is an lvalue?
It's an expression suitable for the left-hand side operand in a binary operation.
It's a constant expression, meaning an expression composed of constants and operations.
It's a location value, meaning a memory address suitable for assigning to a pointer or reference.
It's an expression that represents an object with an address.