The standard defines:
An object is a region of storage. [ Note: A function is not an object, regardless of whether or not it occupies storage in the way that objects do. —end note ] An object is created by a definition (3.1), by a new-expression (5.3.4) or by the implementation (12.2) when needed.
(12.2 is about temporary objects)
Literals certainly occupy a region of storage. I'm not sure the last sentence of the quote is the necessary condition to be an object. Literals are neither created by a definition nor by a new-expression, but all literals except string literals are temporary objects, right? That leads to the strange conclusion that string literals are not objects while all other literals are objects. This feels wrong.