Dear All I've found a simple case of a bug in writeln(): program sumbug(input,output); begin writeln(10.0*0.01); writeln(100.0*0.001); writeln(1.0*0.1); end. All should print 0.1 I guess, but I get: % ./bug :.000000000000000e-02 :.000000000000000e-02 1.000000000000000e-01 Interestingly ':' is the next character after '9' in the ASCII table, so it appears to be trying to print out the ASCII chacter for '10' (ten). 10.0e-02 is 0.1 after all ! This happens with the latest gpc-20011123 and also gpc-20010512 (that's all I've tested). Many thanks Ian -- Ian Thurlbeck http://www.stams.strath.ac.uk/ Statistics and Modelling Science, University of Strathclyde Livingstone Tower, 26 Richmond Street, Glasgow, UK, G1 1XH Tel: +44 (0)141 548 3667 Fax: +44 (0)141 552 2079