Bugs Fixed in 3.9
at_end_of_stream/0
, get/1
, get0/1
, put/1
,
skip/1
, tab/1
incorrectly required that the current input
stream be a text stream.
stream_property(S, end_of_stream(...))
now works for tty streams.
user:goal_expansion/3
was called with the wrong second argument
for imported and built-in predicates.
require/1
was broken.
- The escape sequence
\c
could be misread.
- In ISO mode, terms were printed with non-ISO escape sequences.
charsio:format_to_chars/[3,4]
are now meta-predicates.
charsio:format_to_chars/[3,4]
is now re-entrant.
library(clpfd)
: some Boolean constraints were incorrectly
macro-expanded; some type errors merely failed; over-zealous integer
overflow detection in arithmetic; unifying domain variables did not
work reliably and failed silently when type errors were intended.
library(clpq,clpr)
:
Variables introduced via ordering/1
were not
initialized fully.
library('linda/client')
: shutdown_server/0
now raises an
existence error if there is no connection to the server available.
- Emacs line break points now work for module-files.
- Windows now always uses ^Z where UNIX uses ^D to signal end
of file on input from the terminal.
- Under Windows, when running SICStus under Emacs, the SICStus process
sometimes got stuck in a tight loop when Emacs closed the connection to
the SICStus sub-process. It will now exit instead; see Windows limitations.
- Under Windows,
splfr
now converts the resource name to
lowercase. This is to match the fact that SICStus converts path names
to lowercase under Windows.
- As of SICStus 3.8.7, for
sockets:socket_select/[5,6]
, signal delivery will be
treated as if the select()
call had a zero timeout. Such
spurious timeouts are now handled invisibly within library(sockets)
and
will not be seen by user code.