Patrick Walton
1ed94a5674
rustc: Prevent destructors from being run twice with the repeated vector syntax
2012-08-17 16:12:07 -07:00
Patrick Walton
9ea6b3a32e
rustc: Remove a few allocations from metadata. Shaves a few milliseconds off compilation of hello world.
2012-08-17 15:54:18 -07:00
Patrick Walton
69daeffddb
rustc: Remove a bunch of unused metadata tags from common
2012-08-17 15:25:40 -07:00
Patrick Walton
f79006937a
rustc: Remove tag_paths and all of the associated encoding
2012-08-17 15:23:44 -07:00
Niko Matsakis
ea549e7a71
make borrowck more conservative around rvalues.
...
this will require more temporaries, but is probably less magical.
also, it means that borrowck matches trans better, so fewer crashes.
bonus.
Finally, stop warning about implicit copies when we are actually borrowing.
Also, one test (vec-res-add) stopped failing due to #2587 , and hence I
added an xfail-test.
Fixes #3217 , #2977 , #3067
2012-08-17 15:14:13 -07:00
Patrick Walton
8f01343f01
rustc: Remove resolve_path
2012-08-17 15:07:14 -07:00
Patrick Walton
75d3e3c755
rustc: Remove a user of tag_paths.
...
This commit breaks the item-printing functionality. It will return in a faster
form.
2012-08-17 14:55:52 -07:00
Lindsey Kuper
0ace896d1f
Remove a match check
2012-08-17 14:32:34 -07:00
Lindsey Kuper
2b3c86cb02
More and better debug messages for method typechecking
2012-08-17 14:32:34 -07:00
Patrick Walton
6f441e8fde
rustc: Remove lookup_defs; unused.
2012-08-17 14:31:39 -07:00
Patrick Walton
578b7266f2
rustc: Encode reexports in the metadata and don't have each_path search tag_paths
2012-08-17 12:42:45 -07:00
Ben Blum
89c2a9f4cf
Forbid pattern-matching structs until the next snapshot ( #3215 )
2012-08-17 15:34:06 -04:00
Ben Blum
09cf5c1de4
Work around #3215/#3217 use-after-free in typeck::check::alt
2012-08-17 15:07:09 -04:00
Brian Anderson
5026ea0446
rustc: upcall_alloc_c_stack doesn't exist
2012-08-17 11:43:58 -07:00
Lindsey Kuper
280dfd2d29
Default methods with self-calls make it as far as trans.
2012-08-17 11:04:53 -07:00
Lindsey Kuper
3a5c7f52cc
Change node_id to def_id in self_info.
2012-08-17 11:04:53 -07:00
Brian Anderson
3ab4b014cf
Remove the class keyword
2012-08-17 10:13:45 -07:00
Graydon Hoare
45e7b89279
s/class/struct/ in an error message.
2012-08-16 14:25:53 -07:00
Patrick Walton
bf0d4cc035
rustc: Allow external structs to be constructed. Closes #3012 .
...
Embarrassing.
2012-08-15 21:03:40 -07:00
Brian Anderson
9c6890f488
Convert more core types to camel case
2012-08-15 17:46:05 -07:00
Patrick Walton
6319c8fbc4
rustc: Fix long lines and trailing whitespace
2012-08-15 16:25:42 -07:00
Patrick Walton
3038968f28
rustc: Perform some AST surgery to separate out class fields from methods
2012-08-15 16:20:35 -07:00
Patrick Walton
bdb206f285
rustc: Parse labeled loop, break, and again
2012-08-15 16:20:34 -07:00
Patrick Walton
d54db12155
rustc: Implement automatic reference for method receivers
2012-08-15 16:20:33 -07:00
Patrick Walton
fe9d07dda6
rustc: "as Trait" can now be written "as @Trait".
...
There is also code for ~Trait and &Trait, but these are currently (incorrectly)
synonyms for "as @Trait" and "as &Trait".
2012-08-15 16:20:31 -07:00
Tim Chevalier
c0140f5c34
Reject empty matches on inhabited types
...
Closes #3096
2012-08-15 14:57:45 -07:00
Brian Anderson
a83414b6e8
lint: Allow leading underscores on camel case types
2012-08-15 14:54:33 -07:00
Brian Anderson
74c69e1053
Convert more core types to camel case
2012-08-15 14:14:20 -07:00
Brian Anderson
11258310e2
Convert more core types to camel case
2012-08-14 18:26:03 -07:00
Michael Sullivan
e640a66eb4
Make most forms of explicit self work. By-value not implemented. Work on #2585 .
2012-08-14 17:40:04 -07:00
Graydon Hoare
4c16ff516d
Convert a couple hundred ~""s to ""s, in trans functions.
2012-08-14 16:45:51 -07:00
Lindsey Kuper
fb05f57881
Compile default methods; un-xfail default methods test (cc: #2794 ).
2012-08-14 09:02:47 -07:00
Brian Anderson
5394e34aa4
core: Camel case some lesser-used modules
2012-08-13 18:59:48 -07:00
Brian Anderson
6b43c0c1ad
Stop parsing old operator overloading syntax
2012-08-13 18:59:17 -07:00
Ben Blum
2e1b98d34f
Change borrowck error 'the the block' -> 'the block'
2012-08-13 21:53:41 -04:00
Tim Chevalier
c0858f4f7a
In typeck::collect::ensure_trait_methods, don't assume the trait was already checked
...
Instead of using node_id_to_type to look up the trait type, pass it
in as an argument. This handles the case where we check an impl of a trait T
before T has been traversed.
2012-08-13 17:38:58 -07:00
Graydon Hoare
91612dbb7e
De-mode-ify a few minor libcore modules.
2012-08-13 17:11:33 -07:00
Patrick Walton
5bd4110170
rustc: Mostly implement region-bounded stack closures
2012-08-13 15:34:36 -07:00
Brian Anderson
395d1ac185
rustc: Enum idents are not in the value namespace. Closes #3186
2012-08-13 15:17:54 -07:00
Lindsey Kuper
b1ec0a582e
Default methods get through compilation, but not linkage (cc: #2794 ).
2012-08-13 10:34:35 -07:00
Lindsey Kuper
0e0833e0b0
Change "iid" identifiers (apparently "interface id") to "trait_id"
2012-08-13 10:34:35 -07:00
Niko Matsakis
9169a1b26a
correct glb computation, improve region error msgs
...
cc #3180
2012-08-11 20:24:11 -07:00
Niko Matsakis
0475406178
infer: better names, docs
2012-08-11 20:24:11 -07:00
Niko Matsakis
a9979c0ae4
switch over some newtyped enums to structs
2012-08-11 20:24:11 -07:00
Niko Matsakis
6d2bef53aa
rename var_bindings to be less cryptic
2012-08-11 20:24:11 -07:00
Patrick Walton
7634e2911b
Revert "rustc: Make function types have vstores in them"
...
This reverts commit 0101125a96
.
2012-08-10 18:14:55 -07:00
Patrick Walton
0101125a96
rustc: Make function types have vstores in them
2012-08-10 16:22:06 -07:00
Lindsey Kuper
4597fe1320
Remove unneeded imports now that #1873 seems to be fixed
2012-08-10 13:38:21 -07:00
Lindsey Kuper
0c35489858
Move a comment to where it belongs.
2012-08-10 13:38:21 -07:00
Brian Anderson
96fdad2fb7
Change 'ret' to 'return' in an error message
2012-08-10 12:20:58 -07:00