Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Mixing plain char and non-plain char within ?:
#1
The commentary for rules #6.1 and #6.2 state,
Quote:[T]he second and third operands of the ternary conditional operator may both be of plain char type.
Do these rules permit one of these two operands to have plain char type and the other to have signed char or unsigned char type?

For that matter, what about the mixing of such operands with operators considered acceptable for use with objects of plain char type? For example, do the rules permit the following:
Code:
void function( char a, signed char b )
    {
    if( a == b )
        { /*  do something  */ }
    }
?
Reply
#2
These rules do not preclude operating on a mixture of plain char and signed/unsigned char types using assignment, equality or conditional operators. However, this is not recommended and is likely to be precluded in a future revision of the MISRA C Guidelines.
Posted by and on behalf of the MISRA C Working Group
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)