Skip to content

v0.11.1

Choose a tag to compare

@github-actions github-actions released this 25 Sep 09:37
· 145 commits to main since this release

Fixed

  • number_chars/2 and number_codes/2 read a list that holds the whole text the way the term
    reader reads a number and unify the result with the first argument, so
    number_chars(1.0e9, "1.0E9") holds, as ISO requires; before, a bound number was written out and
    compared as text. The list may start with layout and comments and a - name token, quoted or
    not, so " 1", "- 1", "'-'1", and "/**/1" read as numbers, while "1 ", "+1", and
    "0X1" are syntax errors. With a bound first argument, an element that is not a character or a
    list that is not one raises the ISO error instead of failing. A float beyond the finite range is
    representation_error(max_float). Every case of the ISO conformity table for number_chars/2
    now gives an allowed answer, and a program runs them the same with or without a compiler attached.
  • A raw control or layout character after 0', such as a newline or a tab, is a syntax error, as
    it is between quotes, in both modes; write 0'\n or 0'\t instead. So is 0' followed by a
    line continuation, which denotes no character and was read as 0.