summary refs log tree commit diff
path: root/src/librustc
AgeCommit message (Collapse)AuthorLines
2015-05-15Don't use <Duration as Display>::display() in time passesNick Cameron-4/+9
2015-05-14Auto merge of #24920 - alexcrichton:duration, r=aturonbors-4/+5
This commit is an implementation of [RFC 1040][rfc] which is a redesign of the currently-unstable `Duration` type. The API of the type has been scaled back to be more conservative and it also no longer supports negative durations. [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/1040-duration-reform.md The inner `duration` module of the `time` module has now been hidden (as `Duration` is reexported) and the feature name for this type has changed from `std_misc` to `duration`. All APIs accepting durations have also been audited to take a more flavorful feature name instead of `std_misc`. Closes #24874
2015-05-13std: Redesign Duration, implementing RFC 1040Alex Crichton-4/+5
This commit is an implementation of [RFC 1040][rfc] which is a redesign of the currently-unstable `Duration` type. The API of the type has been scaled back to be more conservative and it also no longer supports negative durations. [rfc]: https://github.com/rust-lang/rfcs/blob/master/text/1040-duration-reform.md The inner `duration` module of the `time` module has now been hidden (as `Duration` is reexported) and the feature name for this type has changed from `std_misc` to `duration`. All APIs accepting durations have also been audited to take a more flavorful feature name instead of `std_misc`. Closes #24874
2015-05-13Rollup merge of #25365 - meqif:error-markdown, r=huonwSteve Klabnik-2/+2
Reading through the rendered error explanations in http://doc.rust-lang.org/error-index.html, I noticed a few opportunities to improve the output.
2015-05-13Auto merge of #25344 - arielb1:fresh-float, r=nikomatsakisbors-11/+16
There is no subtyping relationship between the types (or their non-freshened variants), so they can not be merged. Fixes #22645 Fixes #24352 Fixes #23825 Should fix #25235 (no test in issue). Should fix #19976 (test is outdated).
2015-05-13Markdown formatting for error explanations.Ricardo Martins-2/+2
2015-05-13Auto merge of #25024 - nrc:mulit-decor, r=sfacklerbors-2/+4
2015-05-13Merge branch 'master' into mulit-decorNick Cameron-234/+259
2015-05-13Fix binder skippingNick Cameron-5/+26
2015-05-13RebasingNick Cameron-7/+6
2015-05-13Fix a bunch of bugsNick Cameron-2/+1
* segfault due to not copying drop flag when coercing * fat pointer casts * segfault due to not checking drop flag properly * debuginfo for DST smart pointers * unreachable code in drop glue
2015-05-13eddyb's changes for DST coercionsNick Cameron-34/+388
+ lots of rebasing
2015-05-12Create a FreshFloatTy separate from FreshIntTyAriel Ben-Yehuda-11/+16
There is no subtyping relationship between the types (or their non-freshened variants), so they can not be merged. Fixes #22645 Fixes #24352 Fixes #23825 Should fix #25235 (no test in issue). Should fix #19976 (test is outdated).
2015-05-12Rollup merge of #25331 - michaelsproul:err-idx-doc-link, r=ManishearthManish Goregaokar-2/+2
At the moment, http://doc.rust-lang.org/error-index.html isn't linked to from anywhere (except Reddit). This should allow search engines to find error codes! I also capitalised "The Standard Library" and neatened a few bits of grammar. Also fixed: `#[main]` inside one of the error descriptions.
2015-05-12Add a link to the error index to the main doc page.Michael Sproul-2/+2
I also capitalised "The Standard Library" and neatened a few bits of grammar. Also fixed: `#[main]` inside one of the error descriptions.
2015-05-12Auto merge of #25323 - eddyb:coherent-coherence, r=pnkfelixbors-159/+142
The loop to load all the known impls from external crates seems to have been used because `ty::populate_implementations_for_trait_if_necessary` wasn't doing its job, and solely relying on it resulted in loading only impls in the same crate as the trait. Coherence for `librustc` was reduced from 18.310s to 0.610s, from stage1 to stage2. Interestingly, type checking also went from 46.232s to 42.003s, though that could be noise or unrelated improvements. On a smaller scale, `fn main() {}` now spends 0.003s in coherence instead of 0.368s, which fixes #22068. It also peaks at only 1.2MB, instead of 16MB of heap usage.
2015-05-12Auto merge of #23424 - arielb1:ambiguous-project, r=nikomatsakisbors-67/+103
r? @nikomatsakis
2015-05-12rustc_typeck: remove the "preload all impls ever" workaround in coherence.Eduard Burtescu-19/+0
2015-05-12Fix ty::populate_implementations_for_trait_if_necessary to load the trait's ↵Eduard Burtescu-17/+54
impls from all the crates.
2015-05-12rustc: rename ty::populate_implementations_for_type_if_necessary to make it ↵Eduard Burtescu-40/+19
clear that it only populates inherent impls.
2015-05-12rustc::metadata: use u64 for DefId's instead of strings.Eduard Burtescu-85/+71
2015-05-12Merge branch 'master' intoNick Cameron-277/+677
2015-05-11Markdown formatting for error explanations.Michael Sproul-0/+6
2015-05-11Auto merge of #25085 - carols10cents:remove-old-tilde, r=steveklabnikbors-6/+6
There were still some mentions of `~[T]` and `~T`, mostly in comments and debugging statements. I tried to do my best to preserve meaning, but I might have gotten some wrong-- I'm happy to fix anything :)
2015-05-10Rollup merge of #25261 - nham:obsolete_assoc_space_comment, r=alexcrichtonManish Goregaokar-1/+0
This was added in d2f8074 along with the AssocSpace stuff. The AssocSpace stuff was then removed in de8e0ae, except it seems the comment here was missed.
2015-05-09Remove obsolete comment in rustc::middle::subst.Nick Hamann-1/+0
This was added in d2f8074 along with the AssocSpace stuff. The AssocSpace stuff was then removed in de8e0ae, except the comment was missed it seems.
2015-05-09Add long diagnostic for E0137Nick Hamann-1/+6
2015-05-09Auto merge of #24728 - GuillaumeGomez:type-mismatch, r=pnkfelixbors-1/+136
Part of #24407.
2015-05-09Use of @pnkfelix code and fix typosGuillaume Gomez-1/+136
2015-05-09Squeeze the last bits of `task`s in documentation in favor of `thread`Barosl Lee-2/+2
An automated script was run against the `.rs` and `.md` files, subsituting every occurrence of `task` with `thread`. In the `.rs` files, only the texts in the comment blocks were affected.
2015-05-07Auto merge of #25123 - arielb1:self-inhibiting-error, r=nikomatsakisbors-3/+12
Fix #25076. r? @nikomatsakis
2015-05-07Select projections over impls in case of ambiguity. Fixes #23336.Ariel Ben-Yehuda-67/+103
2015-05-07Rollup merge of #25138 - tshepang:typos, r=sanxiynSteve Klabnik-3/+3
2015-05-07Rollup merge of #24966 - ruud-v-a:explain, r=pnkfelixSteve Klabnik-2/+69
The error message was misleading, so I adjusted it, and I also added the long diagnostics for this error (resolves one point in #24407). I was unsure about how to phrase the error message. Is “generic parameter binding” the correct term for this?
2015-05-07Rollup merge of #24576 - cactorium:errorcodes, r=pnkfelixSteve Klabnik-3/+55
For https://github.com/rust-lang/rust/issues/24407
2015-05-07Auto merge of #24964 - tamird:cleanup-bitflags, r=alexcrichtonbors-10/+8
Depends on #24921. r? @alexcrichton
2015-05-06improve commentAriel Ben-Yehuda-2/+4
2015-05-06Fix #25076Ariel Ben-Yehuda-3/+10
2015-05-06Reword with pnkfelix's suggestionKelvin Ly-12/+14
2015-05-05Use `empty()` instead of a special constTamir Duberstein-10/+8
2015-05-06fix typos caught by codespellTshepang Lekhonkhobe-3/+3
2015-05-06Auto merge of #25134 - alexcrichton:fix-issue-25072-for-realsies, r=brsonbors-3/+47
Turns out that a verbatim path was leaking through to gcc via the PATH environment variable (pointing to the bundled gcc provided by the main distribution) which was wreaking havoc when gcc itself was run. The fix here is to just stop passing verbatim paths down by adding more liberal uses of `fix_windows_verbatim_for_gcc`. Closes #25072
2015-05-05rustc: Fix more verbatim paths leaking to gccAlex Crichton-3/+47
Turns out that a verbatim path was leaking through to gcc via the PATH environment variable (pointing to the bundled gcc provided by the main distribution) which was wreaking havoc when gcc itself was run. The fix here is to just stop passing verbatim paths down by adding more liberal uses of `fix_windows_verbatim_for_gcc`. Closes #25072
2015-05-05Markdown edits for diagnostic errors.Michael Sproul-22/+26
2015-05-04Changing Vec to Box<[T]>Carol Nichols-1/+1
2015-05-04Fix spelling errors in documentation.Joseph Crail-2/+2
2015-05-03Update old uses of ~ in comments and debugging statementsCarol Nichols-6/+6
2015-05-01Auto merge of #24778 - nagisa:managed-removal, r=huonwbors-23/+1
Leftovers from @-pointer times, I guess.
2015-05-01Auto merge of #24965 - arielb1:instant-reject, r=nikomatsakisbors-197/+276
This uses a (per-trait) hash-table to separate impls from different TraitDefs, and makes coherence go so much quicker. I will post performance numbers tomorrow. This is still WIP, as when there's an overlap error, impls can get printed in the wrong order, which causes a few issues. Should I pick the local impl with the smallest NodeId to print? Could you take a look at this @nikomatsakis?
2015-05-01Remove ManagedSimonas Kazlauskas-23/+1
Leftovers from @-pointer times.