Tim Chevalier
5428a22b95
First cut at dtors for classes
...
Classes with dtors should compile now. Haven't yet tested
whether they actually run correctly.
Beginnings of support for #2295 , though that won't be done until
there's more test cases and resources are removed.
2012-05-14 14:26:10 -07:00
Tim Chevalier
89cd2f6bd0
Enforce that self doesn't escape from a class
...
Closes #2294
2012-05-14 14:26:10 -07:00
Brian Anderson
11e9947ff5
rustc: Eliminate a simple dependency from metadata mod
2012-05-13 17:49:27 -07:00
Brian Anderson
1f52652a06
rustc: Eliminate some indirection to the syntax crate
2012-05-13 17:33:29 -07:00
Brian Anderson
a2572fe77e
rustc: Eliminate metadata's dependency on trans
2012-05-13 17:08:35 -07:00
Brian Anderson
ecf290d448
rustc: Be explicit about which peer modules the metadata mod can access
...
This is the first step in eliminating dependencies on rustc so we can extract
the metadata code into its own crate.
2012-05-13 15:58:10 -07:00
Niko Matsakis
a6b9fa0cd1
new test for loaning out an index
2012-05-11 18:27:17 -07:00
Niko Matsakis
63eb8e0e87
move purity checking into borrowck, addresses #1422
2012-05-11 14:05:58 -07:00
Graydon Hoare
2585384c97
First working monomorphic type-reflection.
2012-05-11 13:10:07 -07:00
Niko Matsakis
5dbf881e87
three new tests for assigning to various unassignable things
2012-05-11 06:41:58 -07:00
Niko Matsakis
b4d1f1b2c1
replace mutbl pass with borrowck
2012-05-10 21:14:43 -07:00
Graydon Hoare
c23d6a50d7
Preliminary groundwork for intrinsic module, reflection interface.
2012-05-10 17:18:04 -07:00
Graydon Hoare
664b82a6b7
Merge pull request #2375 from paulstansifer/remove_do_loops
...
Remove do loops
2012-05-10 15:35:26 -07:00
Paul Stansifer
f943667af3
Remove do ... while
loops from the tests and docs.
2012-05-10 15:27:42 -07:00
Paul Stansifer
13c924c049
Remove do { ... } while ...
from the language.
2012-05-10 15:09:33 -07:00
Paul Stansifer
5af58e7926
Removed all 4 uses of do ... while
in the codebase.
2012-05-10 14:21:04 -07:00
Brian Anderson
fa6c18e014
rustc: Refactor driver to better understand string sources
2012-05-09 23:40:50 -07:00
Niko Matsakis
50a3dd40ae
implement new borrow ck (disabled by default)
2012-05-09 17:00:19 -07:00
Niko Matsakis
5e7229b72c
reduce self type to a special type parameter
2012-05-09 07:11:59 -07:00
Brian Anderson
d41af13334
rustc: Extract session::basic_options from rustdoc
2012-05-08 22:33:45 -07:00
Brian Anderson
d21d1ecad5
Register snapshots
2012-05-08 14:38:00 -07:00
Marijn Haverbeke
96a159a6ea
Support visibility modifiers and attributes on view items
...
Issue #1893
Tangentially, issue #2357
2012-05-08 23:14:24 +02:00
Marijn Haverbeke
5c0577f233
Import ast::* in parser.rs
...
And make the code look a lot less awkward.
2012-05-08 16:09:40 +02:00
Marijn Haverbeke
b619954457
Start parsing pub/priv on regular items
...
Issue #1893
2012-05-08 16:09:40 +02:00
Marijn Haverbeke
df3bf7c2a0
parser: Consolidate some duplicated code
2012-05-08 16:09:40 +02:00
Brian Anderson
4885ffb579
core: Export str::unsafe::from_buf_len/from_c_str_len
2012-05-07 15:56:53 -07:00
Brian Anderson
b99038c2bf
rustc: Put all boxes into addrspace 1
2012-05-07 15:24:32 -07:00
Tim Chevalier
0e43e8ccc8
That awkward moment when you forget to add your final changes
...
Fixes build breakage.
2012-05-07 15:15:13 -07:00
Tim Chevalier
1e6da7b38d
Add another test case for #2288
...
Added a test case for #2288 . It's xfailed for now, pending #2364
2012-05-07 14:43:31 -07:00
Tim Chevalier
1460ea43d2
Add xfailed test case for #2354
2012-05-07 14:43:31 -07:00
Tim Chevalier
4f105e4025
In resolve, visit the path in an iface ref
...
Necessary to resolve any type arguments in a ref to a parameterized
iface. This meant that, for example:
class A implements B<int> { ...
didn't work before, because the "int" in B's argument wasn't getting
visited, and thus wasn't getting resolved. Now it works.
Partially addresses Issue #2288 , but I also want to check that class
ty params can appear as the type arguments to ifaces (for example,
class A<T> implements B<T> {...
should work.)
2012-05-07 14:43:31 -07:00
Tim Chevalier
1226669172
Comment only: add a FIXME on int::abs
2012-05-07 14:43:31 -07:00
Brian Anderson
f717100fc7
rt: Start tasks, ports and scheds at 1, assert when we see 0. Closes #2321
2012-05-07 14:32:36 -07:00
Brian Anderson
1db88e7937
Clarify docs for path::normalize. Closes #2362
2012-05-07 13:38:59 -07:00
Niko Matsakis
8a9df5aa38
make it illegal to implicitly capture mutable variables
...
this is the final part of #1273
2012-05-07 13:22:42 -07:00
Patrick Walton
d709ed2542
Merge pull request #2336 from tychosci/vim-syntax
...
Vim syntax update
2012-05-06 11:05:14 -07:00
Tycho Sci
16848becaa
vim: Fix syntax of number literals
...
To follow [3.5.2.2 Number literals] in the reference manual.
2012-05-05 11:43:07 +09:00
Tycho Sci
bbf73bdfc6
vim: Link rustTodo to Todo for highlighting
2012-05-05 10:20:27 +09:00
Tim Chevalier
95a2b5d42f
Add test case that checks that class members must be prefixed with "self"
...
Closes #2289 .
2012-05-04 13:44:01 -07:00
Niko Matsakis
50ec6bd2c3
new cap clause syntax
2012-05-04 12:33:08 -07:00
Tim Chevalier
8affc78e8a
Turn constants in back::abi into uints, and propagate types
...
This means GEPi now takes a list of uints. Apologies in advance
if this is hard to rebase against, but it gets rid of many a cast :-)
Also modernized some for loops here and there.
2012-05-03 22:31:38 -07:00
Tim Chevalier
2830bc3d31
Comment only: Annotate FIXMEs in std::time
2012-05-03 17:55:23 -07:00
Tim Chevalier
37f23303e6
Fix compiletest::header::iter_header to work with new-style for loops
...
Gets rid of a FIXME -- yay!
2012-05-03 17:45:06 -07:00
Tim Chevalier
82d4fe3967
Write unicode::icu::UCHAR_INVALID_CODE as -1, removing a FIXME
2012-05-03 17:45:06 -07:00
Tim Chevalier
97c0b3848d
Comments only: annotate more FIXMEs in libstd
2012-05-03 17:45:06 -07:00
Niko Matsakis
a7e0eb3581
allow enums that ref themselves via unsafe pointers
2012-05-03 17:08:18 -07:00
Brian Anderson
c6d33c3d37
core: Add comm::listen
2012-05-03 16:38:16 -07:00
Brian Anderson
13a4b59cc8
core: Add send/recv/peek methods for both ports and chans
...
Calling peek or recv on channels can fail when the associated port
is dead or unowned.
2012-05-03 16:38:16 -07:00
Brian Anderson
18f898315a
core: Reorder declarations in comm so they read well
2012-05-03 16:38:16 -07:00
Brian Anderson
beb1a59f82
core: Add comm::recv_chan to receive from a channel
2012-05-03 16:38:16 -07:00