in reply to Re^5: if/else syntax
in thread if/else syntax

Sorry, but you are wrong. Since immemorial times and K&R release 1,
if(a) if(b) c(); else d();
is DEFINED as
if(a) { if(b) c(); else d(); }
But, this does not mean there is no ambiguity. It's just plain wrong to assume things without the braces because software changes constantly. So, one day you have
if( a ) if( b ) c(); else d(); else e();
and then you see some reason for the else d(); to go away, and you stay with
if( a ) if( b ) c(); else e();
That does not do what you intended and you can be looking for this bug in another place kilometers/miles away (in the code) because you left out some initialization done by e(); etc etc.

IOW: You could do that -- because it's really well-defined behaviour for the C language --, but it does not mean you should.

[]s, HTH, Massa (κς,πμ,πλ)