MISRA Discussion Forums

Full Version: Essential Type of parenthesised expression
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
What is the essential type of a parenthesised expression?

For example: ( 3 U ) has a standard type of "unsigned int". Is the essential type of the parenthesised expression "unsigned int" or "unsigned char"
This questions relates to ( expression ), which is one of the options of primary-expression. According to the C standard ( C90 6.1.5, C99 6.4.6) "( )" is an operator. It should therefore be covered by Appendix D.7 on essential types.

The absence of ( ) was an oversight and the documentation should include
Quote:Parenthesis ( ( ) )
The essential type of the result is the essential type of the operand.

(3u) is intended to have an essential type of "unsigned char".