bors
fa82b9af2a
auto merge of #5523 : alexcrichton/rust/less-oldmap, r=thestinger
...
I started out just removing a few instances of `HashMap` throughout rustc, but it ended up snowballing to remove the entire thing. Most uses translated to just using `@mut LinearMap` instead of `HashMap`, although I tried where possible to drop the `@mut` modifier. This ended up working out some of the time, but definitely not in the major use cases.
Things got kinda weird in some cases like:
* https://github.com/alexcrichton/rust/compare/mozilla:a56ec8c1342453a88be79e192a11501844375d40...alexcrichton:621b63300358cacad088ddd7f78180f29c40e66e#L39R1587
* https://github.com/alexcrichton/rust/compare/mozilla:a56ec8c1342453a88be79e192a11501844375d40...alexcrichton:621b63300358cacad088ddd7f78180f29c40e66e#L61R3760
* https://github.com/alexcrichton/rust/compare/mozilla:a56ec8c1342453a88be79e192a11501844375d40...alexcrichton:621b63300358cacad088ddd7f78180f29c40e66e#L71R917
* https://github.com/alexcrichton/rust/compare/mozilla:a56ec8c1342453a88be79e192a11501844375d40...alexcrichton:621b63300358cacad088ddd7f78180f29c40e66e#L91R127
I tried to tag them all with bugs which I thought would make them less weird, but I may have the wrong bug in a few places. These cases only came up when I tried to pass around `&mut LinearMap` instead of an `@mut LinearMap`.
I also ran into a few bugs when migrating to `LinearMap`, one of which is #5521 . There's another set of bugs which a00d779042fb8753c716e07b4f1aac0d5ab7bf66 addresses (all marked with `XXX`). I have a feeling they're all the same bug, but all I've been able is to reproduce them. I tried to whittle down the test cases and try to get some input which causes a failure, but I've been unable to do so. All I know is that it's vaguely related to `*T` pointers being used as `&*T` (return value of `find`). I'm not able to open a very descriptive issue, but I'll do so if there seems no other better route.
I realize this is a very large pull request, so if it'd be better to split this up into multiple segments I'd be more than willing to do so. So far the tests all pass locally, although I'm sure bors will turn something up. I also don't mind keeping this up to date with rebasing. This maybe should wait until after 0.6 because it is a fairly large change...
2013-03-26 16:21:59 -07:00
Alex Crichton
d69108d8f7
std: Remove the oldmap module
2013-03-26 19:21:05 -04:00
Alex Crichton
dbe1354321
Move ast_map::map to LinearMap
2013-03-26 19:21:05 -04:00
Alex Crichton
b53057f49d
test: Remove uses of oldmap::HashMap
2013-03-26 19:21:04 -04:00
Alex Crichton
17459d0bd3
rustc: Purge of HashMap, fixing segfaulting cases
...
Various FIXME comments added around to denote copies which when removed cause
the compiler to segfault at some point before stage2. None of these copies
should even be necessary.
2013-03-26 19:21:04 -04:00
Alex Crichton
6f812fef1b
rustc: Remove uses of oldmap::HashMap
2013-03-26 19:21:04 -04:00
Alex Crichton
31f6e64324
doc: Remove mentions of oldmap::HashMap
2013-03-26 19:20:02 -04:00
Alex Crichton
e4c3d805a4
syntax: Removing uses of HashMap
2013-03-26 19:20:02 -04:00
Alex Crichton
fa7772893a
Remove unused imports throughout
2013-03-26 19:20:02 -04:00
bors
3d588c5286
auto merge of #5555 : Kimundi/rust/str-dealloc-3, r=catamorphism
...
- Most functions that used to return `~[~str]` for a list of substrings got turned into iterators over `&str` slices
- Some cleanup of apis, docs and code layout
2013-03-26 15:07:07 -07:00
bors
3f7c74d022
auto merge of #5467 : nikomatsakis/rust/issues-3888-4036-4492-cannot-encode-region-variables, r=nikomatsakis
...
The basic problem was that vtables were not being resolved. The fix uncovered another issue, which was that the syntax extensions were not creating method calls properly and were relying on outdated code in typeck, so I fixed that too.
Resolves issues #3888 , #4036 , #4492 .
r? @catamorphism
2013-03-26 13:22:11 -07:00
Niko Matsakis
3ca7c225e5
Stop writing directly to the final type/method/vtable sidetables from astconv
...
and from typeck, which is verboten. We are supposed to write inference results
into the FnCtxt and then these get copied over in writeback. Add assertions
that no inference by-products are added to this table.
Fixes #3888
Fixes #4036
Fixes #4492
2013-03-26 15:39:12 -04:00
Niko Matsakis
6f2783d515
Add various debug statements to trans that I used to help track down the
...
problem and which seem like they could be useful in the future.
2013-03-26 15:16:58 -04:00
Niko Matsakis
e11d13f3de
Rip out old code that still structured method calls as a
...
expr_call(expr_field(...)) rather than an expr_method_call.
There is probably more such code in trans that should be removed.
2013-03-26 15:16:58 -04:00
bors
bbc4ca1349
auto merge of #5532 : brson/rust/coredocs, r=brson
...
r?
2013-03-26 12:16:19 -07:00
Brian Anderson
e5f8026eba
core: Make sure every module at least has a one-line description
2013-03-26 11:48:22 -07:00
Brian Anderson
113fbfc795
core: Clarify prelude docs. #4556
2013-03-26 11:47:52 -07:00
bors
d96bbb907e
auto merge of #5556 : nikomatsakis/rust/issues-4904-and-4855, r=nikomatsakis
...
Two small fixes.
r? @catamorphism
2013-03-26 11:16:22 -07:00
Niko Matsakis
0dc6c414af
Check for null in return_to_mut. Fixes #4904 .
2013-03-26 14:12:13 -04:00
Niko Matsakis
5f52669296
Fix #4855 : handle bot in regionck
2013-03-26 14:12:13 -04:00
Marvin Löbel
de468c8cd2
Added more missing lifetime annotations
2013-03-26 19:07:14 +01:00
bors
7f5d7e1c2e
auto merge of #5549 : brson/rust/rustdoc, r=brson
...
r?
2013-03-26 09:52:14 -07:00
Brian Anderson
4d745c288a
rustdoc: Tweak list style
2013-03-26 09:31:44 -07:00
Brian Anderson
34392ad5b4
rustdoc: Add type bounds to impls
2013-03-26 09:20:40 -07:00
Brian Anderson
0a0d3c7bd9
rustdoc: Handle impl method visibility correctly. #5533
2013-03-26 09:20:40 -07:00
Brian Anderson
a346def8b2
rustdoc: Build the crate config correctly. Fixes #5011
2013-03-26 09:20:40 -07:00
Brian Anderson
043150b9ab
rustdoc: Sanitize links harder
2013-03-26 09:20:37 -07:00
bors
de7d558944
auto merge of #5553 : pnkfelix/rust/doc-fixes-for-0.6-incoming, r=sanxiyn
2013-03-26 08:58:20 -07:00
Marvin Löbel
c88a20d171
Added missing lifetime annotations, doc and whitespace cleanups
2013-03-26 16:24:15 +01:00
Marvin Löbel
06c371605b
Fixed all use sites and tests
2013-03-26 14:59:17 +01:00
Marvin Löbel
c99488b3a4
Isolated bug, static vector seems to behave differently than fixed sized one
2013-03-26 14:59:17 +01:00
Marvin Löbel
b9de2b5787
Switched over a bunch of splitting funktions to non-allocating iterators
2013-03-26 14:59:17 +01:00
Marvin Löbel
d74606ead6
pre-rebase commit
2013-03-26 14:59:17 +01:00
Marvin Löbel
624a685283
Moved float str buffer constants to the strconv module
2013-03-26 14:59:17 +01:00
bors
74fb263f7a
auto merge of #5546 : nikomatsakis/rust/ty_region-useful-span, r=catamorphism
...
r? @catamorphism
2013-03-26 06:58:10 -07:00
Felix S. Klock II
e1dccf9a73
Updated to reflect alpha-rename of constant/static items section.
2013-03-26 14:36:01 +01:00
Felix S. Klock II
7b6e90630e
Cleanup wording around the awkward "and so on is . ." in the README.txt.
2013-03-26 14:18:48 +01:00
Felix S. Klock II
afaa48cfb5
Spelling fixes; replaced size
with capacity
in few places.
2013-03-26 14:18:48 +01:00
Felix S. Klock II
a266bda393
Fixes mozilla/rust#3612 .
2013-03-26 14:18:48 +01:00
Felix S. Klock II
5b10f4e117
Miscellaneous documentation additions.
...
Added notes explaining how [expr, ..expr] form is used, targeted at
individuals like me who thought it was more general and handled
dynamic repeat expressions. (I left a TODO for this section in a
comment, but perhaps that is bad form for the manual...)
Added example of `do` syntax with a function of arity > 1; yes, one
should be able to derive this from the text above it, but it is still
a useful detail to compare and contrast against the arity == 1 case.
Added example of using for expression over a uint range, since someone
who is most used to write `for(int i; i < lim; i++) { ... }` will
likely want to know how to translate that form (regardless of whether
it happens to be good style or not for their use-case).
Added note about the semi-strange meaning of "fixed size" of vectors
in the vector type section.
2013-03-26 14:18:48 +01:00
bors
51eb7dc8a7
auto merge of #5538 : apasel422/rust/release-notes, r=sanxiyn
2013-03-26 05:42:57 -07:00
bors
125cdf52cd
auto merge of #5542 : catamorphism/rust/issue-4983, r=catamorphism
2013-03-26 04:42:57 -07:00
Andrew Paseltiner
dcc88699d8
add deriving changes to release notes
2013-03-26 06:32:27 -04:00
bors
2815328e41
auto merge of #5540 : dbaupp/rust/configure-pandoc-version, r=brson
...
The version recognition was failing for pandoc version 1.11, thinking the
minor version was 1 rather than 11, and thus not building the documentation.
2013-03-26 03:31:03 -07:00
bors
dfedcc39da
auto merge of #5539 : apasel422/rust/kate, r=brson
2013-03-26 02:27:59 -07:00
bors
ff9c943c08
auto merge of #5537 : yichoi/rust/pull-0325, r=brson
...
In order to mitigate typo of target-triples, error notification of unsupported target triples which defined in mk/platform.mk added.
minor fix for arm-linux-androideabi added.
2013-03-26 01:27:58 -07:00
bors
5591d347cf
auto merge of #5536 : sanxiyn/rust/doc-purity, r=brson
...
Fix #3804 .
2013-03-26 00:18:57 -07:00
bors
7481524978
auto merge of #5528 : thestinger/rust/find_mut, r=brson
...
This currently requires workarounds for the borrow checker not being flow-sensitive for `LinearMap` and `TrieMap`, but it can already be expressed for `TreeMap` and `SmallIntMap` without that.
2013-03-25 22:24:57 -07:00
bors
47ddb59b80
auto merge of #5525 : dbaupp/rust/minor_fixups, r=graydon
...
Kills some warnings, and implements str::each_char_reverse so that it actually iterates. The test case wasn't detecting a failure, since the loop body was never executed.
2013-03-25 21:18:57 -07:00
bors
02d5f090dc
auto merge of #5524 : luqmana/rust/repeat-loop, r=pcwalton
...
`let v = [24, ..1000];` now more or less emits the same IR as:
```Rust
let mut i = 0;
while i < 1000 {
v[i] = 24;
i += 1;
}
```
LLVM will still turn it into a memset if possible with optimization on.
2013-03-25 20:16:01 -07:00