Commit Graph

38553 Commits

Author SHA1 Message Date
Matthew Flatt
6018dcfdf6 expander: propagate module properties to #%module-begin
Closes #1968
2018-02-28 14:23:22 -07:00
Matthew Flatt
de27be536d expander: propagate srcloc on rename-transformer expansion 2018-02-28 13:59:13 -07:00
Matthew Flatt
3c69a1296a expander: pay more attention to (error-print-source-location)
When source locations are disabled, don't include a source location in
an error message from `raise-syntax-error`.
2018-02-28 13:08:22 -07:00
Matthew Flatt
25b0c23db7 expander: adjust bindings in module->namespace
Make the module path index for bindings in a `module->namespace` be a
"self" MPI (with #f for path and base), instead of the MPI associated
with bindings as view from the outside of the module instance. That
makes interactive evalaution in the namespace more closely approximate
expansion within the original module.

Example use: ASL detects a "self" MPI to determine when it should
allow assignment to module-defined variables in the REPL.
2018-02-28 10:30:24 -07:00
Matthew Flatt
a6e585a72e racket/unit: update expected error messages in tests 2018-02-28 07:02:11 -07:00
Matthew Flatt
4eacbbd296 change makefile to be more helpful for "seletc-startup.rkt" failure 2018-02-28 06:56:16 -07:00
Matthew Flatt
e4296f5c1e add stdout logging in the same style as stderr logging
Use stdout log reporting instead of stderr log reporting for status
reporting during the build, so that the status report is not
misinterpreted as an error.
2018-02-28 06:52:55 -07:00
Ryan Culpepper
19df146ccf expand and expand-to-top-form unset observer parameter
This change means that if a macro transformer calls expand (not
local-expand, but top-level expand), the macro debugger won't
receive the inner expand's events. Previously, the macro debugger
tried to parse and then discard the inner expand, but that was
brittle and complicated the grammar.
2018-02-28 06:11:00 -07:00
Ryan Culpepper
ceee75b5ce make symbols consistent with macro debugger, send events as symbols 2018-02-28 05:37:22 -07:00
Ryan Culpepper
2f7c0dd9fa fix/simplify logging for main expand and expand-to-top-form 2018-02-28 05:36:52 -07:00
Ryan Culpepper
3a40125168 add arity checks for log-expand, fix some uses 2018-02-28 05:36:52 -07:00
Ryan Culpepper
ed3d2d0082 fix typo 2018-02-28 05:36:52 -07:00
Matthew Flatt
408a8cb79e compiler/cm: repair for chained compiled-file roots 2018-02-27 20:23:13 -07:00
Matthew Flatt
3e5e2cc30d raco decompile: support non-module programs 2018-02-27 20:23:12 -07:00
Matthew Flatt
bd231cd75d restore syntax-local-make-delta-introducer
Closes #1965
2018-02-27 20:23:12 -07:00
Matthew Flatt
e288df5e8e add missing key in "system.rktd" to enable cross-compilation 2018-02-27 20:23:12 -07:00
Matthew Flatt
0e9634f917 namespace-variable-value: fix default vale for 2nd argument 2018-02-27 18:14:55 -07:00
Matthew Flatt
4e1e91a34e peek-{char,byte}-or-special: add 'special option
The old reader used an internal option to short-circuit special-value
reading when a special value acts as a terminating "character". Expose
that shortcut by allowing 'special as an argument to
`peek-{char,byte}-or-special`, and update the reader to use it.
2018-02-27 18:14:54 -07:00
Matthew Flatt
613de748df reader: fix another here-string problem 2018-02-27 13:48:40 -07:00
Matthew Flatt
e707d7decd expander: fix lift context for multiple #%module-begins
Also, restore the old syntax-error message for an `if`
without an "else" clause.
2018-02-27 13:44:11 -07:00
Matthew Flatt
1d8e04896e avoid a pattern that confuses xform 2018-02-27 06:58:12 -07:00
Matthew Flatt
654e846720 namespace-attach-module: fix namespace for declaration callback 2018-02-27 06:46:55 -07:00
Matthew Flatt
f691d4b68c fix incorrect variable reference in the compiler 2018-02-27 06:07:41 -07:00
Matthew Flatt
ada6b8c5d1 reader: handle port whose position moves backwards 2018-02-27 05:46:59 -07:00
Matthew Flatt
586feb6df0 expander: fix problems with cross-phase persistence 2018-02-26 20:29:22 -07:00
Matthew Flatt
9fec456335 fix tests that relied on a specific internal hashing function 2018-02-26 19:46:33 -07:00
Matthew Flatt
cf60eb2715 reader: fix #reader 2018-02-26 19:24:52 -07:00
Matthew Flatt
5ba83c6340 expander: fix cross-module reference to gensymed name 2018-02-26 19:18:58 -07:00
Matthew Flatt
95333f6fe8 avoid a compiler warning 2018-02-26 18:46:58 -07:00
Matthew Flatt
8f77775cf5 JIT: fix 32-bit x86 problem 2018-02-26 18:14:02 -07:00
Matthew Flatt
6757a202d5 reader: fix/unbreak reading of here strings
The repair in 55a27e01a6 wasn't right.
2018-02-26 17:36:07 -07:00
Matthew Flatt
55a27e01a6 expander: fix tracking of MPIs for cross-submodule inlining 2018-02-26 17:18:54 -07:00
Matthew Flatt
40219b88f3 adjust expected error message in test 2018-02-26 15:54:57 -07:00
Matthew Flatt
283b8ad788 fix interning of chars read from bytecode 2018-02-26 15:42:01 -07:00
Matthew Flatt
62b7ff6f84 syntax-source-module: use second argument
The implementation still lacks a way to find the original source name,
though, in case of a ".ss" to ".rkt" conversion.
2018-02-26 15:30:04 -07:00
Matthew Flatt
014441bceb reader: fix parsing of here strings 2018-02-26 14:59:25 -07:00
Matthew Flatt
61fffa4646 avoid a compiler warning 2018-02-26 14:48:05 -07:00
Matthew Flatt
59ef254318 switch to a new, Racket-implemented expander & module system
This commit merges changes that were developed in the "racket7" repo.
See that repo (which is no longer modified) for a more fine-grained
change history.

The commit includes experimental support for running Racket on Chez
Scheme, but that "CS" variant is not built by default.
2018-02-26 13:19:53 -07:00
Leandro Facchinetti
00211413a5 Fix typo in error message 2018-02-26 10:18:16 -06:00
Robby Findler
d56eb03432 attempt to improve the evt guide section 2018-02-22 17:37:58 -06:00
Vincent St-Amour
606ec2955c Fix contract in docs.
Closes #1960.
2018-02-22 12:04:41 -06:00
Matthew Flatt
38d717e98e fix "foreign-test.rktl" to work on Windows 2018-02-21 13:15:04 -07:00
Paulo Matos
1ea340144a Fix typo
'suitiable' should read 'suitable'
2018-02-21 13:19:25 -06:00
Matthew Flatt
32b274dee1 make syntax/moddep more useful
This tool seems misplaced, but improve it a little to be practical for
larger module hierarchies.
2018-02-19 07:03:52 -07:00
Matthew Flatt
11e81f8776 add variable-reference-from-unsafe?
For now, the result is always #f, but this is a bridge to slightly
more useful functionality in the racket7 branch.
2018-02-19 07:03:52 -07:00
Robby Findler
8393f0b2f6 fix opt/c for flat-contract?
Thanks to Philip McGrath for spotting the problem

Also, along the way, discover the setup for chaperoneness for opt
contracts was bogus, so fix that up too
2018-02-17 19:52:58 -06:00
Hashim Muqtadir
95dab07e47 Update port-lib.scrbl (minor typo) 2018-02-16 12:28:23 -06:00
Daniel Feltey
26ed4b246c Use the thread-cell strategy for recursive-contracts that are list contracts 2018-02-15 19:00:58 -06:00
Philip McGrath
670f89a85b Fix source of package catalog server
`(collection-file-path "pkg-catalog" "meta")` raises an exception.
2018-02-14 15:11:37 -05:00
Matthew Flatt
55ffc24011 JIT: fix bug with call-with-values
Handling of runstack overflow wasn't right for platforms
with a distinction between short and long jumps --- which
includes x86_64, but only after enough code has been
allocated.
2018-02-14 08:24:16 -07:00