Brian Anderson
459353e107
Prevent copies of resources into various things
2011-09-27 21:50:07 -07:00
Patrick Walton
9ba86178ef
rt: Store the task in TLS
2011-09-27 18:12:03 -07:00
Brian Anderson
888e22aacc
Add more comments about kind checking on local move initializers
2011-09-27 16:03:10 -07:00
Brian Anderson
8217e4bd38
Add xfailed tests that resources can't be copied into various things
2011-09-27 16:03:10 -07:00
Brian Anderson
b8bb663df7
Don't ever raise unique kinds of pinned kinds to shared (again)
...
So *resource, ~resource, [resource] are all pinned. This is counter to the
design of the kind system, but this way is a much clearer path to type safety.
Once we've established a good baseline with lots of tests, then we can try to
make raising pinned kinds work.
2011-09-27 16:03:10 -07:00
Brian Anderson
e50580aa66
Revert "Use DPS for assignment and local initialization"
...
This reverts commit b1b202d302
.
2011-09-27 16:03:09 -07:00
Brian Anderson
1097463d96
Add an xfailed test for bogus deep copying of things containing resources
2011-09-27 14:28:20 -07:00
Brian Anderson
4bffa5e13a
Add an xfailed test for bogus vector addition of typarams
2011-09-27 14:24:28 -07:00
Patrick Walton
199e4dee8d
doc: Remove case
from the list of keywords
2011-09-27 14:01:06 -07:00
Patrick Walton
f54e2699fb
doc: Remove tup
from the list of keywords
2011-09-27 13:57:54 -07:00
Marijn Haverbeke
04f062f9d4
Fix lurking bug in matching of nil
...
Which was somehow made visible by the DPS changes.
2011-09-27 22:49:33 +02:00
Marijn Haverbeke
b1b202d302
Use DPS for assignment and local initialization
...
Issue #667
2011-09-27 20:33:09 +02:00
Marijn Haverbeke
e42f3b8481
Safeguard against self-assignment for unique types
2011-09-27 20:33:09 +02:00
Jesse Ruderman
923aa4744e
Test for #924
2011-09-27 11:05:16 -07:00
Marijn Haverbeke
94db38a530
Move expr_unary to DPS style
...
Issue #667
2011-09-27 17:31:15 +02:00
Marijn Haverbeke
92d63ffa65
Make trans_rec and trans_tup understand overwrite dests
...
Issue #667
2011-09-27 17:31:15 +02:00
Marijn Haverbeke
8282f7fe80
Move expr_binary into trans_expr_dps
...
Issue #667
2011-09-27 17:30:54 +02:00
Marijn Haverbeke
806e74fbf5
Move expr_lit and expr_vec into trans_expr_dps
...
Issue #667
2011-09-27 17:30:45 +02:00
Marijn Haverbeke
8ea72fae99
Move more non-value-returning things to trans_expr_dps.
...
Issue #667
2011-09-27 17:30:45 +02:00
Brian Anderson
b49f4689f5
Add two xfailed tests for invalid copies into vectors
2011-09-26 23:45:51 -07:00
Brian Anderson
1796abc3ef
xfail-win32 -> xfail-fast
2011-09-26 23:34:54 -07:00
Brian Anderson
4f2a0117c7
Try to appease windows by xfail-win32'ing a random test
2011-09-26 23:34:12 -07:00
Brian Anderson
df19b7a13a
Test for issue #980
2011-09-26 23:24:53 -07:00
Brian Anderson
6b42ad5ea0
Enforce copy restrictions on let initializers
2011-09-26 22:00:15 -07:00
Brian Anderson
07e13fe447
Make some nocopy tests a bit more futureproof
...
Turn the let assignment initializers into move initializers since
that assignment is going to become illegal
2011-09-26 22:00:15 -07:00
Jesse Ruderman
20c2d2a999
Distinguish #924
2011-09-26 20:44:57 -07:00
Jesse Ruderman
4ff46a1502
Add a cycle-collection fuzzer
2011-09-26 20:34:07 -07:00
Brian Anderson
3778b6c6a8
Prevent copying of uncopyable things via the copy op
2011-09-26 20:03:30 -07:00
Brian Anderson
755001725a
Prevent copying of uncopyable things via compound assignment ops
2011-09-26 20:03:24 -07:00
Brian Anderson
99cbea51a1
Don't allow vectors of pinned kinds to be copied
2011-09-26 19:57:00 -07:00
Brian Anderson
4bee452221
Don't allow copying of unique boxes of pinned kinds
...
Issue #409
2011-09-26 18:43:49 -07:00
Brian Anderson
2d5e085eb9
Add a test that unique boxes in vectors are copied when the vector is
...
Issue #409
2011-09-26 17:59:58 -07:00
Patrick Walton
a88d9effbc
rt: Don't run arbitrary destructors on cycle collection; that's just broken.
2011-09-26 17:41:22 -07:00
Patrick Walton
5c973142df
rt: Turn on cycle collection at task death; add a test case
2011-09-26 16:59:15 -07:00
Patrick Walton
ad19ab4c6f
rt: Make the logic that moves environments between tasks update the GC alloc chain correctly
2011-09-26 16:59:15 -07:00
Patrick Walton
47e5ab093a
stdlib: Fix typos in comments in lib/test.rs
2011-09-26 16:59:15 -07:00
Brian Anderson
76e8dd248c
Fix configure script to use valgrind again
2011-09-26 16:17:22 -07:00
Brian Anderson
389852b5c0
Fix tags of unique boxes
...
Issue #409
2011-09-26 14:44:08 -07:00
Brian Anderson
223f5be166
Unique vectors and boxes of pinned are unique kinds. Closes #977
2011-09-26 13:38:46 -07:00
Marijn Haverbeke
8c0918ac18
Construct records and tuples in-place
...
Issue #667
Now, {a: {b: 10, c: 20}, d: @30} will simply write the values in the right
places, rather than creating intermediary records and then memmoving them.
Cuts about a megabyte off the unoptimized compiler size.
2011-09-26 22:13:08 +02:00
Marijn Haverbeke
5837975f95
Convert more expression types to use DPS
...
expr_rec, expr_tup, most of the exprs that don't return anything. Make
trans_ret almost trivial by using destination adaptors (trans_save_in,
trans_by_ref).
Issue #667
2011-09-26 21:34:10 +02:00
Marijn Haverbeke
345b5a47bd
Add a workaround hack for issue #913
...
I can't figure out what the real cause of this bug is, but I want
to be able to use blocks inside loops again.
2011-09-26 21:34:10 +02:00
Patrick Walton
37cf7b92c8
test: Fix more typos in weird-exprs.rs.
2011-09-26 10:26:30 -07:00
Patrick Walton
2348858995
test: wierd-exprs -> weird-exprs
2011-09-26 10:24:46 -07:00
Patrick Walton
81f1863de7
rt: Remove obsolete comment
2011-09-26 10:24:21 -07:00
Andreas Gal
39f4874cf6
Merge pull request #978 from erikrose/doc-tweaks
...
Fix some typos and grammar in the docs.
2011-09-25 22:34:10 -07:00
Erik Rose
dce9dfeefc
Fix some typos and grammar in the docs.
2011-09-25 22:25:15 -07:00
Graydon Hoare
93f0e9bac3
Refine notes in kind.rs some more. Add a fixme to ty.rs.
...
Kinds are still pretty wobbly. See thread starting at
https://mail.mozilla.org/pipermail/rust-dev/2011-September/000807.html
2011-09-25 21:20:17 -07:00
Jesse Ruderman
798b3531a6
Enable hammertime
2011-09-25 21:13:52 -07:00
Jesse Ruderman
73898351d2
Test for #973
2011-09-25 21:01:50 -07:00