about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2016-09-07Handle `ReEmpty` for `impl Trait`Andrew Paseltiner-2/+26
Closes #35668
2016-09-07Auto merge of #36304 - TimNN:fix-36299, r=eddybbors-0/+16
re-add accidentally removed line in wfcheck Fixes #36299, introduced in #36119. r? @eddyb
2016-09-07Auto merge of #36289 - euclio:self-suggestion, r=jseyfriedbors-1/+33
resolve: Suggest `use self` when import resolves Improves errors messages by replacing "Maybe a missing `extern crate`" messages with "Did you mean `self::...`" when the `self` import would succeed. Fixes #34191. Thank you for the help @jseyfried!
2016-09-07Auto merge of #36296 - nagisa:pass-timing, r=eddybbors-12/+13
Count and report time taken by MIR passes There’s some desire for deeper introspectability into what MIR passes cost us. -Z time-passes after this PR: ``` Compiling test_shim v0.1.0 (file:///home/nagisa/Documents/rust/rust/src/rustc/test_shim) time: 0.000; rss: 29MB parsing time: 0.000; rss: 29MB configuration time: 0.000; rss: 29MB recursion limit time: 0.000; rss: 29MB crate injection time: 0.000; rss: 29MB plugin loading time: 0.000; rss: 29MB plugin registration time: 0.032; rss: 54MB expansion time: 0.000; rss: 54MB maybe building test harness time: 0.000; rss: 54MB assigning node ids time: 0.000; rss: 54MB checking for inline asm in case the target doesn't support it time: 0.000; rss: 54MB complete gated feature checking time: 0.000; rss: 54MB collecting defs time: 0.004; rss: 54MB external crate/lib resolution time: 0.000; rss: 54MB early lint checks time: 0.000; rss: 54MB AST validation time: 0.001; rss: 54MB name resolution time: 0.000; rss: 54MB lowering ast -> hir time: 0.000; rss: 56MB indexing hir time: 0.000; rss: 56MB attribute checking time: 0.000; rss: 56MB language item collection time: 0.000; rss: 56MB lifetime resolution time: 0.000; rss: 56MB looking for entry point time: 0.000; rss: 56MB looking for plugin registrar time: 0.000; rss: 56MB region resolution time: 0.000; rss: 56MB loop checking time: 0.000; rss: 56MB static item recursion checking time: 0.000; rss: 56MB compute_incremental_hashes_map time: 0.000; rss: 56MB load_dep_graph time: 0.000; rss: 56MB type collecting time: 0.000; rss: 56MB variance inference time: 0.011; rss: 59MB coherence checking time: 0.000; rss: 59MB wf checking time: 0.000; rss: 59MB item-types checking time: 0.000; rss: 59MB item-bodies checking time: 0.000; rss: 59MB drop-impl checking time: 0.000; rss: 59MB const checking time: 0.000; rss: 59MB privacy checking time: 0.000; rss: 59MB stability index time: 0.000; rss: 59MB intrinsic checking time: 0.000; rss: 59MB effect checking time: 0.000; rss: 59MB match checking time: 0.000; rss: 59MB liveness checking time: 0.000; rss: 59MB rvalue checking time: 0.000; rss: 59MB MIR dump time: 0.000; rss: 59MB SimplifyCfg time: 0.000; rss: 59MB QualifyAndPromoteConstants time: 0.000; rss: 59MB TypeckMir time: 0.000; rss: 59MB SimplifyBranches time: 0.000; rss: 59MB SimplifyCfg time: 0.000; rss: 59MB MIR passes time: 0.000; rss: 59MB borrow checking time: 0.000; rss: 59MB reachability checking time: 0.000; rss: 59MB death checking time: 0.000; rss: 59MB stability checking time: 0.000; rss: 59MB unused lib feature checking time: 0.000; rss: 59MB lint checking time: 0.000; rss: 59MB resolving dependency formats time: 0.000; rss: 59MB NoLandingPads time: 0.000; rss: 59MB SimplifyCfg time: 0.000; rss: 59MB EraseRegions time: 0.000; rss: 59MB AddCallGuards time: 0.000; rss: 59MB ElaborateDrops time: 0.000; rss: 59MB NoLandingPads time: 0.000; rss: 59MB SimplifyCfg time: 0.000; rss: 59MB Deaggregator time: 0.000; rss: 59MB AddCallGuards time: 0.000; rss: 59MB PreTrans time: 0.000; rss: 59MB Prepare MIR codegen passes time: 0.000; rss: 59MB write metadata time: 0.000; rss: 61MB translation item collection time: 0.000; rss: 61MB codegen unit partitioning time: 0.000; rss: 61MB internalize symbols time: 0.007; rss: 61MB translation time: 0.000; rss: 61MB assert dep graph time: 0.000; rss: 61MB serialize dep graph time: 0.000; rss: 61MB llvm function passes [2] time: 0.000; rss: 61MB llvm function passes [3] time: 0.000; rss: 61MB llvm function passes [1] time: 0.000; rss: 61MB llvm function passes [0] time: 0.000; rss: 61MB llvm module passes [2] time: 0.000; rss: 61MB llvm module passes [1] time: 0.000; rss: 61MB llvm module passes [0] time: 0.000; rss: 61MB llvm module passes [3] time: 0.001; rss: 62MB codegen passes [1] time: 0.001; rss: 62MB codegen passes [2] time: 0.001; rss: 62MB codegen passes [0] time: 0.001; rss: 62MB codegen passes [3] time: 0.001; rss: 63MB codegen passes [1] time: 0.005; rss: 63MB LLVM passes time: 0.000; rss: 63MB serialize work products time: 0.001; rss: 63MB linking ``` r? @eddyb or @nikomatsakis cc @nrc, @Mark-Simulacrum
2016-09-06Auto merge of #36252 - joshtriplett:union-field-never-used, r=sanxiynbors-6/+32
Fix "field is never used" warning to take unions into account When compiling code containing a union with an unused field, rustc says "struct field is never used". Rather than saying "struct or union", or adding logic to determine the type of the item, just change the message to "field is never used", dropping the "struct". Update tests accordingly.
2016-09-06Auto merge of #36303 - jonathandturner:rollup, r=jonathandturnerbors-97/+142
Rollup of 8 pull requests - Successful merges: #36121, #36128, #36241, #36243, #36263, #36267, #36273, #36298 - Failed merges:
2016-09-06Auto merge of #36025 - michaelwoerister:incr-comp-hash-spans, r=nikomatsakisbors-145/+843
incr. comp.: Take spans into account for ICH This PR makes the ICH (incr. comp. hash) take spans into account when debuginfo is enabled. A side-effect of this is that the SVH (which is based on the ICHs of all items in the crate) becomes sensitive to the tiniest change in a code base if debuginfo is enabled. Since we are not trying to model ABI compatibility via the SVH anymore (this is done via the crate disambiguator now), this should be not be a problem. Fixes #33888. Fixes #32753.
2016-09-06re-add accidentally removed lineTim Neumann-0/+16
2016-09-06Rollup merge of #36298 - GuillaumeGomez:hashmap_doc, r=steveklabnikJonathan Turner-18/+42
Add missing urls r? @steveklabnik
2016-09-06Rollup merge of #36273 - apasel422:unsafe_no_drop_flag, r=steveklabnikJonathan Turner-14/+0
Remove mention of `unsafe_no_drop_flag` from Reference and Nomicon
2016-09-06Rollup merge of #36267 - Cobrand:E0559, r=jonathandturnerJonathan Turner-27/+40
Updated E0559 to new format Refactored a method that printed one suggested field name, into a method that returns an `Option` of a suggestion (Updated test cases accordingly) r? @jonathandturner Closes #36197
2016-09-06Rollup merge of #36263 - apasel422:scoped, r=steveklabnikJonathan Turner-20/+15
Clean up thread-local storage docs `std` no longer contains an implementation of scoped TLS. r? @steveklabnik
2016-09-06Rollup merge of #36243 - GuillaumeGomez:hash_map_links, r=steveklabnikJonathan Turner-4/+8
Add missing urls r? @steveklabnik
2016-09-06Rollup merge of #36128 - gavinb:error_msgs_p2, r=jonathandturnerJonathan Turner-10/+28
Update Error format for E0516, E0517, E0518 - E0518 Update error format #36111 - E0517 Update error format #36109 - E0516 Update error format #36108 - Part of #35233 r? @jonathandturner
2016-09-06Rollup merge of #36121 - Cobrand:master, r=jonathandturnerJonathan Turner-4/+9
Updated E0527 to new error format * Closes #36113
2016-09-06ICH: Make CachingCodemapView robustly handle invalid spans.Michael Woerister-15/+36
2016-09-06Auto merge of #36288 - nrc:save-var-value, r=eddybbors-7/+15
save-analysis: some refinement to the value string for variables
2016-09-06Add missing urlsggomez-18/+42
2016-09-06Count and report time taken by MIR passesSimonas Kazlauskas-12/+13
2016-09-06Auto merge of #36276 - jseyfried:fix_unused, r=nrcbors-22/+63
resolve: Fix unused import false positive with `item_like_imports` Fixes #36249. r? @nrc
2016-09-05Auto merge of #36078 - ollie27:rustdoc_search_assocconst, r=alexcrichtonbors-11/+50
rustdoc: Fix associated consts in search results Associated consts can appear in none trait impls so need to be treated like methods when generating the search index. Fixes #36031
2016-09-06Add struct `AmbiguityError`.Jeffrey Seyfried-4/+11
2016-09-06Add field `used: Cell<bool>` to variant `NameBindingKind::Import`.Jeffrey Seyfried-22/+17
2016-09-06Add regression test.Jeffrey Seyfried-0/+38
2016-09-06Avoid false positive unused import warnings.Jeffrey Seyfried-5/+6
2016-09-05show `self` suggestion when items are in the blockAndy Russell-8/+17
2016-09-05resolve: Suggest `use self` when import resolvesAndy Russell-1/+24
Improves errors messages by replacing "Maybe a missing `extern crate`" messages with "Did you mean `self::...`" when the `self` import would succeed.
2016-09-06save-analysis: some refinement to the value string for variablesNick Cameron-7/+15
2016-09-05Auto merge of #36274 - Manishearth:rollup, r=Manishearthbors-76/+100
Rollup of 6 pull requests - Successful merges: #35845, #35983, #36065, #36102, #36242, #36245 - Failed merges:
2016-09-05Auto merge of #35845 - frewsxcv:result-into-iter, r=GuillaumeGomezbors-1/+7
Indicate where `core::result::IntoIter` is created. None
2016-09-05Auto merge of #36281 - pnkfelix:fix-issue-36036, r=eddybbors-1/+37
Fix issue #36036. Fix #36036. We were treating an associated type as unsized even when the concrete instantiation was actually sized. Fix is to normalize before checking if it is sized.
2016-09-05Updated E0527 to new error formatCobrand-4/+9
* Closes #36113
2016-09-05Add test for unused field in unionJosh Triplett-0/+26
2016-09-05Auto merge of #36200 - mattico:fix-llvm-linkage, r=arielb1bors-66/+180
Fix incorrect LLVM Linkage enum Followup of #33994 to actually work. The `Linkage` enum in librustc_llvm got out of sync with the version in LLVM and it caused two variants of the `#[linkage=""]` attribute to break. This adds the functions `LLVMRustGetLinkage` and `LLVMRustSetLinkage` which convert between the Rust Linkage enum and the LLVM one, which should stop this from breaking every time LLVM changes it. Possible remaining concerns: 1. There could be a codegen test to make sure that the attributes are applied correctly (I don't know how to do this). 2. ~~The test does not exercise the `appending` linkage. I can't figure out how to make a global static raw pointer to an array. This might not even be possible? If not we should probably remove appending linkage as its unusable in rust.~~ Appending linkage is not 'emittable' anyway. 3. The test only runs on Linux. Fixes #33992 r? @alexcrichton
2016-09-06E0518 Update error format #36111Gavin Baker-1/+5
- Fixes #36111 - Part of #35233
2016-09-06E0517 Update error format #36109Gavin Baker-3/+7
- Fixes #36109 - Part of #35233
2016-09-05E0516 Update error format #36108Gavin Baker-8/+18
- fixes #36108 - part of #35233
2016-09-05Auto merge of #35787 - canndrew:bang_type_refactor_check, r=eddybbors-327/+272
Typecheck refactor for `!` Ping @nikomatsakis @eddyb. This is the PR for the typeck refactor for `!`. Is this what you guys had in mind? Is there anything else that needs doing on it?
2016-09-05Fix issue #36036.Felix S. Klock II-1/+37
We were treating an associated type as unsized even when the concrete instantiation was actually sized. Fix is to normalize before checking if it is sized.
2016-09-05Rollup merge of #36245 - alexcrichton:add-back-accident, r=arielb1Manish Goregaokar-0/+1
Add back feature accidentally removed This feature was accidentally removed in https://github.com/rust-lang/rust/pull/35957.
2016-09-05Rollup merge of #36065 - acrrd:new_format_E0496, r=GuillaumeGomezManish Goregaokar-49/+69
Update E0496 to new format Fixes #36000. Part of #35233. r? @GuillaumeGomez
2016-09-05Rollup merge of #35983 - GuillaumeGomez:e0060_bonus, r=jonathandturnerManish Goregaokar-27/+30
E0060 and E0061 improvement Fixes #35290. r? @jonathandturner
2016-09-05Rollup merge of #35845 - frewsxcv:result-into-iter, r=GuillaumeGomezManish Goregaokar-1/+7
Indicate where `core::result::IntoIter` is created. None
2016-09-05Remove expr_ty method completelyAndrew Cann-17/+4
2016-09-05Undo unnecessary bookkeeping from last commitAndrew Cann-17/+9
2016-09-05Remove use of expr_ty from coercions codeAndrew Cann-26/+37
2016-09-05Move write_ty to the bottom of check_patAndrew Cann-19/+18
2016-09-05Factor write_ty out of more pattern-checking functionsAndrew Cann-22/+20
2016-09-05Factor write_ty out of pattern-matching functionsAndrew Cann-13/+10
2016-09-05check_block_with_expected returns the checked typeAndrew Cann-14/+13