Brian Anderson
c2751c5640
rustc: Make 'do' work with effects the same as 'for'
2012-06-25 17:46:06 -07:00
Tim Chevalier
8ed9701591
Remove test case that doesn't work on its own
...
I don't actually know how to test --ls
2012-06-25 17:26:26 -07:00
Tim Chevalier
f1acc69a2a
Add class fields to the global index
...
Closes #2192
2012-06-25 17:25:54 -07:00
Eric Holk
b837f37d40
vec::slice is faster now (Issue #2719 )
2012-06-25 17:08:06 -07:00
Eric Holk
b19c98ea9a
Some perf fixes, although vec::slice is still too slow (Issue #2719 )
2012-06-25 16:38:12 -07:00
Brian Anderson
7adad4c6cb
rt: Fix exports
2012-06-25 16:30:42 -07:00
Brian Anderson
d29e8fc059
rt: Remove upcall_malloc/upcall_exchange_malloc. Issue #2681
2012-06-25 16:01:47 -07:00
Brian Anderson
3d0826b5fc
rt: Remove lock_free_queue. Unused. Issue #2701
2012-06-25 15:39:59 -07:00
Patrick Walton
216105fc55
test: Remove the import-glob-circular test since the name resolution semantics it depends on are probably undecidable
2012-06-25 15:30:38 -07:00
Patrick Walton
9386c2db33
test: Swap the order of two imports in import7 to eliminate another cycle
2012-06-25 15:14:28 -07:00
Patrick Walton
d8410c7578
test: Swap the order of two imports in import6 to eliminate a cycle
2012-06-25 15:12:50 -07:00
Brian Anderson
7e6cbf7431
Remove redundant 'extension' mods from numeric mods
2012-06-25 14:25:48 -07:00
Ben Striegel
43a48ca5bb
Automatically export methods on core numeric types
...
Each numeric type now contains an extensions module that is automatically
exported. At the moment each extensions module contains only the impl for the
`num::num` iface. Other impls soon to follow (hopefully).
2012-06-25 14:25:48 -07:00
Tim Chevalier
6517fc5ab6
Merge branch 'incoming' into resource-to-class
2012-06-25 13:41:49 -07:00
Tim Chevalier
da470ff5b8
Merge
2012-06-25 13:29:41 -07:00
Tim Chevalier
44d0a061be
register snapshots
2012-06-25 13:29:10 -07:00
Tim Chevalier
fe9bbeca1a
Add test cases for issue 2445
2012-06-25 13:18:43 -07:00
Brian Anderson
fad307d7b4
core: Convert declarations to not use the trailing 'unsafe' notation
2012-06-25 12:48:39 -07:00
Tim Chevalier
91b69aeb63
Test case for issue 2718
...
This was already fixed by the time I read the issue, but more test
cases are always good.
Closes #2718
2012-06-25 12:21:01 -07:00
Tim Chevalier
e9f19283b3
Remove resources from a few places I missed
2012-06-25 12:20:51 -07:00
Tim Chevalier
25b8b35c57
Finish compare glue for classes
...
This tests == and !=. I don't know what <, >, etc. should do.
Closes #2601
2012-06-25 12:20:10 -07:00
Eric Holk
3ba7ca5c9f
Improved perf for msgsend (Issue #2719 )
2012-06-25 11:27:32 -07:00
Eric Holk
07e1d1c6b6
Improved graph500 performance (Issue #2719 )
2012-06-25 11:15:45 -07:00
Brian Anderson
e991855d66
Make 'do' expressions accept stack closures
2012-06-24 18:01:27 -07:00
Brian Anderson
c01f5ef034
Long lines
2012-06-24 17:46:12 -07:00
Brian Anderson
20b5ca3d2f
syntax: Merge parse_for_expr, parse_do_expr
2012-06-24 17:08:05 -07:00
Tim Chevalier
bf92940f72
More test cases for classes with dtors
...
Tests that classes with dtors and multiple fields work correctly.
Closes #2708
2012-06-24 15:11:25 -07:00
Tim Chevalier
487cbf8e90
Remove resources
...
Also fixed shapes for classes with dtors, as well as handling
offsets for classes with dtors correctly in take glue.
Closes #2485
2012-06-24 15:09:57 -07:00
Graydon Hoare
f60cdf27e7
Remove 'implements' keyword in favour of :, part of #2301 .
2012-06-22 18:57:20 -07:00
Brian Anderson
2f060eb880
core: Name is_failure to is_err, is_success to is_ok
2012-06-22 18:26:25 -07:00
Brian Anderson
58983b2d92
core: Export result extensions from the top level
2012-06-22 17:33:53 -07:00
Brian Anderson
0cf730ed2a
core: Split up result extensions by kind bounds
2012-06-22 17:32:57 -07:00
Lindsey Kuper
ce7b803728
Minor capitalization/punctuation fixes in error messages
2012-06-22 16:48:03 -07:00
Lindsey Kuper
46809f7ab7
Nicer quoting in "attempted access of field" message. Issue #2358 .
2012-06-22 16:48:03 -07:00
Lindsey Kuper
47b1b7a207
Don't need a span on "main function not found" error. Issue #2707 .
2012-06-22 16:48:03 -07:00
Eric Holk
5cf99e02b5
Adding unshift again.
2012-06-22 16:31:57 -07:00
Eric Holk
3246723bf7
Adding an issue number to vec-add.rs
2012-06-22 15:35:06 -07:00
Eric Holk
26c11f7b50
Use must_have_lock instead of private functions. (Issue #2700 )
...
I hereby declare that messages sent from the same source arrive in order (Issue #2605 )
Removing FIXME, owned is the correct type here. (Issue #2704 )
Remove outdated FIXME (Issue #2703 )
Updating test for spawning native functions (Issue #2602 )
Removing bogus FIXME (Issue #2599 )
2012-06-22 15:14:42 -07:00
Michael Sullivan
1d6fb24b70
Hack to make [] and []/~ the same type in preparation for switching to []/~.
2012-06-22 15:11:34 -07:00
Tim Chevalier
588c1eb41f
Remove resources from remaining test cases
2012-06-22 13:11:29 -07:00
Michael Sullivan
275c1e4438
Serialize out uniq vecs types
2012-06-22 11:58:07 -07:00
Tim Chevalier
21399dca12
Change resources to classes in libstd and rustc
2012-06-22 11:53:25 -07:00
Michael Sullivan
986662cebd
Make the implicit copyability of []/~ configurable, like [] is, since we will be switching sooner rather than later.
2012-06-22 11:23:54 -07:00
Tim Chevalier
25aa360595
[NEEDS SNAPSHOT] Port remainder of resources to classes in libcore
2012-06-21 22:20:09 -07:00
Tim Chevalier
a141f58e9b
In reachability, traverse all classes that have dtors
...
since dtors always have external linkage
2012-06-21 21:46:12 -07:00
Tim Chevalier
fee78d296c
Port resources to classes in libcore
2012-06-21 21:30:16 -07:00
Tim Chevalier
b8710de5ff
Add test cases
...
issue-912 is xfailed. issue-2111 is already fixed, but it's good to
have the test case.
2012-06-21 19:58:52 -07:00
Tim Chevalier
be8a08b2af
Hopefully make issue 2214 test case work on Windows -- sigh
2012-06-21 17:54:56 -07:00
Tim Chevalier
cc323d8637
Make liveness print out a proper error message for moves out of a self field
...
This was a call to span_bug() before. I'm not sure about the other cases,
but the test case shows that the `vk_self` case can certainly arise with
a bad program, so it should be a span_err() thing and not a span_bug() thing.
Closes #2590
2012-06-21 17:43:10 -07:00
Tim Chevalier
a06398214a
Add test for issue 2467
2012-06-21 16:58:35 -07:00
Tim Chevalier
a350bea313
Fix linker problem in issue 2214 test case
2012-06-21 16:58:35 -07:00
Graydon Hoare
312faf31df
Tag all remaining FIXMEs with bugs. Install rule in tidy script to enforce this.
2012-06-21 16:44:10 -07:00
Lindsey Kuper
5710178081
Adding i
suffixes so cfail tests keep failing after suffix inference
2012-06-21 16:19:04 -07:00
Lindsey Kuper
0fe9c0a9d1
Add tests to exercise the "pattern has N field(s), but" error patterns.
2012-06-21 16:19:04 -07:00
Lindsey Kuper
abfa8164cd
Change the level of forcing in structurally_resolved_type().
...
A cleaner way to handle suffix inference for unary minus exprs.
2012-06-21 16:19:04 -07:00
Tim Chevalier
317864672d
Revert "Add test for issue 2214"
...
This reverts commit 290206b178
.
Forgot to add the actual native code, temporarily reverting.
2012-06-21 16:17:08 -07:00
Eric Holk
559c30ab17
xfailing vec-add.
2012-06-21 16:11:11 -07:00
Eric Holk
28ab0e8c03
Fixing illegal moves.
2012-06-21 16:11:11 -07:00
Eric Holk
40559ea839
Adding a benchmark for the new message passing code
2012-06-21 16:11:11 -07:00
Eric Holk
dc3862bf58
This was unsafe, and will probably leak.
2012-06-21 16:11:11 -07:00
Eric Holk
3b9848b869
Remove some warnings and make tests pass.
2012-06-21 16:11:11 -07:00
Eric Holk
e4c291530e
Basic functionality for new ports and chans
...
The first benchmark shows about twice the throughput of the old system.
2012-06-21 16:11:11 -07:00
Eric Holk
f54829cf13
Move vector addition out of trans and into libcore.
2012-06-21 16:11:11 -07:00
Eric Holk
51ba3518ec
Remove some singleton vector appends.
2012-06-21 16:11:11 -07:00
Eric Holk
4d1e415611
Remove some commented out code so the pretty printer doesn't get confused.
2012-06-21 16:11:11 -07:00
Eric Holk
bb572b4234
Updating errors in vec-add.rs
2012-06-21 16:11:11 -07:00
Eric Holk
f21fbc23d2
Fixed another performance issue
2012-06-21 16:11:11 -07:00
Eric Holk
9bdb2c9e48
Library vecs are fast now.
2012-06-21 16:11:11 -07:00
Eric Holk
0e5cfd9f33
Move vector addition out of trans and into libcore.
2012-06-21 16:11:11 -07:00
Eric Holk
f8fa0a2437
Generate a temporary for assign_ops. Issue #2581
2012-06-21 16:11:10 -07:00
Tim Chevalier
0b1675da16
Add and xfail test for 2101
2012-06-21 16:03:28 -07:00
Tim Chevalier
f149ea0c68
Remove unneeded field
2012-06-21 16:03:28 -07:00
Tim Chevalier
dc11396fda
Remove unneeded SHAPE_VEC const
2012-06-21 16:03:28 -07:00
Tim Chevalier
c814df0bd6
Comments only: annotate FIXMEs
2012-06-21 16:03:28 -07:00
Tim Chevalier
be8b09160b
Try removing code marked with "I don't think this is necessary"
2012-06-21 16:03:28 -07:00
Tim Chevalier
290206b178
Add test for issue 2214
2012-06-21 16:02:40 -07:00
Tim Chevalier
2a53640aa1
Test for issue 1896 (which appears to be fixed)
2012-06-21 14:08:02 -07:00
Brian Anderson
453e29cc39
core: Remove resolved FIXME around port destruction
2012-06-21 13:41:59 -07:00
Lindsey Kuper
c2222878c8
A test to exercise suffix inference for unary minus a little more.
2012-06-21 12:08:10 -07:00
Lindsey Kuper
e9d072ee89
Consolidate "make sure types are the same" fns. Issue #2644 .
2012-06-21 11:16:36 -07:00
Michael Sullivan
393f739990
Rename upcall_malloc_dyn to just upcall_malloc.
2012-06-21 10:47:45 -07:00
Niko Matsakis
9a2b60dfce
unxfail test for #2657
2012-06-21 10:20:46 -07:00
Niko Matsakis
287f163136
Issue #2657 : track mutability of bindings, also prevent move from bindings
2012-06-21 09:45:01 -07:00
Tim Chevalier
c3d384b18f
Comment only: annotate FIXME
2012-06-21 08:59:17 -07:00
Tim Chevalier
29330b5bda
Comments only: annotate FIXMEs in cargo
2012-06-21 08:51:26 -07:00
Niko Matsakis
60603703ea
handle moves in let initializers and allow moves from unsafe ptrs
...
Related to issue #2657 , but this is not a complete fix.
2012-06-21 08:34:54 -07:00
Tim Chevalier
f9afce319a
Fix typo in Windows snapshot hash
2012-06-20 21:42:36 -07:00
Tim Chevalier
419c335faa
Apparently an extra space in the snapshot file breaks Windows completely?
2012-06-20 21:25:39 -07:00
Tim Chevalier
0865170f1a
Register snapshots
2012-06-20 21:16:45 -07:00
Tim Chevalier
1b642bf02f
Change core::comm to use classes instead of resources
...
Ports now are represented internally as classes.
2012-06-20 20:12:14 -07:00
Tim Chevalier
b02172971f
Make trans give correct types to monomorphic dtors
...
Irritatingly, class dtors have a different type from resource
dtors (because class dtors have a self argument), and the monomorphic
case wasn't reflecting that. Fixed.
2012-06-20 20:12:14 -07:00
Tim Chevalier
0017116520
Don't shadow a class name with a local
...
The fix in 208621 means you now can't shadow a class name with a local,
which is consistent with other behavior. But stackwalk was doing that.
Fixed it.
2012-06-20 20:12:14 -07:00
Tim Chevalier
76d6120e52
Fix resolve bug that made nested classes not work
...
It wasn't possible to refer to the constructor for a class nested inside
an item from the class's outer scope. Fixed.
2012-06-20 20:12:14 -07:00
Tim Chevalier
6db7843f46
Monomorphize dtors correctly
...
The same dtor was getting re-used for different instances, which
didn't always work right. Fixed.
2012-06-20 20:12:14 -07:00
Tim Chevalier
1b4dcbecac
Comments only: typos
2012-06-20 20:12:14 -07:00
Tim Chevalier
e7ce32310b
Change map::get to map::find in ppaux
2012-06-20 20:12:13 -07:00
Tim Chevalier
f331cd9324
Don't consider loops to be breaking if they contain inner loops that break
...
Closes #2642
2012-06-20 18:53:38 -07:00
Tim Chevalier
613deb0312
Change error to debug
...
IMO this is a better workaround than using the old-style
error-pattern: syntax :-)
2012-06-20 18:52:43 -07:00
Lindsey Kuper
39c05b4b65
Remove obsolete comment.
2012-06-20 17:56:40 -07:00
Lindsey Kuper
1df6ddd08c
doc: add information about suffix inference to tutorial and manual.
2012-06-20 17:56:40 -07:00
Brian Anderson
4dcf84e4f4
Remove bind. Issue #2189
2012-06-20 17:27:28 -07:00
Michael Sullivan
bcd3942f41
Fix a test I messed up.
2012-06-20 17:08:36 -07:00
Brian Anderson
b92a7b790b
Register snapshots
2012-06-20 16:43:22 -07:00
Michael Sullivan
a057b13262
Don't allow + for evecs/estrs. It isn't implemented, and we are moving vec + to libs anyways.
2012-06-20 16:29:47 -07:00
Michael Sullivan
8aa5762d2e
Repair the formatting of the table in is_binopable.
2012-06-20 16:29:47 -07:00
Tim Chevalier
c50eea17d4
Test for #2242 (xfailed for now)
2012-06-20 16:25:46 -07:00
Michael Sullivan
8040fd86bf
Call the correct type formatting function for more typecheck diagnostics. Closes #2652 .
2012-06-20 15:44:58 -07:00
Lindsey Kuper
60a658250e
Don't force resolution of integral type vars in unary minus exprs
...
These were getting resolved too early, when they were still
unconstrained by the rest of the typing context. Waiting a bit longer
to resolve them gives the rest of the typing context a chance to come
into play, so that they don't default to `int`.
2012-06-20 14:33:25 -07:00
Lindsey Kuper
64912c9a56
Use an unambiguous abbreviation for "operand" :)
2012-06-20 14:29:24 -07:00
Lindsey Kuper
5316fe6bb5
Add comments explaining integral type variables; fix typos
2012-06-20 12:46:38 -07:00
Michael Sullivan
a01bdbe207
Don't reverse all the arguments to span_lint for lint checking passes.
2012-06-20 10:30:48 -07:00
Niko Matsakis
de491ea707
two more tests for method autoderef
2012-06-19 20:52:33 -07:00
Niko Matsakis
773a640303
support autoderef on method calls
2012-06-19 20:46:48 -07:00
Eric Holk
514e8ded2f
Temporarily ignoring tests that can go into infinite loops.
2012-06-19 18:03:28 -07:00
Eric Holk
e30a8b6f8c
Updating kind rules to make sure we don't sneakily send ports.
2012-06-19 17:37:51 -07:00
Lindsey Kuper
3cf582b529
Enable integer literal suffix inference.
2012-06-19 17:06:05 -07:00
Lindsey Kuper
b1fa8249f1
Fix incorrect fn name in debug statement
2012-06-19 17:04:39 -07:00
Lindsey Kuper
3f56c0a42d
Add i
suffix to cfail test so it works after suffix inference
2012-06-19 16:57:13 -07:00
Lindsey Kuper
26bd186726
Don't create a new inference context for checking pattern ranges.
...
Ugly fix -- it would be better to refactor and consolidate the various
"make sure these types are the same" fns scattered around typeck.
2012-06-19 16:53:41 -07:00
Lindsey Kuper
3e281439a0
Union-find rank
optimization for infer.
...
Makes deep-vector2 not run out of stack when suffix inference is
enabled.
2012-06-19 16:35:26 -07:00
Lindsey Kuper
906169d608
Add a node
type in place of hand-rolled records in infer
2012-06-19 16:35:26 -07:00
Lindsey Kuper
8cc1149130
Adding i
suffixes so cfail tests keep failing after suffix inference
2012-06-19 16:35:26 -07:00
Brian Anderson
636a849bf2
rustc: Add a temporary option to not link to the runtime
2012-06-19 12:36:59 -07:00
Eric Holk
ec0fbf526e
Fixed a compile error in runtime.
2012-06-19 12:26:58 -07:00
Niko Matsakis
6e73e45e37
first steps to autoderef on method calls
2012-06-19 11:52:39 -07:00
Niko Matsakis
6c056fba4d
random forgotten test case
2012-06-19 11:52:39 -07:00
Eric Holk
2a128fa205
Reference fixes.
2012-06-19 10:31:12 -07:00
Eric Holk
be664ddd29
Moved arc to libcore and added an arc that allows shared mutable state through mutual exclusion.
2012-06-19 10:31:12 -07:00
Eric Holk
dc718d97a6
Adding a lock/condition variable to libcore.
2012-06-19 10:31:12 -07:00
Eric Holk
9ee1480fd1
Another benchmark
2012-06-19 10:31:12 -07:00
Michael Sullivan
f648affeaa
Fix a failing test.
2012-06-18 21:01:56 -07:00
Niko Matsakis
b0646e0749
document liveness a bit better
2012-06-18 19:41:17 -07:00
Brian Anderson
1ec5a5c635
Add 'do' expressions
2012-06-18 17:42:30 -07:00
Ben Blum
ee9e5b9d20
Avoid extra get_current_task()s in many upcalls (performance)
2012-06-18 20:36:25 -04:00
Michael Sullivan
30dd32d4db
Fix generation of str/@. Closes #2638 .
2012-06-18 15:54:37 -07:00
Michael Sullivan
797856cbde
Use unboxed vecs for string shape glue.
2012-06-18 15:54:37 -07:00
Michael Sullivan
88ec259cee
Put type descriptors in strings created by the runtime. Progress on #2638 .
2012-06-18 15:54:37 -07:00
Michael Sullivan
b4484d51c1
Some cleanup in the runtime.
2012-06-18 15:54:37 -07:00
Brian Anderson
8967a66724
std: Use the singular 'test' when running just 1. Closes #2554
2012-06-18 15:52:53 -07:00
Brian Anderson
49d6d1bbb8
Remove FIXME from run-pass/basic.rs. Closes #2600
2012-06-18 15:46:34 -07:00
Lindsey Kuper
85977ced3f
Adding i
suffixes so cfail tests keep failing after suffix inference
2012-06-18 15:36:14 -07:00
Lindsey Kuper
567e4d9c6f
Minor infer/typeck cleanups
2012-06-18 15:36:14 -07:00
Brian Anderson
ff536f3fa5
core: Don't require copyable options where possible. Closes #2636
2012-06-18 12:57:30 -07:00
Tim Chevalier
f87c28b122
Remove test that depends on rustc
...
There's already another test (run-pass/issue-2316-c) that tests for
the same bug. So there's no need to have this one, which depends on
librustc, in the test suite.
Closes #2368 .
2012-06-18 12:14:03 -07:00
Niko Matsakis
b0e66a6f3b
Undo workaround for #2633 since it is fixed.
...
This reverts commit a14df270dc
.
Conflicts:
src/rustc/middle/trans/base.rs
2012-06-17 16:38:13 -07:00
Niko Matsakis
982e1166b2
Issue #2633 : remove last_use entries that are subject to a loan
2012-06-17 16:17:40 -07:00
Tim Chevalier
3e2006a570
Revert "Adding a lock/condition variable to libcore."
...
This reverts commit e394ebda37
.
2012-06-16 15:34:15 -07:00
Tim Chevalier
e3c6e5e5b6
Re-fix whitespace
2012-06-16 15:22:22 -07:00
Tim Chevalier
0276a3376b
Revert "Moved arc to libstd and added an arc that allows shared mutable state through mutual exclusion."
...
This reverts commit 015527b0ce
.
2012-06-16 15:21:08 -07:00
Tim Chevalier
69447e9002
Revert "Reference and whitespace fixes."
...
This reverts commit 52f1904ddd
.
2012-06-16 15:17:10 -07:00