As well as both
if a then
DoSomething
else
DoOtherThing;
and
if a then
DoSomething;
else
DoOtherThing;
At least to me they are :-)
This "feature" is so unclean and so poorly informed about WHY the ; is
a part of the language.
First of all, Pascal is not a line based language. The ; is used as a
terminator for a certain part of code, not as a terminator for a
blockstatement.
Mixing these three concepts introduces ambiguity.
The ; implies a break, i.e. do not continue the evaluation of that part
of the code. Or, like in natural language, whatever comes after it has
no direct bearing for its meaning.
It is much like natural language. The ; should not be there if the code
is ment to be read as a single sentence. This is pure logical.
I hope this "patch" will never make it into production. It is ill informed.
_______________________________________________
fpc-devel maillist - fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel