Delphi in a Nutshell by Ray Lischner This page contains errors corrected in the 7/00 reprint. Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem ?page-number?: reader question or request for clarification (18) In the fourth line of the second paragraph, it did read: "...at runtime..." Now reads: "...until runtime..." (29) The fifth line of the Warning, did read: "...safe, if your function returns a string, dynamic array, or Variant." Now reads: "...safe, if your function returns a string, interface, dynamic array, or Variant." <415> In the "Description" of "With Keyword", items #2 and #3 have been swapped. It now reads: 1. Members of records, ... 2. Local variables and subroutine parameters... 3. Members of Self... 4. Global variables in the same unit... 5. Global variables declared in other units... [439] The "Syntax" section in the "$BoolEval Compiler Directive" now reads: {$B-} // default {$BoolEval Off} // default {$B+} {$BoolEval On} (439) The second line of the Warning note did read: "...enabled. Do not disable this option unless you know the code..." Now reads: "...disabled. Do not enable this option unless you know the code..." [439] Under the "Example", the third line has been changed from "{$BoolEval On}" to "{$BoolEval Off}". [440] The third line of the first example has been changed from "{$BoolEval Off}" to "{$BoolEval On}". [477] The description of -$B did read: "Default is -$B+." Now reads: "Default is -$B-". [479] The description of -$V+ did read: Loosens restrictions on var string parameters..." Now reads: "When disabled, loosens restrictions on var string parameters..." (507) StringReplace function did read: "StringReplace returns a copy of S, where NewSubStr is replaced by OldSubStr." Now reads: "StringReplace returns a copy of S, where OldSubStr is replaced by NewSubStr."