about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2017-11-14rustc: remove unused MirSource::GeneratorDrop.Eduard-Mihai Burtescu-12/+2
2017-11-14rustc_mir: drive passes directly with a macro.Eduard-Mihai Burtescu-220/+108
2017-11-14rustc: move the MIR pass infrastructure and list to rustc_mir.Eduard-Mihai Burtescu-215/+201
2017-11-14Auto merge of #45909 - sinkuu:issue-45885, r=arielb1bors-5/+71
Normalize inlined function in MIR inliner Fixes #45885 r? @arielb1
2017-11-13Auto merge of #45436 - zilbuz:issue-44837, r=nikomatsakisbors-25/+260
MIR-borrowck: add permisson checks to `fn access_lvalue` WIP : Some FIXME left and some broken tests. Fix #44837
2017-11-13Auto merge of #45903 - nrc:rustfmt-dist, r=alexcrichtonbors-1/+129
Distribute Rustfmt r? @alexcrichton
2017-11-13mir-borrowck: Test for `check_access_permissions()`Basile Desloges-1/+82
2017-11-13mir-borrowck: Check access permissions in `access_lvalue()`Basile Desloges-2/+154
2017-11-13mir-borrowck: Move `is_static_mut()` to `ty/utils.rs`Basile Desloges-22/+24
2017-11-13Auto merge of #45890 - arielb1:self-first, r=eddybbors-9/+56
check::method - unify receivers before normalizing method signatures Normalizing method signatures can unify inference variables, which can cause receiver unification to fail. Unify the receivers first to avoid that. Fixes #36701. Fixes #45801. Fixes #45855. r? @eddyb beta-nominating because #43880 made this ICE happen in more cases (the code in that issue ICEs post-#43880 only, but the unit test here ICEs on all versions).
2017-11-13Auto merge of #45824 - dotdash:stack_pop, r=alexcrichtonbors-1/+35
Update LLVM to fix miscompiles with -Copt-level=z on Windows Fixes #45034
2017-11-13Auto merge of #45810 - SimonSapin:ac-dc, r=aturonbors-4/+6
Disable LLVM assertions on Nightly, enable them in "alt" builds. Per IRC discussion https://mozilla.logbot.info/rust-infra/20171106#c13812170-c13812204 Background: https://internals.rust-lang.org/t/disabling-llvm-assertions-in-nightly-builds/5388/14
2017-11-13Auto merge of #45956 - kennytm:rollup, r=kennytmbors-84/+420
Rollup of 9 pull requests - Successful merges: #45828, #45892, #45893, #45914, #45917, #45927, #45933, #45952, #45954 - Failed merges:
2017-11-13Rollup merge of #45954 - udoprog:fix-style, r=kennytmkennytm-1/+1
Fix style in interner test
2017-11-13Rollup merge of #45952 - zackmdavis:singular_projection, r=estebankkennytm-9/+54
deduplicate projection error (E0271) messages The `ErrorId` variant takes a u16 so that `DiagnosticMessageId` can retain its `Copy` status (the present author's first choice having been the "EXXX" code as a string). The duplicated "type mismatch resolving `{}`" literal is unfortunate, but the `struct_span_err!` macro (which we want to mark that error code as used) is fussy about taking a literal, and the one-time-diagnostics set needs an owned string. This is concerning #33941 and probably #45805! r? @estebank
2017-11-13Rollup merge of #45933 - shanavas786:refactor-filter, r=alexcrichtonkennytm-8/+4
Refactor Option::filter method
2017-11-13Rollup merge of #45927 - sinkuu:mir-borrowck-closure, r=estebankkennytm-9/+303
MIR-borrowck: fix diagnostics for closures Emit notes for captured variables in the same manner as AST borrowck. ``` error[E0499]: cannot borrow `x` as mutable more than once at a time (Ast) --> $DIR/borrowck-closures-two-mut.rs:24:24 | 23 | let c1 = to_fn_mut(|| x = 4); | -- - previous borrow occurs due to use of `x` in closure | | | first mutable borrow occurs here 24 | let c2 = to_fn_mut(|| x = 5); //~ ERROR cannot borrow `x` as mutable more than once | ^^ - borrow occurs due to use of `x` in closure | | | second mutable borrow occurs here 25 | } | - first borrow ends here error[E0499]: cannot borrow `x` as mutable more than once at a time (Mir) --> $DIR/borrowck-closures-two-mut.rs:24:24 | 23 | let c1 = to_fn_mut(|| x = 4); | -- - previous borrow occurs due to use of `x` in closure | | | first mutable borrow occurs here 24 | let c2 = to_fn_mut(|| x = 5); //~ ERROR cannot borrow `x` as mutable more than once | ^^ - borrow occurs due to use of `x` in closure | | | second mutable borrow occurs here 25 | } | - first borrow ends here ``` Fixes #45362.
2017-11-13Rollup merge of #45917 - ollie27:compiletest_stamp, r=alexcrichtonkennytm-0/+5
compiletest: Fix a couple of test re-run issues * Re-run rustdoc tests if rustdoc or htmldocck.py was updated. * Put stamp files in the correct subdirectories to avoid clashes when the file names match but the subdirectory doesn't.
2017-11-13Rollup merge of #45914 - michaelwoerister:fix-test-header-parsing, ↵kennytm-10/+11
r=alexcrichton Fix test case header parsing code in presence of multiple revisions. The previous code would parse the TestProps, and then parse them again with a revision set, adding some elements (like aux_builds) a second time to the existing TestProps.
2017-11-13Rollup merge of #45893 - redox-os:futex_timeout, r=alexcrichtonkennytm-22/+38
Redox: Use futex timeout to implement CondVar::wait_timeout `CondVar::wait_timeout` is implemented by supplying a `TimeSpec` pointer to `futex`. In addition, all calls to `unimplemented!()` have been removed from the Redox `sys` module. Related to https://github.com/rust-lang/rust/pull/45892
2017-11-13Rollup merge of #45892 - redox-os:is_absolute_fix, r=alexcrichtonkennytm-4/+4
Redox: Return true from Path::is_absolute if a Path contains root or a scheme In Redox, different subsystems have different filesystem paths. However, the majority of applications using the `Path::is_absolute` function really only want to know if a path is absolute from the perspective of the scheme it is currently running in, usually `file:`. This makes both `file:/` and `/` return `true` from `Path::is_absolute`, meaning that most code does not have to check if it is running on Redox. Code that wants to know if a path contains a scheme can implement such a check on its own. Related to https://github.com/rust-lang/rust/pull/45893
2017-11-13Rollup merge of #45828 - pornel:printoption, r=nrckennytm-21/+0
Remove deprecated message Follow up of #43067
2017-11-13Fix style in interner testJohn-John Tedro-1/+1
2017-11-13Auto merge of #45673 - GuillaumeGomez:rustdoc-type-search-generic, ↵bors-131/+307
r=QuietMisdreavus Search over generic types in docs This is what I was talking about @QuietMisdreavus. Now we have generics. Waiting for #45617 to get merged.
2017-11-12deduplicate projection error (E0271) messagesZack M. Davis-9/+54
The `ErrorId` variant takes a u16 so that `DiagnosticMessageId` can retain its `Copy` status (the present author's first choice having been the "EXXX" code as a string). The duplicated "type mismatch resolving `{}`" literal is unfortunate, but the `struct_span_err!` macro (which we want to mark that error code as used) is fussy about taking a literal, and the one-time-diagnostics set needs an owned string. This is concerning #33941 and probably #45805!
2017-11-13Fix commentsShotaro Yamada-2/+4
2017-11-13Auto merge of #45949 - Mark-Simulacrum:cargo-next, r=alexcrichtonbors-0/+0
Bump cargo to master Includes a few bugfixes, and updates the Cargo book. Critically includes https://github.com/rust-lang/cargo/pull/4716. This unblocks (in theory) crater runs.
2017-11-12Auto merge of #45623 - mneumann:dragonfly-ci, r=alexcrichtonbors-0/+179
Add ci for DragonFly
2017-11-12Bump cargo to master.Mark Simulacrum-0/+0
Includes a few bugfixes, and updates the Cargo book. Critically includes https://github.com/rust-lang/cargo/pull/4716. This unblocks (in theory) crater runs.
2017-11-13review changesNick Cameron-5/+1
2017-11-13Distribute RustfmtNick Cameron-1/+133
2017-11-12Auto merge of #44167 - cengizIO:master, r=nikomatsakisbors-131/+99
Improve SubSupConflict with a named and an anonymous lifetime parameter #42701 Hello! This fixes #42701. ## UPDATE 01 Tests are producing different results between different env builds. This inconsistency might take a long time to investigate and fix. So, be patient ## UPDATE 02 Changed an `FxHashMap` with a `BTreeMap`. Inconsistency seems to be resolved for now.
2017-11-12Add "As parameters" items as wellGuillaume Gomez-22/+25
2017-11-12Improve result outputGuillaume Gomez-5/+8
2017-11-12Big JS optimizationGuillaume Gomez-15/+11
2017-11-12Add elements count in tab search titleGuillaume Gomez-6/+13
2017-11-12JS big updatesGuillaume Gomez-109/+254
2017-11-12Generate generics on search-indexGuillaume Gomez-7/+29
2017-11-12Auto merge of #45908 - alexcrichton:disable-thinlto-libtest, r=Mark-Simulacrumbors-0/+1
rustbuild: Disable ThinLTO for libtest Right now ThinLTO is generating bad dwarf which is tracked by #45511, but this is causing issues on OSX (#45768) where `dsymutil` is segfaulting and failing to produce output. Closes #45768
2017-11-12Add ci for DragonFly (disabled for now)Michael Neumann-0/+179
2017-11-12update project-fn-test-invariant testCengiz Can-2/+2
2017-11-12remove trailing whitespace from comment blockCengiz Can-4/+4
2017-11-12add reasons of using BTreeMap to a commentCengiz Can-0/+6
2017-11-12update failing E0621 testsCengiz Can-6/+6
2017-11-12use BTreeMap for region constraintsCengiz Can-12/+14
2017-11-12Update fn-ret-invariant test assertionCengiz Can-2/+1
2017-11-12Improve SubSupConflict case with one named, one anonymous lifetime parameter ↵Cengiz Can-115/+76
#42701
2017-11-12Auto merge of #45753 - sinkuu:mir_copyprop_arg, r=arielb1bors-5/+183
Fix MIR CopyPropagation errneously propagating assignments to function args Compiling this code with MIR CopyPropagation activated will result in printing `5`, because CopyProp errneously propagates the assignment of `5` to all `x`: ```rust fn bar(mut x: u8) { println!("{}", x); x = 5; } fn main() { bar(123); } ``` If a local is propagated, it will result in an ICE at trans due to an use-before-def: ```rust fn dummy(x: u8) -> u8 { x } fn foo(mut x: u8) { x = dummy(x); // this will assign a local to `x` } ``` Currently CopyProp conservatively gives up if there are multiple assignments to a local, but it is not took into account that arguments are already assigned from the beginning. This PR fixes the problem by preventing propagation of assignments to function arguments.
2017-11-12Update LLVM to fix miscompiles with -Copt-level=z on WindowsBjörn Steinbrink-1/+35
Fixes #45034
2017-11-12Do not silence output in run-make/sanitizer-memorySimon Sapin-2/+4