On 20/08/2010 20:59, Ersin Er wrote:
Hi,
The following code compiles and outputs "1 = 1" as expected:
1 == 1&& writeln("1 = 1");
However, the following code fails to compile (although it should not):
1 == 2&& writeln("1 = 2");
The error is as follows:
Error: integral constant must be scalar type, not void
What I expect that the second code should also compile and output nothing when
executed.
Am I missing something?
Thanks.
The return type of writeln is void.
You can't && with void.
You are asking
'is X true AND <something which can't return true or false> is true'
which is clearly nonesense.
--
My enormous talent is exceeded only by my outrageous laziness.
http://www.ssTk.co.uk