- 03 8月, 2020 14 次提交
-
-
由 Nicholas Nethercote 提交于
We store an `ImplicitCtxt` pointer in a thread-local value (TLV). This allows implicit access to a `GlobalCtxt` and some other things. We also store a `GlobalCtxt` pointer in `GCX_PTR`. This is always the same `GlobalCtxt` as the one within the `ImplicitCtxt` pointer in TLV. `GCX_PTR` is only used in the parallel compiler's `handle_deadlock()` function. This commit does the following. - It removes `GCX_PTR`. - It also adds `ImplicitCtxt::new()`, which constructs an `ImplicitCtxt` from a `GlobalCtxt`. `ImplicitCtxt::new()` + `tls::enter_context()` is now equivalent to the old `tls::enter_global()`. - Makes `tls::get_tlv()` public for the parallel compiler, because it's now used in `handle_deadlock()`.
-
由 bors 提交于
Introduce NonterminalKind for more type-safe mbe parsing It encapsulate the (part of) the interface between the parser and macro by example (macro_rules) parser. The second bit is somewhat more general `parse_ast_fragment`, which is the reason why we keep some `parse_xxx` functions as public.
-
由 bors 提交于
Fix ICEs with `@ ..` binding This reverts #74557 and introduces an alternative fix while ensuring that #74954 is not broken. The diagnostics are verbose though, it fixes three related issues. cc #74954, #74539, and #74702
-
由 bors 提交于
Rollup of 10 pull requests Successful merges: - #74686 (BTreeMap: remove into_slices and its unsafe block) - #74762 (BTreeMap::drain_filter should not touch the root during iteration) - #74781 (Clean up E0733 explanation) - #74874 (BTreeMap: define forget_type only when relevant) - #74974 (Make tests faster in Miri) - #75010 (Update elasticlunr-rs and ammonia transitive deps) - #75041 (Replaced log with tracing crate) - #75044 (Clean up E0744 explanation) - #75054 (Rename rustc_middle::cstore::DepKind to CrateDepKind) - #75057 (Avoid dumping rustc invocations to stdout) Failed merges: - #74827 (Move bulk of BTreeMap::insert method down to new method on handle) r? @ghost
-
由 Yuki Okushi 提交于
Avoid dumping rustc invocations to stdout These are quite long, usually, and in most cases not interesting. On smaller terminals they can take up more than a full page of output, hiding the error diagnostics emitted.
-
由 Yuki Okushi 提交于
Rename rustc_middle::cstore::DepKind to CrateDepKind It is ambiguous with DepGraph's own DepKind.
-
由 Yuki Okushi 提交于
Clean up E0744 explanation r? @Dylan-DPC
-
由 Yuki Okushi 提交于
Replaced log with tracing crate Issue #74747
-
由 Yuki Okushi 提交于
Update elasticlunr-rs and ammonia transitive deps This removes all dependencies on pre-1.0 proc-macro ecosystem crates (syn, quote, and proc-macro2)
-
由 Yuki Okushi 提交于
Make tests faster in Miri Reduce some test iteration counts in Miri.
-
由 Yuki Okushi 提交于
BTreeMap: define forget_type only when relevant Similar to `forget_node_type` for handles. No effect on generated code, apart maybe from the superfluous calls that might not have been optimized away. r? @Mark-Simulacrum
-
由 Yuki Okushi 提交于
Clean up E0733 explanation r? @Dylan-DPC
-
由 Yuki Okushi 提交于
BTreeMap::drain_filter should not touch the root during iteration Although Miri doesn't point it out, I believe there is undefined behaviour using `drain_filter` when draining the 11th-last element from a tree that was larger. When this happens, the last remaining child nodes are merged, the root becomes empty and is popped from the tree. That last step establishes a mutable reference to the node elected root and writes a pointer in `node::Root`, while iteration continues to visit the same node. This is mostly code from #74437, slightly adapted.
-
由 Yuki Okushi 提交于
BTreeMap: remove into_slices and its unsafe block A small tweak to make BTreeMap code shorter and less unsafe. r? @Mark-Simulacrum
-
- 02 8月, 2020 26 次提交
-
-
由 Mark Rousskov 提交于
These are quite long, usually, and in most cases not interesting. On smaller terminals they can take up more than a full page of output, hiding the error diagnostics emitted.
-
由 Camille GILLOT 提交于
-
由 bors 提交于
Add fallible AArch64 CI builder This adds the `aarch64-gnu` CI builder to the `auto-fallible` job, as a first step in the process of actually gating on it. r? @Mark-Simulacrum
-
由 bors 提交于
Deduplicate `::` -> `:` typo errors Deduplicate errors caused by the same type ascription typo, including ones suggested during parsing that would get reported again during resolve. Fix #70382.
-
由 Aleksey Kladov 提交于
Seems to be a fallout from rustfmt transition
-
由 Aleksey Kladov 提交于
This is more type safe and allows us to remove a few dead branches
-
由 Aleksey Kladov 提交于
It encapsulate the (part of) the interface between the parser and macro by example (macro_rules) parser. The second bit is somewhat more general `parse_ast_fragment`, which is the reason why we keep some `parse_xxx` functions as public.
-
由 Guillaume Gomez 提交于
-
由 Guillaume Gomez 提交于
-
由 bors 提交于
Fix std::fs::File::metadata permission on WASI target Previously `std::fs::File::metadata` on wasm32-wasi would call `fd_filestat_get` to get metadata associated with fd, but that fd is opened without RIGHTS_FD_FILESTAT_GET right, so it will failed on correctly implemented WASI environment. This change instead to add the missing rights when opening an fd.
-
由 bishtpawan 提交于
-
由 bors 提交于
bump libc version to 0.2.74
-
由 bishtpawan 提交于
-
由 bors 提交于
Move 'probably equal' methods to librustc_parse This is preparation for PR #73084
-
由 bors 提交于
report kind of deprecated item in message This is important for fields, which are incorrectly referred to as "items".
-
由 Aaron Hill 提交于
This removes all dependencies on pre-1.0 proc-macro ecosystem crates (syn, quote, and proc-macro2)
-
由 Aaron Hill 提交于
This is preparation for PR #73084
-
由 bors 提交于
Rollup of 5 pull requests Successful merges: - #74602 (Clarify the doc for MaybeUninit::zeroed on incorrect use) - #74720 (Clean up E0728 explanation) - #74992 (fix rustdoc generic param order) - #75015 (Add Vec::spare_capacity_mut) - #75022 (Use a slice pattern instead of rchunks_exact(_).next()) Failed merges: r? @ghost
-
由 Manish Goregaokar 提交于
Use a slice pattern instead of rchunks_exact(_).next() This is a minor cleanup, but trying a single-use `rchunks` iterator can be more directly matched with a slice pattern, `[.., a, b]`.
-
由 Manish Goregaokar 提交于
Add Vec::spare_capacity_mut Returns the remaining spare capacity of the vector as a slice of `MaybeUninit<T>`. As suggested by @sfackler in https://github.com/rust-lang/rust/pull/70967#issuecomment-612659006. r? @sfackler
-
由 Manish Goregaokar 提交于
fix rustdoc generic param order fixes #61292 r? @varkor cc @GuillaumeGomez
-
由 Manish Goregaokar 提交于
Clean up E0728 explanation r? @Dylan-DPC
-
由 Manish Goregaokar 提交于
Clarify the doc for MaybeUninit::zeroed on incorrect use Fixes #74343. @rustbot modify labels: C-enhancement, T-doc
-
由 bors 提交于
Stabilize Vec::leak as a method Closes https://github.com/rust-lang/rust/issues/62195 The signature is changed to a method rather than an associated function: ```diff -pub fn leak<'a>(vec: Vec<T>) -> &'a mut [T] +pub fn leak<'a>(self) -> &'a mut [T] ``` The reason for `Box::leak` not to be a method (`Deref` to an arbitrary `T` which might have its own, different `leak` method) does not apply.
-
由 Stein Somers 提交于
-
由 bors 提交于
Move from `log` to `tracing` The only visible change is that we now get timestamps in our logs: ``` Jul 24 18:41:01.065 TRACE rustc_mir::transform::const_prop: skipping replace of Rvalue::Use(const () because it is already a const Jul 24 18:41:01.065 TRACE rustc_mir::transform::const_prop: propagated into _2 Jul 24 18:41:01.065 TRACE rustc_mir::transform::const_prop: visit_constant: const () ``` This PR was explicitly designed to be as low-impact as possible. We can now move to using the name `tracing` insteads of `log` on a crate-by-crate basis and use any of the other tracing features where desirable. As far as I can tell this will allow tools to seamlessly keep working (since they are using `rustc_driver::init_log...`). This is the first half of step 1 of the accepted `tracing` MCP (https://github.com/rust-lang/compiler-team/issues/331)
-