- 07 9月, 2017 1 次提交
-
-
由 Alex Crichton 提交于
-
- 06 9月, 2017 1 次提交
-
-
由 Alex Crichton 提交于
-
- 05 9月, 2017 29 次提交
-
-
由 Alex Crichton 提交于
Previously a `Symbol` was stored there, but this ended up causing hash collisions in situations that otherwise shouldn't have a hash collision. Only the symbol's string value was hashed, but it was possible for distinct symbols to have the same string value, fooling various calcuations into thinking that these paths *didn't* need disambiguating data when in fact they did! By storing `InternedString` instead we're hopefully triggering all the exising logic to disambiguate paths with same-name `Symbol` but actually distinct locations.
-
由 Alex Crichton 提交于
This commit primarily removes the `stability` field from `TyCtxt` as well as its internal mutable state, instead using a query to build the stability index as well as primarily using queries for other related lookups. Like previous commits the calculation of the stability index is wrapped in a `with_ignore` node to avoid regressing the current tests, and otherwise this commit also introduces #44232 but somewhat intentionally so.
-
由 Alex Crichton 提交于
Should hopefully more accurately reflect what's happening! This commit also removes the cache in the cstore implementation as it's already cached through the query infrastructure.
-
由 Alex Crichton 提交于
This commit makes the `maybe_unused_extern_crates` and `maybe_unused_trait_imports` fields of `TyCtxt` private and ensures that they're accessed with queries so the values and results can be tracked.
-
由 Alex Crichton 提交于
This removes a public mutable (but not actually used mutably) field from the `TyCtxt`, moving it over to a query to ensure that it's tracked over time.
-
由 Alex Crichton 提交于
This commit removes the `use_crates` and `used_crate_source` methods in favor of a mix of queries and helper methods being used now instead.
-
由 Alex Crichton 提交于
These are only called pre-TyCtxt (e.g. lowering/resolve), so make it explicit in the name that they're untracked and therefore unsuitable to called elsewhere.
-
由 Alex Crichton 提交于
Turns out it was basically already a query if you squinted hard enough!
-
由 Alex Crichton 提交于
This commit migrates the `item_body` method on `CrateStore` to a query instead to enable better tracking of dependencies and whatnot.
-
由 Alex Crichton 提交于
Given the previous commit, these are now trivially representable as queries!
-
由 Alex Crichton 提交于
This commit moves the calculation of the `LanguageItems` structure into a query rather than being calculated before the `TyCtxt` exists, with the eventual end goal of removing some `CrateStore` methods.
-
由 Alex Crichton 提交于
The main use of `CrateStore` *before* the `TyCtxt` is created is during resolution, but we want to be sure that any methods used before resolution are not used after the `TyCtxt` is created. This commit starts moving the methods used by resolve to all be named `{name}_untracked` where the rest of the compiler uses just `{name}` as a query. During this transition a number of new queries were added to account for post-resolve usage of these methods.
-
由 Alex Crichton 提交于
This commit makes the `named_region_map` field of `GlobalCtxt` private by encapsulating the fields behind new queries, and the new queries are also targeted at particular `HirId` nodes instead of accessing the entire map.
-
由 Alex Crichton 提交于
This commit started by moving methods from `CrateStore` to queries, but it ended up necessitating some deeper refactorings to move more items in general to queries. Before this commit the *resolver* would walk over the AST and process foreign modules (`extern { .. }` blocks) and collect `#[link]` annotations. It would then also process the command line `-l` directives and such. This information was then stored as precalculated lists in the `CrateStore` object for iterating over later. After this, commit, however, this pass no longer happens during resolution but now instead happens through queries. A query for the linked libraries of a crate will crawl the crate for `extern` blocks and then process the linkage annotations at that time.
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
While we're at it, make it two separate queries so one's for rustdoc and one's for the compiler, hopefully being a bit more targeted.
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
These should hopefully get fixed with red/green, but until that time alas!
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
-
由 Alex Crichton 提交于
This comit applies the following changes: * Deletes the `is_allocator` query as it's no longer used * Moves the `is_sanitizer_runtime` method to a query * Moves the `is_profiler_runtime` method to a query * Moves the `panic_strategy` method to a query * Moves the `is_no_builtins` method to a query * Deletes the cstore method of `is_compiler_builtins`. The query was added in #42588 but the `CrateStore` method was not deleted A good bit of these methods were used late in linking during trans so a new dedicated structure was created to ship a calculated form of this information over to the linker rather than having to ship the whole of `TyCtxt` over to linking.
-
由 bors 提交于
[MIR] Restrict ProjectionElem::Index and Storage{Live,Dead} to Local. (see #44285) r? @nikomatsakis
-
由 bors 提交于
Produce expansion info for more builtin macros r? @jseyfried fixes #43268
-
由 bors 提交于
Compact display of static lib dependencies Fixes #33173 Instead of displaying one dependency per line, I've changed the format to display them all in one line. As a bonus they're in format of linker flags (`-lfoo`), so the output can be copy&pasted if one is actually going to link as suggested.
-
- 04 9月, 2017 9 次提交
-
-
由 bors 提交于
expand on using rustup custom toolchains in CONTRIBUTING.md fixes #42484 Should i include more notes about how to use a local build *without* rustup? It can kinda feel like a cop-out otherwise. Other means that come to mind are setting `$RUSTC` directly and fully installing it. cc @rust-lang/docs
-
由 Oliver Schneider 提交于
-
由 bors 提交于
Resync clippy to v0.0.156 None
-
由 Eduard-Mihai Burtescu 提交于
-
由 bors 提交于
rustbuild: Remove invalid doctest from bootstrap.py
-
由 bors 提交于
add test for not optimized `pow` with constant power Closes #34947
-
由 Manish Goregaokar 提交于
-
由 bors 提交于
stabilize mem::discriminant (closes #24263)
-
由 bors 提交于
rustc: Flag {i,u}128 as unsafe for FFI These don't appear to have a stable ABI as noted in #41799 and the work in compiler-builtins definitely seems to be confirming it!
-