| project('ternary operator', 'c') | |
| x = true | |
| one = true ? 1 : error('False branch should not be evaluated') | |
| two = false ? error('True branch should not be evaluated.') : 2 | |
| three = '@0@'.format(x ? 'yes' : 'no') | |
| four = [x ? '0' : '1'] | |
| assert(one == 1, 'Return value from ternary true is wrong.') | |
| assert(two == 2, 'Return value from ternary false is wrong.') | |
| assert(three == 'yes', 'Return value for ternary inside method call is wrong.') | |
| assert(four == ['0'], 'Return value for ternary inside of list is wrong.') |