In the documentation of string() function it is written that ``if {expr} is a 
Number, Float, String or a composition of them, then the result can be parsed 
back with eval()'' which is not true: special Float values: ``inf'', ``-inf'' 
and ``nan'' are not parsed back by eval unless there are variables with names 
``inf'' and ``nan'' that have appropriate values. I think this should be at 
least mentioned in documentation, like I have done in attached patch.
# HG changeset patch
# User ZyX <[email protected]>
# Date 1282568524 -14400
# Node ID a8029f4ea5a4ca85e7a7a21f13c288ff9ea8a27b
# Parent  073ff46fe397220b4c3946a8f4b349e8d8578a65
Added note about string() nan and inf handling

diff -r 073ff46fe397 -r a8029f4ea5a4 runtime/doc/eval.txt
--- a/runtime/doc/eval.txt      Fri Aug 20 11:11:57 2010 +0200
+++ b/runtime/doc/eval.txt      Mon Aug 23 17:02:04 2010 +0400
@@ -5442,6 +5442,9 @@
                        List            [item, item]
                        Dictionary      {key: value, key: value}
                Note that in String values the ' character is doubled.
+               You should also remember that special Float values like inf 
+               (infinity) and nan (not a number) are considered to be 
+               variable names and so cannot be parsed back.
                Also see |strtrans()|.
 
                                                        *strlen()*

Attachment: signature.asc
Description: This is a digitally signed message part.

Raspunde prin e-mail lui