Alex Crichton
b6cccb3d81
Track the source of the type_target and value_target separately for ImportResolutions
2013-06-09 21:42:57 -07:00
Luqman Aden
618558a70f
librustc: Allow adding static fn's in multiple impl's.
2013-06-09 08:00:40 -04:00
bors
88c318d28c
auto merge of #7023 : thestinger/rust/vec, r=brson
2013-06-08 22:34:10 -07:00
Daniel Micay
de367157b5
remove deprecated vec::{is_empty, len} functions
2013-06-08 23:19:30 -04:00
bors
1f0c05ff74
auto merge of #7018 : bill-myers/rust/fix_7017, r=thestinger
...
Minimally fixes #7017 , we were overwriting the result and thus ignoring attributes before the last.
csearch::get_item_attrs and decoder::get_item_attrs should probably also be changed to each_item_attrs using the for protocol, but that's just a minor performance/style issue.
2013-06-08 19:16:11 -07:00
Bill Myers
90ec4228be
fix decoding of multiple attributes ( fixes #7017 )
...
We were just looking at the last because we were overwriting ret.
2013-06-09 02:36:31 +02:00
bors
470bf0dfb3
auto merge of #7016 : thestinger/rust/ptr, r=luqmana
2013-06-08 14:31:10 -07:00
bors
878a9b92eb
auto merge of #7004 : dotdash/rust/allocs, r=thestinger
...
This removes some unnecessary allocations in the lexer, the typechecker and the metadata decoder. Reduces the time spent in the parsing and typechecking passes by about 10% for me.
2013-06-08 13:37:10 -07:00
bors
4aa77198cb
auto merge of #6992 : Blei/rust/fix-autoderef-ice, r=catamorphism
...
Related to #5062 , but doesn't fix that one.
2013-06-08 12:40:15 -07:00
Daniel Micay
fe3ad0a204
rm some uses of to_mut_unsafe_ptr
2013-06-08 15:02:32 -04:00
Huon Wilson
98ba91f81b
remove unused import warnings
2013-06-09 02:22:23 +10:00
Huon Wilson
513d2292e5
std: remove foldr and alli methods in vec
2013-06-09 02:22:23 +10:00
Huon Wilson
ed299af625
std: remove fold[lr] in favour of iterators
2013-06-09 02:22:23 +10:00
Huon Wilson
65c7c58c8f
std: remove {all*,any*,count} in favour of iterators
2013-06-09 02:22:23 +10:00
Huon Wilson
ce4f63dcee
std: add reverse vec iterators, replace vec::each*_reverse.
2013-06-09 02:22:23 +10:00
Philipp Brüschweiler
a99ba1180d
rustc::regionck: fix ICE when getting signature of ty_err
...
Fixes #5062
2013-06-08 09:34:47 +02:00
Philipp Brüschweiler
f3f9db133a
rustc: Fix an ICE "Autoderef but type not derefable"
...
Related to #5062 (same error message), but that test case causes
a different ICE than mentioned there (even without this fix).
2013-06-08 09:34:32 +02:00
Björn Steinbrink
b65dc42b25
TypeChecker: Avoid unnecessary copies
2013-06-08 03:24:47 +02:00
Björn Steinbrink
96798f5e05
tydecode: Accept a plain borrowed pointer to the data
2013-06-08 03:24:47 +02:00
Philipp Brüschweiler
080a462050
rustc::typeck: fix array out of bounds
...
Fixes #6155
2013-06-07 22:09:01 +02:00
Daniel Micay
d945543ebf
Merge branch 'each-fn-kill' of https://github.com/huonw/rust into each-fn-kill
2013-06-07 14:43:02 -04:00
Huon Wilson
54d914a9a9
std: remove each[i]_mut functions, in favour of iterators.
2013-06-08 03:24:27 +10:00
Huon Wilson
bc81d279fa
rustc: Convert a fail! to a useful error message.
2013-06-08 01:46:49 +10:00
Huon Wilson
f661a15b2b
std: remove vec::each2 and vec::each2_mut in favour of iterators
2013-06-08 01:20:47 +10:00
bors
4abd83b18d
auto merge of #6985 : Aatch/rust/fixed-vec-6977, r=thestinger
...
This fixes #6977 . Negative counts don't make sense anyway.
2013-06-06 20:34:32 -07:00
James Miller
de27064d84
Disallow negative counts in repeat expressions
2013-06-07 12:30:44 +12:00
Michael Sullivan
8bbf83b62a
Clean up a handful of build warnings.
2013-06-06 12:14:41 -07:00
Philipp Brüschweiler
13df1198d5
infer: remove superfluous call to try()
2013-06-06 11:53:09 +02:00
Alexei Sholik
e75572c879
Deduplicate words in code comments
2013-06-06 10:48:27 +03:00
John Clements
04a691a511
token_to_ident takes argument by reference
2013-06-05 12:01:38 -07:00
John Clements
3203595471
interner just uses uints, not idents with syntax context
2013-06-05 12:01:38 -07:00
John Clements
ae02bf70e0
removed some interner fields
2013-06-05 12:01:38 -07:00
John Clements
22d21ab4c2
rename repr to name
2013-06-05 12:01:37 -07:00
Patrick Walton
8114d0e950
librustc: Disallow multiple patterns from appearing in a "let" declaration.
...
You can still initialize multiple variables at once with "let (x, y) = (1, 2)".
2013-06-04 21:45:42 -07:00
bors
69511c219c
auto merge of #6928 : Blei/rust/fix-constructors, r=bstrie
...
As part of #3853
2013-06-04 09:37:41 -07:00
Philipp Brüschweiler
34ee63e93b
std::cell: Modernize constructors
...
Part of #3853
2013-06-04 12:03:58 +02:00
Jed Davis
0c9510ac38
Use ABI alignment, not "preferred" alignment, to unify monomorphizations.
...
See the comment in the added test case for details.
2013-06-04 00:18:48 -07:00
Michael Sullivan
d85938f7c8
Make type_is_pod handle structs correctly. Closes #6868 .
2013-06-03 17:16:12 -07:00
Philipp Brüschweiler
394ac1aae4
resolve: don't resolve paths that point to non-static methods
...
Fixes #6698
2013-06-03 13:31:43 +02:00
Björn Steinbrink
b51f44e21b
Fix passing self by value for types passed by value
...
For types that are passed by value, we can't just cast the value to a
pointer, but have to use an alloca and copy the value there. This
handling is already present for all other arguments, but was missing
for "self".
Fixes #6682 , #4850 and #4878
2013-06-03 00:06:09 +02:00
bors
fc5debd8fd
auto merge of #6807 : catamorphism/rust/rustpkg-extern-mod, r=catamorphism
...
r? @graydon Addresses #5681
2013-06-01 19:22:42 -07:00
Tim Chevalier
231aea6d6e
rustc: Improve astconv error message
2013-06-01 18:48:07 -07:00
bors
63417daea4
auto merge of #6885 : erickt/rust/move-callee_id, r=catamorphism
...
The `callee_id` in `ast::expr` in only used in a couple expression variants. This moves the `callee_id` into those branches to make it more clear when its should be used.
Also, it fixes a bug in a std::run test when there is a symlink in the path rust where was checked out.
2013-06-01 17:13:39 -07:00
bors
24e85ac82d
auto merge of #6880 : thomaslee/rust/issue-6745, r=catamorphism
...
This fixes #6745 , which itself relates to #4202 . Slightly ham-fisted -- feel particularly funny about using the typeck phase to gather the base -> impl mapping, and the separate code paths for traits vs. "real" bases feels like it could be avoided -- but it seems to work.
As always, open to suggestions if there's a better way to accomplish what I'm trying to do.
@catamorphism r?
2013-06-01 15:46:40 -07:00
Erick Tryzelaar
23808efd11
syntax: move callee_id into the expr_ variants
2013-06-01 15:31:56 -07:00
Luqman Aden
64759c9f25
librustc: Have destructor run for unit-like structs.
2013-06-01 17:41:07 -04:00
Patrick Walton
5fb254695b
Remove all uses of pub impl
. rs=style
2013-06-01 09:18:27 -07:00
Patrick Walton
1e52eede31
librustc: Don't require pub extern
to make extern functions visible
2013-06-01 09:16:46 -07:00
Tom Lee
f6fa5b91e2
Reexport static methods on structs & enums.
2013-06-01 04:14:58 -07:00
bors
2bf053c0a3
auto merge of #6851 : alexcrichton/rust/bugfixes, r=pcwalton
...
Closes #5090 by using the excellent new generic deriving code
Promotes the unreachable code attribute to a lint attribute (instead of always being a warning)
Fixes some edge cases when creating hashmaps/hashsets and also when consuming them. (fixes #5998 )
2013-05-31 23:10:36 -07:00