Commit Graph

39735 Commits

Author SHA1 Message Date
Paulo Matos
948dc49e90 Create .gitlab-ci.yml to compile/test racket and racketcs with ubsan 2019-02-11 16:52:24 -05:00
Matthew Flatt
e60b24c1a9 io: fix (find-system-file 'pref-file)
Corrects a mistake in 5c775fa04c.
2019-02-09 10:48:25 -07:00
Matthew Flatt
44368147f2 cs: small shortcut for mark lookup 2019-02-09 10:48:25 -07:00
Matthew Flatt
3c030b143b expander: extend "illegal use of syntax" error
Show the compile-time value that is not a procedure. While
this runs some risk of exposing details that are meant
to be private to a macro/language, a macro/language can
use an applicable structure to provide a more specific
error message. Meanwhile, showing the value is likely to
help for someone who needs to debug a macro problem.
2019-02-09 10:48:25 -07:00
Robby Findler
4ed5d7d98b added struct-guard/c 2019-02-09 09:18:58 -06:00
Matthew Flatt
5c775fa04c io: find-system-path and directory results
Use `path->directory-path` to ensure consistent trailing slashes.

Closes #2461
2019-02-07 09:12:12 -08:00
Matthew Flatt
2754d4e5a0 cs: avoid cont-mark conversion on capture
A conversion from assoc list to hash table is a leftover of a previous
stretegy, and it does not seem useful anymore.
2019-02-05 08:48:08 -08:00
Matthew Flatt
2abe2a48b4 bump version to sync cs changes 2019-02-05 08:23:37 -08:00
Matthew Flatt
e1cc9b2a80 cs: speed up sync on combination with never-evt 2019-02-04 06:42:33 -08:00
Matthew Flatt
61ca9ef474 cs: speed up break-enabled slightly 2019-02-04 06:23:15 -08:00
Matthew Flatt
b1bdcacabc io: slightly faster read-line 2019-02-03 15:28:18 -08:00
Matthew Flatt
af24a0318f io: faster read-char 2019-02-03 14:46:02 -08:00
Matthew Flatt
9823cbba4d io: reduce overhead on read-byte and read-char 2019-02-03 13:52:20 -07:00
Matthew Flatt
5ffb96e62d cs: reduce the cost of entering & exiting atomic mode 2019-02-03 10:33:15 -07:00
Matthew Flatt
941fe38cee check JIT and extflonum operations that are not supported
Goes with 80f84f2132.
2019-02-02 19:55:26 -07:00
Matthew Flatt
80f84f2132 fix extflvector-length for platforms where it's not inlined 2019-02-02 19:38:41 -07:00
Matthew Flatt
db760fe748 makefile: avoid stderr more for Chez Scheme build 2019-02-02 13:13:22 -07:00
Matthew Flatt
3a821bbeb7 reapir test for zo-parse 2019-02-02 13:08:49 -07:00
Matthew Flatt
acb2cfc465 git-checkout: doc repairs 2019-02-02 13:00:32 -07:00
Matthew Flatt
608005ac06 git-checkout: faster discovery of commit in common case
When the desired reference is not an advertised commit, then try
pulling just a few commits --- at depth 8, 16, and 32 -- from the
"master" branch to check whether the commit can be found that way. If
not, fall back to the exhaustive search that requires a full download.

This should help with the common case that a package reference into
the Racket repo is a few commits behind the current master branch
(because the package server hasn't scanned the repo recently enough).
It's much faster to disover that the commit is within the first 32,
which is almost always is, than to download the entire repository.
2019-02-02 11:13:10 -07:00
Matthew Flatt
7ea98c671c makefile: fix reconfigure for -MCR mode 2019-02-02 10:22:21 -07:00
Matthew Flatt
1affe4e7ad unbreak clean Mac OS build 2019-02-02 08:20:39 -07:00
Matthew Flatt
1b11111da3 raco pkg migrate: don't promote auto-installed
Upgrading an auto install to an explicit install runs into trouble if
the auto install is in a wider scope. It doens't seem necessary to
promote already-installed packages for migration, anyway.
2019-02-01 09:42:55 -07:00
Matthew Flatt
afd8c8fcac bump version for change to racketcs internals 2019-02-01 05:24:50 -07:00
Matthew Flatt
e32421552b fix arity test to not catch break exceptions 2019-01-31 15:04:27 -07:00
Matthew Flatt
85edde8132 cs: use source names in errors about defined identifiers 2019-01-31 15:04:27 -07:00
Matthew Flatt
8b4075bd3d cs: reject certain srclocs in marshaled form 2019-01-31 15:04:27 -07:00
Matthew Flatt
cf72bace95 cs: fix printing of some symbols
Commit bd6cf17f92 wasn't the right repair.
2019-01-31 15:04:27 -07:00
Matthew Flatt
63fb08905b makefile: adjust in-place CGC/3m install to preserve CS install
Also, make an in-place CS install clean old versions in the same way
as a CGC/3m.
2019-01-31 15:04:27 -07:00
Ryan Culpepper
5ada142ee9 wrap-expr/c: improve performance, add #:arg?, fix pos/neg args
- Improve performance by using make-apply-contract, lifting,
  fast path for dependent flat contracts.
- The positive blame party now consistently means the *macro def*
  and the negative party means the *macro use*. The #:arg? argument
  controls blame swapping.
2019-01-31 15:38:39 +01:00
Ryan Culpepper
5f77da9f5d split out and provide make-apply-contract 2019-01-31 15:38:39 +01:00
Matthew Flatt
ccfa41e22c pkg: add missing flush to some status printouts 2019-01-30 16:40:19 -07:00
Matthew Flatt
4e39054b91 ffi/unsafe/objc: fix expand-time check of (system-type 'vm)
Don't make expansion depend on `(system-type 'vm)`, because expansions
should be VM-inpendent. For example, distribution builds use a single
expansion and finish up from there for different Racket
implementations.
2019-01-30 16:18:06 -07:00
Matthew Flatt
8b917039a2 zo-{parse,marshal}: round-trip all ".zo" formats
Although `raco dec` cannot yet usefully decompile Racket CS compiled
code, the underlying `zo-parse` and `zo-marshal` functions can now at
least read and re-write that format by just keeping the bytes for the
CS-specific part, and it can also now rouind-trip the machine- and
VM-independent format.
2019-01-29 19:35:04 -07:00
Matthew Flatt
b9a28b368f expander: fix ".zo" mismatch errors to be exn:fail:read 2019-01-29 19:35:04 -07:00
Matthew Flatt
ed301f8a7c cs: skip check for module as an extension
The "extension" module protocol predates the modern FFI and depends on
the C API. Since it's not supported on Racket CS, skip the check for
extension modules.

Skipping the check can reduce load time considerably. We should
consider depracting the extension protocol for traditional Racket.
2019-01-29 19:34:49 -07:00
Matthew Flatt
33d7840a93 cs: fill in missing command-line flags 2019-01-29 14:59:14 -07:00
Matthew Flatt
c628414d6c avoid stderr output for cs build 2019-01-29 09:18:07 -07:00
Matthew Flatt
1cbc331532 unbreak no-places, no-futures build 2019-01-28 07:03:37 -07:00
Matthew Flatt
737ee9eba5 expander: fix flattener in machine-independent mode 2019-01-26 16:42:10 -07:00
Matthew Flatt
c9e3788d42 make effect of JIT_EAGER_JIT more complete 2019-01-25 19:20:03 -07:00
Matthew Flatt
13cb9bfc06 show peak code bytes in GC logging output 2019-01-25 15:39:36 -07:00
Matthew Flatt
bd6cf17f92 cs: fix printing of symbols that start #% 2019-01-25 14:39:58 -07:00
Matthew Flatt
a4821716d9 cs: wrap command-line eval in #%top-interaction 2019-01-25 14:39:40 -07:00
Matthew Flatt
f8448c4795 raco exe: disable --embed-dlls on RacketCS, for now
The RacketCS DLL currently doesn't work as embedded.
2019-01-25 12:42:17 -07:00
Matthew Flatt
7bc0364ec7 raco exe: fix --collects-dest for non-default "compiled" 2019-01-25 12:36:55 -07:00
Matthew Flatt
a80952e05f fix struct->vector on some renamed procedures
The repair is to give the structure type a name symbol. The rest is
cleanup and tests.

Closes #2454
2019-01-25 12:04:43 -07:00
Matthew Flatt
a97b3739a3 cs: add conversion to exn:fail:contract:non-fixnum-result 2019-01-24 19:44:04 -07:00
Matthew Flatt
77e362b27c io: fix 'update mode to not create a file 2019-01-24 19:30:29 -07:00
Matthew Flatt
6c435abaa7 docs: clarify that only 3m supports incremental GC 2019-01-24 19:22:53 -07:00