Matthew Flatt
e0256bc9c7
Pango kerning for Mac OS X
2012-05-17 15:48:45 -06:00
Matthew Flatt
ca33321aa7
fix phase-shifted compile-time use of `variable-reference->namespace'
2012-05-16 10:41:09 -06:00
Matthew Flatt
9270936a28
instantiate require'd modules in the order that they are
require'd
...
This order is now specified, whereas the order was previously unspecified,
and the previous reverse order was an artifact of the implementation.
2012-05-16 07:12:27 -06:00
Matthew Flatt
281d208e84
fix problem with module contexts and marks
...
Related to the new behavior of d836cba7c9
2012-05-15 20:03:41 -06:00
Eli Barzilay
cb7d402e22
New Racket version 5.3.0.8.
2012-05-15 03:30:12 -04:00
Matthew Flatt
a4bd18ff01
fix `syntax-local-module-exports' to work with submodules
2012-05-14 21:57:10 -06:00
Matthew Flatt
0653d1c966
add `syntax-local-submodules'
2012-05-14 21:57:09 -06:00
Matthew Flatt
cee18bd887
fix expansion state on `provide' transformer exception
2012-05-14 21:57:09 -06:00
Matthew Flatt
1bf1564f90
add `variable-reference->module-path-index'
2012-05-14 21:57:09 -06:00
Matthew Flatt
b374d0d015
ffi: fix big-endian s->c conversion of bytes and shorts
2012-05-14 21:57:09 -06:00
Matthew Flatt
ea8a6a1076
fix for-syntax `set!' of unbound identifier to be a syntax error
2012-05-14 09:14:01 -06:00
Matthew Flatt
562df19714
avoid compiler warning
2012-05-13 06:57:44 -06:00
Eli Barzilay
1a824c2b50
New Racket version 5.3.0.7.
2012-05-12 10:45:27 -04:00
Matthew Flatt
d836cba7c9
refine lexical scope for syntax objects from different modules
...
For example, if definitions have two unmarked `x's that originate
from different modules, make them correspond to different bindings.
This improvement will be used by `scribble/srcdoc', which will
rely on module context to connect `for-doc' requires to documentation
code that appears in the same module --- which is needed, for example,
if a macro expands to documentation code and the macro is used in
a different module.
2012-05-12 00:59:14 -06:00
Matthew Flatt
dbd940611e
allow #f as shift for `syntax-shift-phase-level'
2012-05-12 00:55:12 -06:00
Matthew Flatt
f07878dadb
fix non-futures, non-places build
...
Problem introduced with the addition of `flexpt'.
2012-05-08 06:54:34 -06:00
Eli Barzilay
0ffabcc771
New Racket version 5.3.0.6.
2012-05-08 03:30:12 -04:00
Matthew Flatt
9a41129c69
racket/flonum: add `flexpt'
2012-05-07 20:41:14 -06:00
Ryan Culpepper
36b1a63783
propagate observer to expansion of provides (tests ok, needs ms verif.)
2012-05-07 14:46:13 -06:00
Ryan Culpepper
f0c03ad921
macro-debugger: updates for submodules
2012-05-07 13:26:07 -06:00
Matthew Flatt
a0f4d7e44a
fix allocation bug
2012-05-06 19:18:54 -06:00
Matthew Flatt
967cbaadf7
repair for static-fd_set mode
2012-05-06 19:18:54 -06:00
Matthew Flatt
dce87cceb4
minor code tweak
...
avoid a type-tag test in `list-tail'
2012-05-06 19:18:54 -06:00
Eli Barzilay
17090fca4f
A bunch of fprintf' ->
eprintf' conversions (and a few related things).
2012-05-06 12:06:00 -04:00
Matthew Flatt
0a7ac91427
fix `box-cas!' name in error message
2012-05-04 10:20:24 -06:00
Eli Barzilay
3c49e78eb7
New Racket version 5.3.0.5.
2012-05-04 03:30:11 -04:00
Matthew Flatt
4292c6e037
fix docs for `box-cas!', fix JITted version to check mutability
2012-05-03 21:38:36 -06:00
Matthew Flatt
0d88a08c48
implement branch mode JIT generation for `box-cas!'
...
Also, move slow path into common code
2012-05-03 19:22:46 -06:00
Matthew Flatt
209d384204
remove obsolete comment
2012-05-03 19:19:24 -06:00
Matthew Flatt
7d18d38751
avoid // comments in C
...
To possibly stay compatible with older (pre-C99) compilers just a
little longer.
2012-05-03 19:19:24 -06:00
Aaron Turon
868dcb6d57
Add box-cas!' and
unsafe-box*-cas!'.
...
These primitives atomically update a box to a new value, as long
as the current value is the same as a provided value. They also
are future-safe.
When futures are enabled, they use low-level hardware instructions
to perform the change atomically.
2012-05-03 19:19:24 -06:00
Eli Barzilay
ed2b579e3c
Fail early on a non-pair input to `list-ref'.
...
There's no index that works with non-pairs, and the generic error
message in such cases is confusing.
Closes PR12740.
2012-05-03 10:24:05 -04:00
Matthew Flatt
50898845ba
fix build in static-sized fd_set mode
...
This mode may be relevant to Sparc Solaris, for example.
2012-05-02 16:54:05 -06:00
Matthew Flatt
4581a7addf
avoid intermediate syntax objects for binding comparison
...
The expander no longer needs to generate certain phase-N
identifiers, since we now have a comparison operation that
uses different phases for each of two identifiers.
2012-05-02 16:54:05 -06:00
Matthew Flatt
584f0f221a
fix USE_COMPILED_STARTUP setting
2012-05-01 19:40:09 -06:00
Matthew Flatt
4ac4e2e8d6
fix a problem with the "self" module path index
...
This bug was introduced recently by changes to support submodules.
Closes PR 12744 (and Robby had reported it earlier)
2012-04-30 23:37:20 -06:00
Eli Barzilay
2d0cde38f1
New Racket version 5.3.0.4.
2012-04-27 03:30:10 -04:00
Matthew Flatt
393e8b90b2
fix sorting bug in bytecode submodule table
2012-04-26 21:45:00 -06:00
Matthew Flatt
f099eec2af
save modidx submodule path in bytecode form
...
This change should have been part of 9ba663aa77
.
2012-04-26 21:45:00 -06:00
Eli Barzilay
ef00f4dd39
New Racket version 5.3.0.3.
2012-04-25 03:30:09 -04:00
Matthew Flatt
9ba663aa77
preserve submoduleness in module path index for expanded submodules
...
The preserved path is exposed by a new `module-path-index-submodule'
function, and `module-path-index-join' now accepts an optional
submodule path.
Also, fixed a problem with `collapse-module-path-index' when
a module path indx is built on a resolved module path that
is a submodule path.
In addition to the main repair, `collapse-module-path[-index]' is
correctly documented to allow '(quote <sym>) rel-to paths.
Finally, `collapse-module-path-index' changed to use a symbolic
resolved module path that appears as the base of a module path
index, rather than falling back to the given rel-to path. It's
possble that the old beavior was intentional, but it wasn't tested,
and it seems more likely to have been a bug.
Closes PR 12724
2012-04-24 21:10:28 -06:00
Matthew Flatt
3c615e434b
fix resolution of relative module path in a submodule
...
Closes PR 12729
2012-04-24 16:15:29 -06:00
Eli Barzilay
25d7d49648
New Racket version 5.3.0.2.
2012-04-20 03:40:48 -04:00
Matthew Flatt
8c976978ed
sync xform with `racket' collection changes
2012-04-19 19:25:42 -06:00
Matthew Flatt
8600e7fe31
fix misplaced phase shift in submodule expansion
...
Merge to 5.3
2012-04-19 12:45:28 -06:00
Matthew Flatt
f27c023247
bump version
...
mainly due to Planet resolver change
2012-04-19 08:15:12 -06:00
Matthew Flatt
862e1628a6
fix Planet resolver for submodule tests
...
For example, `(module-declared? '(submod (planet dyoo/bf) reader) #t)'
shouldn't fail if there's no "main.rkt" to hold a `reader' submodule;
it should return #f.
Merge to 5.3, but updating cstartup.inc will require a manual merge.
2012-04-19 08:15:11 -06:00
Matthew Flatt
62408cc727
fix typo
2012-04-18 05:49:24 -06:00
Matthew Flatt
df0651c277
convert functional hash tables from red--black to AVL trees
...
AVL trees to tend to be shorter, which means a faster
search and insertion. The potential benefit of a red--black
tree's fewer rotations doesn't matter, I think, for a functional
variant, where you have to reconstruct a spine to the root,
anyway. The difference is small for typical tables, though it
can be as much as 50% for a large table with keys inserted in
order. And since the AVL code is also much simpler, why not?
2012-04-18 05:49:24 -06:00
Matthew Flatt
1bcf56f5e9
fix problem with continuations and `call-in-nested-thread'
...
Closes PR 12705
Merge to 5.3
2012-04-16 13:33:50 -06:00
Matthew Flatt
c321608856
fix a problem with continuation allocation
...
i.e., fix commit 2ad41bb669
Merge to 5.3
2012-04-15 08:23:10 -06:00
Matthew Flatt
ff378d12ce
fix interaction of delimited continuations and stack overflow
...
Closes PR 12702, 12704
Merge to 5.3
2012-04-15 05:37:45 -06:00
Matthew Flatt
2ad41bb669
fix potential GC problem with continuation copies
...
Merge to 5.3
2012-04-15 05:37:45 -06:00
Matthew Flatt
4179cbfa63
enforce ranges on all integer types
...
DO NOT merge to 5.3
2012-04-15 05:37:44 -06:00
Matthew Flatt
6566bf5d15
fix most-negative number and _int64 on a 64-bit platform
...
Closes PR 12703
Merge to 5.3
2012-04-15 05:37:44 -06:00
Eli Barzilay
76bbc1a89f
New Racket version 5.3.0.1.
2012-04-11 03:30:17 -04:00
Matthew Flatt
1914345af4
fix submodule re-`expand' problem
...
Closes PR 12691
Merge to 5.3
2012-04-10 15:57:50 -06:00
Ryan Culpepper
48c2a63d7f
Post-release version for the v5.3 release
2012-04-10 11:27:59 -06:00
Matthew Flatt
104e70bf65
fix JIT bug related to list-ref' and
list-tail'
...
Closes PR 12688
2012-04-08 17:16:36 -06:00
Matthew Flatt
5a04be6445
streamline chaperoned struct field reference
...
The usual techniques: shortcut around generic scheme_apply() for
chaperone-triggered slow path, shortcut around scheme_apply() for
application of a native-code interposition function, and shortcut
`chaperone-of?' test by trying `eq?' first.
2012-04-07 09:28:49 -06:00
Matthew Flatt
e3bba26c4a
win32: fix `find-executable-path' for an empty PATH
...
The current directory is always implicitly in PATH, but it
was added by `find-executable-path' only when PATH is
non-empty.
2012-04-04 07:29:13 -06:00
Kevin Tew
a37cfa4e08
Fix compiler warning
2012-03-30 12:18:55 -06:00
Arek Korbik
7bf475b7cc
Fix sleeping on infinite timeouts.
...
Closes PR 12661
2012-03-29 14:55:14 -06:00
Matthew Flatt
738cac3d24
generalize `malloc' to allow a 0-sized request
...
Past experience suggests that this is generally better than adding
`zero?' tests at various places that might otherwise call `malloc'.
2012-03-29 14:55:14 -06:00
Matthew Flatt
f301838511
fix a syntax-object problem related to module bindings
...
The immediate symptom was that `(provide (all-defined-out))'
didn't work in a `module+'-based submodule, but there were
also non-submodule ways to expose the problem.
2012-03-29 14:55:13 -06:00
Matthew Flatt
ebb72d40e8
avoid bad interior pointer
2012-03-29 08:58:01 -06:00
Matthew Flatt
140a50d04e
fix a problem with submodule expansion
2012-03-29 06:46:58 -06:00
Kevin Tew
8c22c6c4e5
Remove unused variable compiler warning
2012-03-28 20:05:06 -06:00
Eli Barzilay
acfe585c93
Some cleanups, mainly around badly indented CPP directives.
2012-03-25 20:57:52 -04:00
Eli Barzilay
4469b669fc
New Racket version 5.2.900.2.
2012-03-24 03:35:16 -04:00
Matthew Flatt
6e3c3d8b71
MSVC project fixes for various Debug and SGC modes
2012-03-23 17:58:39 -06:00
Matthew Flatt
ae89e210fb
allow (submod "..")' as a shorthand for
(submod "." "..")'
...
Also, `(submod ".")' is allowed as a module path; it's not useful,
but it makes the grammar slightly more regular.
2012-03-22 18:43:11 -06:00
Kevin Tew
d4d5ca70fb
Hold reference to original thread during BEGIN_ESCAPABLE in place-channel sync
...
Fixes several bugs related to killed threads that were in the middle of
syncing on place-channels.
2012-03-22 14:52:48 -06:00
Matthew Flatt
16ef341e98
fix JIT bug related to inlining `variable-reference-constant?'
2012-03-21 19:37:46 -06:00
Matthew Flatt
47ae2b387a
fix shaodwing problem in `module*'
2012-03-20 07:28:35 -06:00
Kevin Tew
9be864b2f8
Fix sync/timeout hang due to place channels - forgot to git add
2012-03-16 08:39:58 -06:00
Kevin Tew
666c0fdb57
Fix sync/timeout hang due to place channels
2012-03-16 08:18:05 -06:00
Matthew Flatt
9838cb37e8
remove debugging code that was accidentally pushed
2012-03-13 18:46:28 -06:00
Matthew Flatt
415b1eabc4
more load[/use-compiled] handler fixes for submodules
...
Closes PR 12630
2012-03-13 14:31:40 -06:00
Matthew Flatt
366aa2c42d
fixups for the `module-path?' change
2012-03-12 21:10:14 -06:00
Matthew Flatt
542f19c00e
fix default `load/use-compiled' handler
...
A module shouldn't be loaded from source to find a submodule
if a module for the source is already declared.
2012-03-12 21:10:14 -06:00
Matthew Flatt
facc8db712
change module-path?' to subsume
path?'
...
Although th eoriginal idea was to distinguish "text" paths
from derived filesystem paths, practically everythign that accepts
a module path also accepts a path. Building the generalization into
`module-path?' makes it easier to support `submod' wrappers on paths,
and it seems to fix things rather than break them.
2012-03-12 21:08:54 -06:00
Matthew Flatt
060515b9cd
extend string-literal syntax to allow surrogate-style \u pairs
...
For example, "\uD834\uDD1E" is another way to write "\U01D11E",
while "\uD834", "\uDD1E" or "\uDD1E\uD834" are still errors.
2012-03-12 21:03:20 -06:00
Matthew Flatt
e1a5e032cb
further fixes to vector abuse
2012-03-12 11:47:18 -06:00
Matthew Flatt
018292ec00
GC with backtraces: add structure-type listing
2012-03-12 11:36:04 -06:00
Matthew Flatt
3073c994f5
make GC backtrace show eq hash code
2012-03-12 10:59:47 -06:00
Matthew Flatt
420d3e7717
fix JIT bug exposed by OpenBSD 5.0
...
This is the second attempt to fix a problem with using a JIT-generated
address in JIT-generated code.
Closes PR 12627
2012-03-12 08:23:17 -06:00
Matthew Flatt
8f0cf5ba9e
work around problem with gcc-4.0 build on Lion
2012-03-12 07:45:25 -06:00
Matthew Flatt
2ba910ef23
avoid compiler warning
2012-03-12 07:45:25 -06:00
Matthew Flatt
64f21122be
avoid compiler warning
2012-03-10 10:52:52 -07:00
Matthew Flatt
402fdaad9a
fixes and improvements for 3m backtraces
2012-03-10 08:30:02 -07:00
Matthew Flatt
34314c1e7a
fix JIT bug
...
The bug happens with n-ary uses of arithmetic operations that
have constant arguments but couldn't be constant-folded ---
maybe due to a divide-by-zero.
2012-03-10 08:30:01 -07:00
Eli Barzilay
5c051f3ec9
New Racket version 5.2.900.1.
2012-03-10 03:30:15 -05:00
Kevin Tew
024bb8a718
Eliminate compiler warnings
2012-03-09 12:40:22 -07:00
Matthew Flatt
e73be4a9ae
fix internal abuse of vectors
...
Using NULL in a vector slot can crash bracktrace printing;
replace it with `#f'.
2012-03-09 12:05:36 -07:00
Matthew Flatt
f7eceb4554
dierct reference to scheme_null in Win32 executable
2012-03-09 10:37:56 -07:00
Matthew Flatt
3a1e8803ff
fix errortrace for submodules
2012-03-09 10:34:56 -07:00
Matthew Flatt
566759a5fa
progress on submodule docs; bug fixes
2012-03-09 10:34:56 -07:00
Matthew Flatt
3d69dfab86
first cut at submodules
2012-03-09 10:34:56 -07:00
Matthew Flatt
facb411a63
fix problems with place termination
2012-02-29 20:20:55 -07:00