summary refs log tree commit diff
path: root/src/librustc/middle
AgeCommit message (Collapse)AuthorLines
2014-01-08auto merge of #11370 : alexcrichton/rust/issue-10465, r=pwaltonbors-65/+50
Turned out to be a 2-line fix, but the compiler fallout was huge.
2014-01-08auto merge of #11405 : huonw/rust/moredocs, r=huonwbors-58/+57
Various documentation changes, change the 'borrowed pointer' terminology to 'reference', fix a problem with 'make dist' on windows.
2014-01-08auto merge of #11391 : alexcrichton/rust/rustdoc-inline, r=brsonbors-5/+26
If a reexport comes from a non-public module, then the documentation for the reexport will be inlined into the module that exports it, but if the reexport is targeted at a public type (like the prelude), then it is not inlined but rather hyperlinked.
2014-01-07Fix remaining cases of leaking importsAlex Crichton-8/+24
2014-01-07rustc: De-indent portions of middle::resolveAlex Crichton-56/+26
It's a little prettier to look at now
2014-01-07Fix leaking trait imports across modulesAlex Crichton-2/+1
Turns out the pass in resolve was a little too eager to travel back up the hierarchy chain when looking for trait candidates. Closes #10465
2014-01-07'borrowed pointer' -> 'reference'Brian Anderson-58/+57
2014-01-07Inline reexports in rustdocAlex Crichton-5/+26
If a reexport comes from a non-public module, then the documentation for the reexport will be inlined into the module that exports it, but if the reexport is targeted at a public type (like the prelude), then it is not inlined but rather hyperlinked.
2014-01-08Renamed Option::map_default and mutate_default to map_or and mutate_or_setMarvin Löbel-14/+14
2014-01-07auto merge of #11329 : fhahn/rust/unused-cast-lint2, r=alexcrichtonbors-1/+44
Updates as mentioned in #11135
2014-01-06Add lint for unnecessary castsFlorian Hahn-1/+44
2014-01-06auto merge of #11333 : cmr/rust/triage2, r=alexcrichtonbors-1/+0
2014-01-06Disowned the Visitor.Eduard Burtescu-584/+562
2014-01-05Remove a fixmeCorey Richardson-1/+0
pcwalton says this is right, and it looks right to me too. Closes #4731
2014-01-04rustc: Add error about obsolete struct derefBrian Anderson-0/+10
2014-01-04Don't allow newtype structs to be dereferenced. #6246Brian Anderson-266/+270
2014-01-04Don't allow single-variant enums to be dereferenced. #6246Brian Anderson-72/+0
I'm not sure if this was even intentional at this point.
2014-01-03auto merge of #11251 : pcwalton/rust/remove-at-mut, r=pcwaltonbors-777/+583
r? @nikomatsakis for the borrow checker changes. Write guards are now eliminated.
2014-01-03librustc: Remove `@mut` support from the parserPatrick Walton-35/+21
2014-01-03librustc: Remove `@mut` support from the typechecker and borrow checkerPatrick Walton-457/+166
2014-01-03librustc: De-`@mut` the AST mapPatrick Walton-273/+384
2014-01-03librustc: De-`@mut` all writersPatrick Walton-2/+2
2014-01-03librustc: De-`@mut` (and de-`@`) the pretty printerPatrick Walton-8/+8
2014-01-03librustc: De-`@mut` the span handlerPatrick Walton-1/+1
2014-01-03librustc: De-`@mut` the parse sessionPatrick Walton-3/+3
2014-01-03auto merge of #11264 : am0d/rust/crate_type_lint, r=alexcrichtonbors-0/+8
This ensures that the `crate_type` attribute always contains a value, and does not contain an invalid value. Fixes #11256.
2014-01-03auto merge of #11149 : alexcrichton/rust/remove-either, r=brsonbors-7/+12
Had to change some stuff in typeck to bootstrap (getting methods in fmt off of Either), but other than that not so painful. Closes #9157
2014-01-03Remove std::eitherAlex Crichton-7/+12
2014-01-02auto merge of #10696 : fhahn/rust/issue9543-remove-extern-mod-foo, r=pcwaltonbors-1/+1
This patch for #9543 throws an `obsolete syntax` error for `extern mod foo (name="bar")` . I was wondering if [this](https://github.com/fhahn/rust/compare/mozilla:master...fhahn:issue9543-remove-extern-mod-foo?expand=1#diff-da9d34ca1d0f6beee2838cf02e07345cR4444) is the correct place to do this? I think the wording of the error message could probably be improved as well. If this approach is OK, I'm going to run the whole test suite tomorrow and update the old syntax to the new one.
2014-01-02auto merge of #11274 : michaelwoerister/rust/issue11083, r=pcwaltonbors-61/+69
This pull request fixes #11083. The problem was that recursive type definitions were not properly handled for enum types, leading to problems with LLVM's metadata "uniquing". This bug has already been fixed for struct types some time ago (#9658) but I seem to have forgotten about enums back then. I added the offending code from issue #11083 as a test case.
2014-01-02debuginfo: Fix issue #11083 and some minor clean up.Michael Woerister-61/+69
2014-01-02auto merge of #11269 : am0d/rust/lint_typo, r=sanxiynbors-1/+1
2014-01-02auto merge of #11268 : lkuper/rust/trans-comment, r=pcwaltonbors-1/+1
2014-01-01auto merge of #11246 : ktt3ja/rust/issue-11224, r=alexcrichtonbors-23/+44
Close #11224
2014-01-01auto merge of #11245 : alexcrichton/rust/issue-11225, r=pcwaltonbors-0/+23
Commit messages are a little more descriptive.
2014-01-01Fix typo in lint description.a_m0d-1/+1
2014-01-01Fix comment that's been wrong since ancient times (thanks, @jvns).Lindsey Kuper-1/+1
2014-01-01auto merge of #11242 : Dretch/rust/hashmap-key-value-iterators, r=pcwaltonbors-3/+2
2014-01-01Add linting for `crate_type` attribute values.a_m0d-0/+8
This ensures that the `crate_type` attribute always contains a value, and does not contain an invalid value.
2014-01-01Remove `extern mod foo (name="bar")` syntax, closes #9543Florian Hahn-1/+1
2014-01-01syntax::codemap: Add static DUMMY_SPklutzy-52/+52
It replaces `dummy_sp()`.
2014-01-01syntax::diagnostic: Remove unnecessary traitsklutzy-1/+1
This removes trait `handler` and `span_handler`, and renames `HandlerT` to `Handler`, `CodemapT` to `SpanHandler`.
2013-12-31auto merge of #11187 : alexcrichton/rust/once, r=brsonbors-2/+15
Rationale can be found in the first commit, but this is basically the same thing as `pthread_once`
2013-12-31Convert relevant static mutexes to OnceAlex Crichton-2/+15
2013-12-31Mark provided methods in dead-code passKiet Tran-23/+44
2013-12-31Conservatively export all trait methods and implsAlex Crichton-0/+23
The comments have more information as to why this is done, but the basic idea is that finding an exported trait is actually a fairly difficult problem. The true answer lies in whether a trait is ever referenced from another exported method, and right now this kind of analysis doesn't exist, so the conservative answer of "yes" is always returned to answer whether a trait is exported. Closes #11224 Closes #11225
2013-12-31Fix issue #11216 - Replace std::hashmap::{each_key, each_value} with iterators.Gareth Smith-3/+2
2013-12-31Implement volatile_load and volatile_store intrinsics.Peter Zotov-0/+58
2013-12-30auto merge of #11182 : luisbg/rust/crateid, r=cmrbors-7/+7
Issue #11048
2013-12-29Make ast_fold take &mut selfSteven Fackler-5/+5