Matthew Flatt
2847d1d22a
improve atan
, asin
, and acos
on complex numbers
...
Replace naive calculations with ones based on Kahan's "Branch Cuts for
Complex Elementary Functions" as implemented in Chez Scheme.
2019-06-28 16:51:48 -06:00
Matthew Flatt
5f92ffa3c4
improve asin
acos
on +inf.0 and -inf.0
...
Avoid tripping into +nan.0 by using 0 instead of 0.0
for the imaginary part of a real number and by using
`atan` with two arguments instead of one.
original commit: e3f499adfbcbe94726fe11869ca23176fa2c3b78
2019-06-28 15:58:17 -06:00
Matthew Flatt
d31368fc09
improve expt
on exact non-integer second argument
...
Correct the case that converting the second argument to an inexact
numbe produces an integer by losing precision.
original commit: 467db7fa1f1d068e9bad250b93044d157cd3806d
2019-06-28 14:33:18 -06:00
Matthew Flatt
8e1b27592f
cs: disable non-decimal string->number
on inexacts
2019-06-28 10:57:59 -06:00
Matthew Flatt
77bcfde77c
fix a memory-accounting test
2019-06-28 10:57:59 -06:00
Matthew Flatt
75ff7870bd
improve /
precision on mixed exact--inexact complex numbers
2019-06-28 10:57:59 -06:00
Matthew Flatt
ff94c6d8d8
cs: fix variable-reference->module-...
on reference to primitive
2019-06-28 10:57:59 -06:00
Matthew Flatt
032ab4e374
cs: add place logging
2019-06-28 10:57:59 -06:00
Matthew Flatt
35a0dfcafe
improve precision of complex-number divide
...
original commit: 4c9a7f6abb1258158d48fcdb656de300902cf3c7
2019-06-28 10:42:57 -06:00
Noah W M
c84765b554
Update general-function.scrbl
2019-06-27 23:08:13 -05:00
Matthew Flatt
67a1cd9274
fix OpenSSL ephemeral cipher test
...
Thanks to Sam for the repair.
2019-06-27 15:04:45 -06:00
Matthew Flatt
993563a829
openssl: fix a test to suppress some expected error output
2019-06-27 15:04:45 -06:00
Matthew Flatt
d93c12fcda
raise some test timeouts
2019-06-27 15:04:44 -06:00
Ryan Culpepper
3c12957c7e
template: mark pattern variables as disappeared
...
This fixes a bug introduced in 291565.
2019-06-27 22:22:08 +02:00
Paulo Matos
aaf1127093
Shallow clone LLVM
2019-06-27 10:33:48 +02:00
Matthew Flatt
cbaddd2164
cs & thread: repairs for memory accounting and places
2019-06-26 13:50:06 -06:00
Matthew Flatt
8985a409b8
openssl: fix bytes-terminator problem on Racket CS
...
Make sure the argument to SSL_ctrl has a nul terminator.
2019-06-26 13:50:06 -06:00
Matthew Flatt
5e59ae0586
rktio: use only async-signal safe after fork
...
In particular, `malloc` is not async-signal safe.
2019-06-26 13:50:06 -06:00
Matthew Flatt
0e2805a0db
raise timeout on raco exe
test
2019-06-26 13:50:06 -06:00
Matthew Flatt
57c997042e
repair for make-object-finder
with threads
...
The `(cdr tc-ptr-offsets)` in the recrusrion was wrong, but use
`thread->objects` and `thread->stack-objects` to work more generally.
original commit: fd620699dc620d3d1a522800a7dfaff6cc0393bb
2019-06-26 12:32:02 -06:00
Paulo Matos
7422abb42a
Remove reference to NO_SCHEME_EXNS ( #2712 )
2019-06-26 17:03:12 +02:00
Matthew Flatt
f97342b138
raco exe test: add no-GUI mode
2019-06-25 21:03:52 -06:00
Matthew Flatt
a0023d5797
fix environment-variables-copy
and case-normalization
...
Preserve the original case of an environment variable for
round-tripping on systems where environment variable names are
case-normalized.
2019-06-25 14:56:39 -06:00
Matthew Flatt
d4123698b4
fix case-sensitivity in a test
2019-06-25 11:15:30 -06:00
Matthew Flatt
8c1dbae88b
expander: improve extractor to recognize once-set variables
...
When `set!` is used to tie a recursove knot in a flattened linklet,
the expander can recognize that pattern and not complain that a
mutable variable might be shared across places. Improving that
inference means fewer `++global-ok` flags in Makefiles.
This commit also avoids single-quote as an escaping form in a
makefile, which doesn't work with nmake on Windows.
2019-06-25 08:43:38 -06:00
Matthew Flatt
3fb226ce2a
cs: fix future-thread signaling
...
Fix confusion between signal and broadcast operation.
2019-06-24 20:14:52 -06:00
Matthew Flatt
b64e17388f
cs: fix stdio/syslog GC logging as triggered by future thread
...
Always use the main `rktio` instance and don't try to explicitly start
atomic mode.
2019-06-24 20:00:51 -06:00
Matthew Flatt
309a0c2489
cs: fix future-logging race
2019-06-24 18:28:03 -06:00
Matthew Flatt
51ab4a5c6a
thread: repairs for event logging
...
Fix RacketCS so that the future visualizer works.
2019-06-24 16:36:16 -06:00
Matthew Flatt
0106abaf6e
bump version number
...
Since it removes an built-in place-local definition, commit 564dcf339a
can affect compilation for Racket CS.
2019-06-24 15:29:45 -06:00
Matthew Flatt
87673902dc
docs: correct description of file-position
...
Explain more when a file's size is changed by `file-position`.
2019-06-24 15:28:22 -06:00
Matthew Flatt
0d3d0d7d86
thread: add notes on the behavior of futures
2019-06-24 14:54:37 -06:00
Matthew Flatt
564dcf339a
cs: fix memory accounting and futures
...
Also avoid problems with interrupting a rapidly allocating
computation and shutting down the main custodian.
2019-06-24 13:59:03 -06:00
Matthew Flatt
a5a84ea8c6
remove accidentally committed debugging printout
2019-06-24 08:14:58 -06:00
Matthew Flatt
1192225c97
avoid some compiler warnings
2019-06-23 06:46:28 -06:00
Matthew Flatt
dd0fe4ac40
unbreak MSVC build
...
Move `NORETURN` of 2e3a618b00 to start of function declaration, where
it works for both GCC and MSVC.
original commit: 10fc4a2406ecd34fa686d9d643ee63d7c12d6f97
2019-06-23 05:57:53 -06:00
Matthew Flatt
2a530b4c88
makefile: avoid git submodule update
in cs-as-is
2019-06-22 08:01:12 -06:00
Matthew Flatt
1e84b11462
expander: repair extraction when using an existing Racket build
...
Recent improvements to module-name resolution caching exposed a
problem in the extraction setup.
2019-06-22 07:43:02 -06:00
Matthew Flatt
f00de510de
cs configure: support installed libz and libzl4
...
Continue to build the bundled-with-Chez zlib and lz4 by default, but
support `--enable-libz` and `--enable-liblz4`, and turn those on when
the Chez Scheme directory doesn't have bundled versions. That should
make things build right for distributions where repackaging
dependencies is disallowed or discouraged.
2019-06-22 07:11:09 -06:00
Matthew Flatt
6647d832bb
configure: further improvements for NetBSD and OpenBSD
...
Enable ELF support for `racketcs` embedding, and add `paxctl +m`
build steps for NetBSD.
2019-06-22 06:23:47 -06:00
Matthew Flatt
7706b447a5
configure: propagate ARFLAGS to libffi configure
2019-06-21 21:54:22 -06:00
Matthew Flatt
5fb38fc246
cs: sync include path for {Free,Open}BSD
2019-06-21 21:12:17 -06:00
Matthew Flatt
e68269b357
makefile: avoid automatic "Makefile" rebuild
2019-06-21 19:46:39 -06:00
Matthew Flatt
9f1fe73797
change build to use archives instead of merging objects
...
Merging ".o" files to one "kernel.o" can be convenient for further
linking, but it requires running `ld` directly. Running `ld` directly
sometimes runs into a mismatch between the C compiler and the default
`ld`. It's better to use the more typical approach of collecting
objects into an archive.
original commit: 7d5b60c7566570655e567495d86d546101cf8fb4
2019-06-21 18:53:33 -06:00
Matthew Flatt
90b79524aa
revise build to avoid ld
and nicear
...
The Chez Scheme build process now create an archive instead of linking
"kernel.o". Adjust the Racket CS build to use archives instead of
"kernel.o".
Also, modernize the Racket build's use of `ar`. Using the flags `rc` by
default (instead of `ruv`) should avoid the need for `nicear`.
2019-06-21 16:53:58 -06:00
Matthew Flatt
a043c4b3a8
mark functions that never return as NORETURN
...
@pmatos did all the work here in racket/ChezScheme#8 and
racket/racket#2344 .
original commit: 2e3a618b0072d547b6c5abe6dd8dbac36a98c10e
2019-06-21 14:26:01 -06:00
Matthew Flatt
5c51096a88
cs: repair filesystem-change-evt
...
Correct an incomplete adaptation in a2a67a9660
.
2019-06-21 13:35:33 -06:00
Matthew Flatt
f27924b8a7
extra math tests
...
Check repairs for some Racket CS differences that Vincent found
through random testing.
Related to #2708
2019-06-21 13:35:33 -06:00
Matthew Flatt
1116287328
adjust sqrt and log on -0.0
...
original commit: 098fdb7d197bda4cd1ecc9b68407ee72fcce9311
2019-06-21 12:48:42 -06:00
Matthew Flatt
e11d9c846e
fix flround on [-0.5, 0.0)
...
original commit: 9679b21d99477a077b226bc279a6d68ebbd7ce5b
2019-06-21 12:26:00 -06:00