Sam Tobin-Hochstadt
43a8cce3fc
Reorganize the TR testing files, and add progress output.
...
`typed-racket-test/main` is now the file to run for almost everything.
`typed-racket-test/run` continues to exist so that DrDr preserves the
timing history.
Integration tests now print a progress meter, which should fix the
Travis timeouts.
2015-12-29 16:43:25 -05:00
Asumu Takikawa
b18d940f1a
Fix GH issue #271
...
Propagate syntax properties when opening up begins at the top-level
so that ignore properties will get transferred.
2015-12-18 18:10:48 -05:00
Sam Tobin-Hochstadt
519dfb6fdc
Handle Sequenceof
in the type parser to support multiple values.
2015-12-17 19:42:29 -05:00
Georges Dupéron
f992786243
Fixes GH issue #268 “Can't provide promise for polymorphic struct”.
...
See also commit 5cd5f77
“Don't allow promises created with `delay/name` as `(Promise T)`.”.
The contracts in `typed-racket-lib/typed-racket/static-contracts/combinators/structural.rkt` should be just a single identifier, not a lambda expression, because `typed-racket-lib/typed-racket/private/type-contract.rkt` relies on that, and passes the contract name to free-identifier=?, which won't work on a lambda.
2015-12-17 14:52:40 +01:00
Sam Tobin-Hochstadt
077ff4ab2f
Remove use of this-expression-source-directory
.
...
Fixes presence of build system path in .zo files.
2015-12-11 10:12:33 -05:00
Asumu Takikawa
7f05dc6731
Update docs & tests for struct constructor options
2015-12-08 00:33:45 -05:00
Vincent St-Amour
70afdf6f70
Relax type of expt.
...
Made possible by the fix to its dynamic behavior.
Should be fully backwards compatible.
2015-12-02 15:44:23 -06:00
Vincent St-Amour
1d69569382
Fix tests.
2015-11-30 07:56:08 -06:00
Vincent St-Amour
6a8c366210
Fix type of expt
to reflect fix to dynamic behavior.
2015-11-25 17:33:00 -06:00
Vincent St-Amour
fe4808f96a
Fix magnitude on numbers with negative components.
...
Closes PR 15183.
2015-11-23 14:30:20 -06:00
Sam Tobin-Hochstadt
f9825cb250
Add test for top-level mutated var fix.
2015-11-18 14:31:48 -05:00
Sam Tobin-Hochstadt
577ab41da6
Keep ignored provide forms in the output.
...
Closes #231 .
2015-11-16 09:45:08 -05:00
Vincent St-Amour
1e32397658
Refine type for expt.
...
Fixes rsound.
2015-11-13 10:14:39 -06:00
Sam Tobin-Hochstadt
5f39bb3647
Increase with-tr-contracts timeout.
2015-11-12 18:41:52 -05:00
Vincent St-Amour
1187281bf7
Fix sign propagation in some real-complex corner cases.
...
May have been found using random testing a while back.
2015-11-12 16:08:20 -06:00
Vincent St-Amour
b88b4a8829
Fix magnitude opt to not overflow.
...
May have been found with random testing, a while ago.
2015-11-12 15:36:44 -06:00
Vincent St-Amour
53e501bb8b
Avoid generating contraints for optimized-away contract definitions.
...
Closes #214 .
2015-11-12 13:46:37 -06:00
Vincent St-Amour
3c1c5b1d03
Be more robust against one of {TR,R} erroring.
2015-11-10 16:39:18 -06:00
Eric Dobson
c9db5dded7
Make infer/dotted instantiate the dotted variable to improve inference.
...
With this we don't need to infer the length of the dotted variable,
in parts of the inference.
Closes #120 .
2015-11-10 16:56:14 -05:00
Vincent St-Amour
caf62c5fc6
Travis CI has yet another FPU.
2015-11-10 10:33:50 -06:00
Vincent St-Amour
65f375f065
Refactoring.
2015-11-10 10:33:49 -06:00
Vincent St-Amour
7e7bef773f
Have resource limits for individual test cases.
...
So that a term that takes too long doesn't doom the whole run.
2015-11-10 10:33:49 -06:00
Sam Tobin-Hochstadt
d9e3c2ac6a
Repair da574a4
again.
2015-11-10 08:59:18 -05:00
Vincent St-Amour
249ae295e8
DrDr has a different FPU than I do.
2015-11-09 21:36:28 -06:00
Sam Tobin-Hochstadt
da574a47d0
Handle in-vector
with range arguments.
...
* Add `normalise-inputs` to special function env.
* Treat eta-expansion specially. Now
`(lambda (x ...) (f x ...))`
will typecheck like `f` but with a type restricted to
the size of `x ...`.
Currently, this special case only works for non-polymorphic
functions.
2015-11-09 19:04:14 -05:00
ben
5d4477d08d
safe & efficient (-> Any Boolean) contract
...
New strategy for compiling the (-> Any Boolean) type to a contract.
When possible, uses `struct-predicate-procedure?` instead of
wrapping in `(-> any-wrap/c boolean?)`.
Makes exceptions for untyped chaperones/impersonators over struct predicates;
those are always wrapped with `(-> any-wrap/c boolean?)`.
This change also affects (require/typed ... [#:struct ...]), but not #:opaque
2015-11-09 19:04:02 -05:00
Georges Dupéron
67bd07a84a
Fixes type of member
and assoc
, plus some tests for them. See github bug #223 : “(member) has wrong type, exploiting the hole causes segfault”.
2015-11-09 19:04:02 -05:00
Vincent St-Amour
177fdb9684
More drdr-found counterexamples.
...
All fixed already, but were found before I pushed the fixes.
2015-11-09 17:24:12 -06:00
Vincent St-Amour
65b6d3e019
Abstract over operations properly.
...
Found using random testing.
2015-11-09 17:16:10 -06:00
Vincent St-Amour
7346abf91c
Preserve sign better in real-complex ops.
...
Found using random testing.
2015-11-09 17:16:10 -06:00
Vincent St-Amour
db79beaf12
Actual fix for not suppressing divide-by-0 errors.
2015-11-09 17:16:10 -06:00
Vincent St-Amour
63e26cf17a
Avoid suppressing divide-by-0 errors.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
6a2c8ca9f7
Fix the fix to flexpt.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
5fe4e6b03f
Add missing coercion.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
0b2ae25c92
Propagate fix to division.
...
Found using random testing, at least twice.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
7ef06f74c9
Extend this handling to multiplication.
...
Found using random testing.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
b101d396a3
Avoid premature float conversions.
...
Found using random testing.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
7ba1ab6e51
Use correct imaginary binding.
...
Fixes 13 bugs found using random testing.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
b6e6a6fa98
Add test for real-complex interaction.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
f2bb83b012
That bug has been fixed.
2015-11-09 17:16:09 -06:00
Vincent St-Amour
46f2ed95d3
Fix tests for more conservative types.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
9385f6e350
Yet another fix for expt and complexes.
...
Found using random testing. Found once.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
5ce00a90d2
Fix sign property of n-ary division.
...
Found using random testing. Found 4 times.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
23de6a654e
Fix another NaN case in expt.
...
Found using random testing. Found 3 times.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
3ef8fe1739
Fix type of expt for bignums that get converted to infinity.
...
Found using random testing. Found 10 times.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
a0ef6b1d8c
Fix type of expt.
...
Found using random testing. Found 10 times.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
ef80d61ae9
Fix port interleaving.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
16a18d7648
Fix type of flexpt.
...
Found using random testing. Found 9 times.
2015-11-09 17:16:08 -06:00
Vincent St-Amour
bd12a1b928
Add a regression test suite with historical counterexamples found by DrDr.
2015-11-09 17:16:08 -06:00
Sam Tobin-Hochstadt
37bfd24a0b
Add test for or/c problem.
2015-11-06 14:35:46 -05:00