10.17.2 Bugs Fixed
Compiler bug affecting very large clauses if
library(clpfd) had been loaded
would sometimes crash SICStus with a memory access error.
library(comclient) did not dispose of all references to COM
comclient_garbage_collect/0 did not work correctly
(but should not be needed if you use
SP_garbage_collect_external_objects() would reclaim live
objects. This affected
- The Java flag -Dsicstus.path should no longer be needed when
using Jasper, except in exceptional circumstances. SICStus will use the
location of the SICStus run-time library, e.g.
libsprt312.so to set this up automatically.
SP_initialize() will now return an error code if memory could not
be allocated. It used to terminate the process. Among other things this
ensures that creating a
se.sics.jasper.SICStus object will throw
an exception instead of terminating Java if there is insufficient
library(timeout) is now more precise, in particular when calls to
time_out/3 are nested. The resolution has not been improved, it
is still on the order of a few tens of milliseconds.
library(timeout) under Windows could sometimes deadlock or otherwise
format/[2,3] reported errors inconsistently.
undo/1: missing meta-predicate declaration.
library(clpfd): constraints without arguments handled
incorrectly; inconsistent overflow handling; heap overflow detection;
element(X,L,Y) with non-ground
library(chr): spurious error messages could occur when
loading CHR files from all-in-one executables.
Dangling pointer problems with instances if the class
was asserted to after the instance had been created.
Memory leak when calling a Java method.
Segmentation fault on Solaris when passing arguments declared as
library(gauge): The help button did not work under Windows if
SICStus was installed in the default location or other folder with a
space in the path.
- Foreign resources generated with
splfr --exclusive-access could
not be loaded more than once into the same process. The only SICStus
library affected is
- Problems with loading and unloading foreign resources if the name was
not unique or if file path facts had changed.
unload_foreign_resource/1 now takes the name of a
foreign resource. For backward compatibility it still accepts a file
name treated as for
load_foreign_resource/1. See Foreign Resources.
unload_foreign_resource/1 is still a meta-predicate but
the module is ignored.
SPARC native code issues: flushing the instruction cache, redefining
The spdet and spxref tools now work also when installed
as part of a pre-built binary installation.
The debugger command `t' (backtrace n) showed too much.
SP_read_from_string() would leak memory.
SICStus runtimes will work correctly for executables located at the root
of a drive, e.g. as