? : and precedence
Imported from http://bugzilla.roxen.com/bugzilla/show_bug.cgi?id=3681
Reported by Martin Stjernholm mast@roxen.com
The following example requires parenthesis around the assignment to get through the compiler. The equivalent C program passes at least gcc.
int main (int argc)
{
return argc ? argc = 17 : 0;
}
Even though ?: has higher precedence than =, it's reasonable that the compiler would search for : with the lowest possible precedence when it has parsed a ?.