(See for reference What is Allowed in a constexpr Function?)
I know that constexpr functions have some restrictions upon what is allowed in them. The following is a quote lists them.
The function body may contain anything but:
- an asm declaration
- a goto statement
- a statement with a label other than case and default
- a try-block
- a definition of a variable of non-literal type
- a definition of a variable of static or thread storage duration
- a definition of a variable for which no initialization is performed
I'd like to know, how does the restrictions upon consteval function differ from the one specified above. Is there something that can be allowed in consteval fucntion but not constexpr function, and vise versa.