Brian Anderson
4ffa5ddf76
session.err shouldn't take a span
2011-06-29 14:35:39 -07:00
Tim Chevalier
76b755f9ad
Remove workaround for a compiler bug that, I guess, got fixed
2011-06-29 14:28:03 -07:00
Tim Chevalier
88447a47c0
Eliminate the --check-claims compiler flag
...
The option can only be toggled at runtime now.
2011-06-29 14:28:02 -07:00
Tim Chevalier
1ba85932b1
Add a runtime flag to enable/disable claims en masse
...
Now, if the environment variable CHECK_CLAIMS is set, then all
claims turn into checks. Otherwise, claims are no-ops.
2011-06-29 14:28:02 -07:00
Brian Anderson
d4b5b48e0a
Correctly locate the crate's version from the link attribute
2011-06-29 14:21:39 -07:00
Brian Anderson
29afe1a518
Write metadata for sythesized name/vers items to the crate's link attr
...
If the crate doesn't specify it's name or version, the defaults need to be
exported in the crate metadata
2011-06-29 14:21:39 -07:00
Brian Anderson
308bc31f24
Encapsulate more crate meta calculations
2011-06-29 14:21:39 -07:00
Brian Anderson
325f46da06
Move the calculation of the crate name, vers and cmh to a single function
2011-06-29 14:21:39 -07:00
Graydon Hoare
5b2c17fba5
Fix resource encoding bugs.
2011-06-29 12:14:29 -07:00
Patrick Walton
b18cefdfd7
rustc: Fix a leak that resulted from copying a structural interior type containing interior vectors. Add a test case.
2011-06-29 12:16:07 -07:00
Rafael Ávila de Espíndola
54f618128e
Revert ""Try" push without -lssp on windows to see what needs it."
...
This reverts commit 47b3e087e945a2a8fcfd1179e333746d294c1259.
2011-06-29 13:25:52 -04:00
Patrick Walton
bbd0d58955
rustc: Unbreak self assignment
2011-06-29 10:22:53 -07:00
Rafael Ávila de Espíndola
47b3e087e9
"Try" push without -lssp on windows to see what needs it.
2011-06-29 12:56:54 -04:00
Michael Sullivan
1d05718c2d
Extend visit to use visit_fn to visit fn expressions.
2011-06-29 09:04:00 -07:00
Brian Anderson
7c500fc0a0
Replace common::new_seq_hash with an adapter around std::smallintmap
...
It would be better to either convert ast_map to use smallintmap or make
smallintmap and hashmap follow the same interface, but I don't feel up to
it just now. Closes #585 .
2011-06-28 19:48:33 -07:00
Lindsey Kuper
7b5d34aa9a
Comments and cleanup.
2011-06-28 19:06:44 -07:00
Lindsey Kuper
57e5cde3a2
Comments and cleanup.
2011-06-28 18:54:56 -07:00
Lindsey Kuper
684c0dc494
Comments and cleanup.
2011-06-28 18:54:56 -07:00
Brian Anderson
6832f75f0b
Support attaching attributes to modules via the crate file. Issue #487
2011-06-28 18:39:34 -07:00
Patrick Walton
74f8eb51ae
rustc: Move duplicate_heap_parts to copy glue; add a test case
2011-06-28 17:59:30 -07:00
Tim Chevalier
db478ed4de
Remove outdated comments
2011-06-28 17:50:07 -07:00
Michael Sullivan
b944d8d72e
Require that both sides of a swap be lvals.
2011-06-28 17:28:06 -07:00
Brian Anderson
83b7215366
Cleanup attribute code. Issue #487
2011-06-28 16:55:07 -07:00
Brian Anderson
82a74fcb3f
Remove the last traces of the distinction between export / local meta items
...
Issue #487
2011-06-28 16:55:07 -07:00
Patrick Walton
dfcfef41df
rustc: Rename take glue to copy glue
2011-06-28 16:52:59 -07:00
Tim Chevalier
9f1444c701
Implement "claim"
...
Implement "claim" (issue #14 ), which is a version of "check" that
doesn't really do the check at runtime. It's an unsafe feature.
The new flag --check-claims turns claims into checks automatically --
but it's off by default, so by default, the assertion in a claim
doesn't execute at runtime.
2011-06-28 16:41:06 -07:00
Eric Holk
866ee6ecb4
Re-enabling some tests.
2011-06-28 16:12:34 -07:00
Eric Holk
c6d8324830
There is only one domain per kernel now.
2011-06-28 16:12:33 -07:00
Eric Holk
64596e6583
Teach the parser and typechecker to understand port[int](). Closes #588
2011-06-28 16:11:04 -07:00
Brian Anderson
1c6ae8cadf
Use span_fatal for failure to find crates
2011-06-28 16:04:09 -07:00
Brian Anderson
8ac60e99ea
Extract meta_item sorting from back::link to middle::attr
2011-06-28 15:46:09 -07:00
Brian Anderson
aecc5e6e0f
Add comments to middle::attr. Issue #487
2011-06-28 15:34:27 -07:00
Brian Anderson
a83b64d15d
Rework how linkage attributes are determined
...
The meta items within a crate's link attribute are used in linkage:
#[link(name = "std",
vers = "1.0",
custom = "whatever")];
Name and vers are treated specially, and everything else is hashed together
into the crate meta hash.
Issue #487
2011-06-28 15:25:47 -07:00
Brian Anderson
0608e277b6
Add some helper functions for attributes. Issue #487
2011-06-28 15:25:47 -07:00
Tim Chevalier
28459ca0eb
Handle lazy binops properly in typestate
...
The typestate analysis now reflects that the second operand of a
logical and or or may not be evaluated.
2011-06-28 13:07:52 -07:00
Tim Chevalier
a7c4c19d4b
add a predicate that determines whether a binop is lazy (and and or are lazy)
2011-06-28 13:07:52 -07:00
Rafael Ávila de Espíndola
d5fc01caef
Move glue.o to stageN/lib.
2011-06-28 15:20:43 -04:00
Patrick Walton
1ca0db5421
rustc: Add a "type-owns-heap-mem" cache. 2x translation speedup.
2011-06-28 11:36:11 -07:00
Patrick Walton
5f5b7e3348
rustc: Don't call cmp glue if the type is a simple scalar
2011-06-28 11:24:34 -07:00
Brian Anderson
cab73f8897
Write metadata for more meta_item types. Issue #487
2011-06-28 10:12:05 -07:00
Brian Anderson
f53c4f79d7
Write metadata for crate attributes. Issue #487
2011-06-28 10:03:41 -07:00
Brian Anderson
894e2229ac
Add emacs variables to encoder.rs
2011-06-28 10:03:40 -07:00
Brian Anderson
d328c7e03e
List crate attributes when running rustc with '--ls'
2011-06-28 10:03:40 -07:00
Marijn Haverbeke
9561def209
Use 'resource' rather than 'res' as a keyword
...
Resources are now defined like...
resource fd(int n) { close(n); }
Calling fd with an int will then produce a non-copyable value
that, when dropped, will call close on the given int.
2011-06-28 18:00:39 +02:00
Marijn Haverbeke
fb14afd5eb
Add test cases for resources
2011-06-28 18:00:38 +02:00
Marijn Haverbeke
07125aa38b
Fix bug that prevented boxes-in-resources from being freed
2011-06-28 18:00:05 +02:00
Marijn Haverbeke
e2cb97a2fc
Add some missing cases for ty_res in ty.rs
2011-06-28 18:00:05 +02:00
Marijn Haverbeke
d730bb730a
Make it possible to use * to dereference a resource
2011-06-28 18:00:05 +02:00
Paul Stansifer
b3443eb049
'#simplext' -> '#macro'
2011-06-28 15:02:12 +00:00
Paul Stansifer
c3901cdf8e
Add simple syntax extension (#simplext)
2011-06-28 15:02:12 +00:00