about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2016-05-18Auto merge of #33710 - Manishearth:rollup, r=Manishearthbors-24/+55
Rollup of 5 pull requests - Successful merges: #33656, #33666, #33673, #33675, #33695 - Failed merges:
2016-05-18Fix bug in macro expression spansJeffrey Seyfried-28/+24
2016-05-18Add new error code testsggomez-0/+121
2016-05-18Rollup merge of #33695 - nikomatsakis:spezializes-cache, r=aturonManish Goregaokar-2/+34
introduce a specializes cache This query is frequently used during trait selection and caching the result can be a reasonable performance win. The one case I examined thus far was the mrusty package (v0.5.1), where I saw an improvement in "typeck item bodies" from ~8.3s to ~1.9s. r? @aturon
2016-05-18Rollup merge of #33675 - apasel422:issue-33662, r=pnkfelixManish Goregaokar-0/+1
Add missing code fence to `diagnostics.rs` Closes #33662
2016-05-18Rollup merge of #33673 - GuillaumeGomez:fix-selected-item-style, r=steveklabnikManish Goregaokar-0/+4
Fix selected item background style r? @steveklabnik
2016-05-18Rollup merge of #33666 - xen0n:no-more-nest-levels, r=nikomatsakisManish Goregaokar-21/+5
syntax_ext: format: nest_level's are no more Just noticed this while working on #33642 and here's a quick fix, shouldn't touch anything else. It's some historic code indeed...
2016-05-18Rollup merge of #33656 - GuillaumeGomez:lifetime_bound, r=steveklabnikManish Goregaokar-1/+11
Add lifetime's bounds in doc generation Fixes #33653 ![screenshot from 2016-05-15 15 30 38](https://cloud.githubusercontent.com/assets/3050060/15274445/024dbd5c-1ab2-11e6-9387-274301a05627.png) r? @steveklabnik
2016-05-18Auto merge of #33654 - petrochenkov:hirident, r=nrcbors-239/+160
Remove hir::Ident Now when name resolution is done on AST, `hir::Ident` is no longer necessary. See https://github.com/rust-lang/rust/pull/30145 for more details. r? @nrc
2016-05-18Only print parameters with elided lifetimes in elision error messages.Nick Hamann-8/+53
When displaying the function parameters for a lifetime elision error message, this changes it to first filter out the parameters that don't have elided lifetimes. Fixes #30255.
2016-05-17Add descriptive error explanation for E0502Timothy McRoy-1/+27
2016-05-17Auto merge of #33137 - ↵bors-233/+760
nikomatsakis:issue-32330-lbr-in-return-type-warning-2, r=aturon Warnings for issue #32330 This is an extension of the previous PR that issues warnings in more situations than before. It does not handle *all* cases of #32330 but I believe it issues warnings for all cases I've seen in practice. Before merging I'd like to address: - open a good issue explaining the problem and how to fix it (I have a [draft writeup][]) - work on the error message, which I think is not as clear as it could/should be (suggestions welcome) r? @aturon [draft writeup]: https://gist.github.com/nikomatsakis/631ec8b4af9a18b5d062d9d9b7d3d967
2016-05-17fix stale method namesNiko Matsakis-2/+2
2016-05-17warn for where/return-types that reference regionsNiko Matsakis-15/+449
This is a step towards fixing #32330. The full fix would be a breaking change, so we begin by issuing warnings for scenarios that will break.
2016-05-18Resolved rustdoc crash (#33678) by aborting instead of unwrapping.User-4/+3
Removed Option use and comment to match.
2016-05-17std: Update libc submoduleAlex Crichton-0/+0
Brings in a fix where `-lutil` is no longer passed for musl targets, lifting the need for a musl toolchain to be installed again. Closes #33608
2016-05-17Add regression tests for error message when using enum variant as a typeNick Hamann-0/+30
I'm guessing these were actually fixed with PR #27085. Closes #21225 Closes #19197
2016-05-17fix -Z treat-err-as-bugNiko Matsakis-30/+30
2016-05-17refactor: use `select` inside of a probeNiko Matsakis-188/+281
We ought not to be affecting inference state when assembling candidates, so invoke select inside of a probe.
2016-05-17Auto merge of #33665 - golddranks:thread-park-add-big-picture-explanation, ↵bors-1/+3
r=aturon Added a big-picture explanation for thread::park() & co. As I said in https://www.reddit.com/r/rust/comments/4ihvv1/hey_rust_programmers_got_a_question_ask_here/d372s4i, the current explanation of the `park()` and `unpark()` is a bit unclear. It says that they're used for blocking, but then it goes on explaining the semantics in detail, leaving the bigger picture a bit unclear. I added a short high-level explanation that explains how the functions are used. I also exposed the full paths (`thread::park()` and `thread::Thread::unpark()`), because `unpark()`, being a method, is not directly visible at the module level.
2016-05-17introduce a specializes cacheNiko Matsakis-2/+34
This query is frequently used during trait selection and caching the result can be a reasonable performance win.
2016-05-17Fix for #33559Jonathan Turner-1/+2
2016-05-17Fix invalid enum declarationGuillaume Gomez-4/+4
2016-05-17Preserve span when lowering ExprKind::ParenSeo Sanghyeon-1/+2
2016-05-17Improve a few errors and fix #33366Jonathan Turner-58/+68
2016-05-17De-emph minimized spans, add better debugging outputJonathan Turner-17/+37
2016-05-17Print secondary labels as notes in old skool modeJonathan Turner-0/+26
2016-05-17`mir::dataflow::sanity_check`: removed hackish `tmp = val` propagation code.Felix S. Klock II-35/+8
(it was an artifact of an earlier design of the `rustc_peek` API, but its totally unnecessary now.)
2016-05-17Escape asterix in markdown file to side-step it being interpreted as emphasis.Felix S. Klock II-1/+1
2016-05-17Fix comments in `mir::dataflow::sanity_check`.Felix S. Klock II-19/+18
2016-05-16Auto merge of #33651 - Nercury:update-i686-android-target-to-match-abi, ↵bors-1/+5
r=alexcrichton Update i686-linux-android features to match android x86 ABI. Based on [android's official x86 ABI info](http://developer.android.com/ndk/guides/abis.html#x86), the x86 baseline CPU can be safely updated to `pentiumpro`, with the addition of `MMX`, `SSE`, `SSE2`, `SSE3`, `SSSE3` features. r? @alexcrichton
2016-05-16Auto merge of #33491 - arielb1:obligation-jungle, r=nikomatsakisbors-1038/+794
Replace the obligation forest with a graph In the presence of caching, arbitrary nodes in the obligation forest can be merged, which makes it a general graph. Handle it as such, using cycle-detection algorithms in the processing. I should do performance measurements sometime. This was pretty much written as a proof-of-concept. Please help me write this in a less-ugly way. I should also add comments explaining what is going on. r? @nikomatsakis
2016-05-17Deprecate {f32,f64}::abs_sub.Huon Wilson-46/+24
The abs_sub name is misleading: the function actually computes the positive difference (`fdim` in C), not the `(x - y).abs()` that *many* people expect from the name. This function can be replaced with just `(x - y).max(0.0)`, mirroring the `abs` version, but this behaves differently with NAN: `NAN.max(0.0) == 0.0`, while `NAN.positive_diff(0.0) == NAN`. People who absolutely need that behaviour can use the C function directly and/or talk to the libs team (we haven't encountered a concrete use-case for this functionality). Closes #30315.
2016-05-16Auto merge of #33588 - nikomatsakis:compiletest-ui, r=acrichtobors-1/+341
add UI testing framework This adds a framework for capturing and tracking the precise output of rustc, which allows us to check all manner of minor details with the output. It's pretty strict right now -- the output must match almost exactly -- and hence maybe a bit too strict. But I figure we can add wildcards or whatever later. There is also a script intended to make updating the references easy, though the script could make things a *bit* easier (in particular, it'd be nice if it would find the build directory for you automatically). One thing I was wondering about is the best way to test colors. Since windows doesn't embed those in the output stream, this test framework can't test colors on windows -- so I figure we can just write tests that are ignored on windows and which pass `--color=always` or whatever to rustc. cc @jonathandturner r? @alexcrichton
2016-05-16Add missing code fence to `diagnostics.rs`Andrew Paseltiner-0/+1
Closes #33662
2016-05-16pacify the mercilous tidyNiko Matsakis-2/+22
2016-05-16Fix selected item background styleGuillaume Gomez-0/+4
2016-05-16change on_unimplented logicAriel Ben-Yehuda-5/+14
2016-05-16Fix rebaseVadim Petrochenkov-4/+4
2016-05-16lowering: Rename identifiers only when necessaryVadim Petrochenkov-12/+36
Do not rename invalid identifiers, they stop being invalid after renaming
2016-05-16Remove hir::IdentVadim Petrochenkov-226/+123
2016-05-16Auto merge of #33500 - Nercury:update-aarch64-android-target-to-match-abi, ↵bors-3/+7
r=alexcrichton Update aarch64-linux-android target to match android abi. - Changed `target_env` to "gnu" to empty "" for all android targets because it does not matter for android. - The PR #33048 added "max_atomic_width" for arm-android but missed recently added armv7-android. Add it there too. - Added features `+neon,+fp-armv8` because they [must exist on `aarch64` android](http://developer.android.com/ndk/guides/cpu-features.html). - Update libc to include https://github.com/rust-lang/libc/pull/282 so that rust's std lib works on android's aarch64 (the main issue there was incorrect structure alignment on 64-bit arm). r? @alexcrichton
2016-05-16Auto merge of #33429 - ranma42:fix-x87-parsing, r=alexcrichtonbors-10/+81
Fix fast path of float parsing on x87 The fast path of the float parser relies on the rounding to happen exactly and directly to the correct number of bits. On x87, instead, double rounding would occour as the FPU stack defaults to 80 bits of precision. This can be fixed by setting the precision of the FPU stack before performing the int to float conversion. This can be achieved by changing the value of the x87 control word. This is a somewhat common operation that is in fact performed whenever a float needs to be truncated to an integer, but it is undesirable to add its overhead for code that does not rely on x87 for computations (i.e. on non-x86 architectures, or x86 architectures which perform FPU computations on using SSE). Fixes `num::dec2flt::fast_path_correct` (on x87).
2016-05-16core::intrinsics: fix typo noted during review.Felix S. Klock II-1/+1
2016-05-16Auto merge of #33663 - rphmeier:recover_rename, r=sfacklerbors-4/+4
rename a few occurrences of RecoverSafe in docs
2016-05-16Fix `asm!` blocksAndrea Canciani-2/+2
The `volatile` modifier was incorrectly written outside of the `asm!` blocks.
2016-05-16Cleanup documentationAndrea Canciani-31/+10
Remove irrelevant information (and instead provide pointer to reference documentation), replace ASCII-art table with the corresponding MarkDown one, and minor fixes.
2016-05-16Auto merge of #33331 - uasi:diag-e0038-typo, r=GuillaumeGomezbors-1/+1
diagnostics: Fix minor typo in E0038
2016-05-16`DefinitelyInitializedLvals` dataflow op (goal: move away from ↵Felix S. Klock II-10/+220
`MaybeUninitializedLvals`)
2016-05-16Little unit tests for MIR dataflow analysis.Felix S. Klock II-0/+220
These use new `rustc_peek` (whose semantics is driven by attribute attached to fn).