Scott Lawrence
a6867e259b
Removing support for the do syntax from libsyntax and librustc.
...
Fixes #10815 .
2014-01-29 09:15:42 -05:00
Jason Fager
9b1865a7fa
Add a limited prim type lookup for safer const expr evaluation
2014-01-29 00:05:11 -05:00
Eduard Burtescu
15ba0c310a
Demote self to an (almost) regular argument and remove the env param.
...
Fixes #10667 and closes #10259 .
2014-01-27 14:31:24 +02:00
bors
d3f70f5a7d
auto merge of #11817 : salemtalha/rust/master, r=brson
...
Fixes Issue #11815
2014-01-26 15:26:30 -08:00
Salem Talha
cc61fc0994
Removed all instances of XXX in preparation for relaxing of FIXME rule
2014-01-26 14:42:53 -05:00
Alex Crichton
4d6836f418
Fix privacy fallout from previous change
2014-01-26 11:03:13 -08:00
Simon Sapin
bada25e425
[std::vec] Rename .pop_opt() to .pop(), drop the old .pop() behavior
2014-01-21 15:48:47 -08:00
Huon Wilson
39713b8295
Remove unnecessary parentheses.
2014-01-21 22:00:18 +11:00
bors
02d4572696
auto merge of #11661 : huonw/rust/fixed-length-instantiation, r=thestinger
...
Previously, they were treated like ~[] and &[] (which can have length
0), but fixed length vectors are fixed length, i.e. we know at compile
time if it's possible to have length zero (which is only for [T, .. 0]).
Fixes #11659 .
2014-01-20 06:16:29 -08:00
Huon Wilson
6f3c202d3e
rustc: check instantiability of fixed length vectors properly.
...
Previously, they were treated like ~[] and &[] (which can have length
0), but fixed length vectors are fixed length, i.e. we know at compile
time if it's possible to have length zero (which is only for [T, .. 0]).
Fixes #11659 .
2014-01-19 18:48:20 +11:00
Huon Wilson
68517a2cca
syntax: convert ast_map to use a SmallIntMap.
...
NodeIds are sequential integers starting at zero, so we can achieve some
memory savings by just storing the items all in a line in a vector.
The occupancy for typical crates seems to be 75-80%, so we're already
more efficient than a HashMap (maximum occupancy 75%), not even counting
the extra book-keeping that HashMap does.
2014-01-19 12:56:26 +11:00
Niko Matsakis
14b0abfd82
Consider all zero-sized data structures to be voidish, bypassing some "quirky" parts of LLVM (see e.g. LLVM bug 9900) but also generating better code
2014-01-16 15:11:22 -05:00
bors
9075025c7b
auto merge of #11485 : eddyb/rust/sweep-old-rust, r=nikomatsakis
2014-01-14 12:32:11 -08:00
Patrick Walton
119c6141f5
librustc: Remove @
pointer patterns from the language
2014-01-13 14:45:21 -08:00
Huon Wilson
e25d7069b5
rustc: make error messages containing generic more self-explanatory.
...
Unsuffixed literals like 1 and 1.1, and free type parameters sometimes
have to be printed in error messages, which ended up with <V0>, <VI0>
and <VF0>. This change puts the words "generic" and "integer"/"float"
into the message so it's not a completely black box.
2014-01-13 22:34:50 +11:00
bors
1fda761e9c
auto merge of #11495 : kud1ing/rust/backticks, r=huonw
2014-01-12 02:56:28 -08:00
kud1ing
871ffd1c05
more backticks
2014-01-12 10:35:10 +01:00
Eduard Burtescu
509fc92a9b
Removed remnants of @mut
and ~mut
from comments and the type system.
2014-01-12 02:26:04 +02:00
Eduard Burtescu
08ac616d37
Use the right type for self in methods and remove obsoleted items.
...
Fixes #7411 , #10615 .
2014-01-11 16:40:23 +02:00
Eduard Burtescu
5ad2a7825b
Removed obsolete 'e' prefix on ty_evec and ty_estr.
2014-01-11 16:40:23 +02:00
bors
ff3d5d4603
auto merge of #11055 : pcwalton/rust/placement-box, r=pcwalton
...
r? @nikomatsakis
2014-01-09 16:11:18 -08:00
Patrick Walton
e12711540a
librustc: Implement placement box
for GC and unique pointers.
2014-01-09 16:05:34 -08:00
Eduard Burtescu
6b221768cf
libsyntax: Renamed types, traits and enum variants to CamelCase.
2014-01-09 22:25:28 +02:00
Brian Anderson
d323632669
'borrowed pointer' -> 'reference'
2014-01-07 18:49:13 -08:00
Eduard Burtescu
3119d18e55
Disowned the Visitor.
2014-01-06 14:00:46 +02:00
Brian Anderson
3b1862a82f
Don't allow newtype structs to be dereferenced. #6246
2014-01-04 14:44:12 -08:00
Brian Anderson
18cef3fad4
Don't allow single-variant enums to be dereferenced. #6246
...
I'm not sure if this was even intentional at this point.
2014-01-04 13:17:31 -08:00
Patrick Walton
82a09b9a04
librustc: Remove @mut
support from the parser
2014-01-03 14:02:01 -08:00
Patrick Walton
88281290ff
librustc: Remove @mut
support from the typechecker and borrow checker
2014-01-03 14:02:01 -08:00
Patrick Walton
449ebeea08
librustc: De-@mut
the AST map
2014-01-03 14:01:58 -08:00
Patrick Walton
4d66af2698
librustc: De-@mut
the span handler
2014-01-03 14:01:57 -08:00
klutzy
fe10c63326
syntax::diagnostic: Remove unnecessary traits
...
This removes trait `handler` and `span_handler`,
and renames `HandlerT` to `Handler`, `CodemapT` to `SpanHandler`.
2014-01-01 19:10:43 +09:00
Luqman Aden
1265a03139
librustc: Implement coercion for traits.
2013-12-27 03:26:46 -05:00
Patrick Walton
cc0584731a
librustc: De-@mut
the def map.
...
This is the last `@mut` in `librustc` that does not depend on libsyntax.
2013-12-26 15:54:37 -08:00
Patrick Walton
47846110a4
librustc: Fully de-@mut
trait_impls
in the type context
2013-12-26 15:54:37 -08:00
Patrick Walton
fecef74d57
librustc: De-@mut
the inherent implementations list
2013-12-26 15:54:37 -08:00
Patrick Walton
1f76a9ba5e
librustc: De-@mut
populated_external_traits
in the type context
2013-12-26 15:54:37 -08:00
Patrick Walton
89dfd00dcf
librustc: De-@mut
next_id
in the type context
2013-12-26 15:54:36 -08:00
Patrick Walton
2ba1b0bc06
librustc: De-@mut
populated_external_types
in the type context
2013-12-26 15:54:34 -08:00
Patrick Walton
75c95e0960
librustc: De-@mut
the region maps
2013-12-26 15:54:34 -08:00
Patrick Walton
ccb18f47e2
librustc: De-@mut
the used_mut_nodes
table in the type context
2013-12-26 15:54:33 -08:00
Patrick Walton
f7393d8658
librustc: De-@mut
the method map
2013-12-26 15:54:32 -08:00
Patrick Walton
c909c34b5d
librustc: De-@mut
the freevar_map
2013-12-26 15:54:29 -08:00
Patrick Walton
43aee50798
librustc: De-@mut
cstore::CStore
2013-12-26 15:54:29 -08:00
Patrick Walton
2de1e3649a
librustc: De-@mut
the named region map in the type context
2013-12-26 15:54:28 -08:00
Patrick Walton
01e31683d8
librustc: De-@mut
used_unsafe
in the type context
2013-12-26 15:54:28 -08:00
Patrick Walton
c4661fd258
librustc: De-@mut
node_types
in the type context
2013-12-26 13:01:28 -08:00
Patrick Walton
727fa3aa01
librustc: De-@mut
impl_vtables
in the type context
2013-12-26 13:01:28 -08:00
Patrick Walton
ea5368ce6e
librustc: De-@mut
ty::ctxt_::rcache
2013-12-26 13:01:28 -08:00
Patrick Walton
2c3f92699e
librustc: De-@mut
the type cache in the type context
2013-12-26 13:01:28 -08:00