In Section 7.6.1 (page 232 of the 2nd edition), symbolic constants for number ('8'), quit ('q') and print (';') are defined as const.
Is there a reason for these to be defined as const rather than as constexpr? Wouldn't constexpr be more appropriate as these will never change during runtime?
I guess the compiler is interpreting them as constexpr, as (at least) number is being used as the target of a case in a switch statement.