about summary refs log tree commit diff
path: root/src/librustc_metadata/dependency_format.rs
AgeCommit message (Collapse)AuthorLines
2020-08-30mv compiler to compiler/mark-410/+0
2020-08-15replaced log with tracingGurpreet Singh-3/+3
2020-08-02Rename rustc_middle::cstore::DepKind to DependencyKind.Camille GILLOT-3/+3
2020-05-22Use `OnceCell` instead of `Once`Dylan MacKenzie-2/+1
2020-05-02cleanup: `config::CrateType` -> `CrateType`Vadim Petrochenkov-15/+11
2020-03-30rustc -> rustc_middle part 3 (rustfmt)Mazdak Farrokhzad-2/+2
2020-03-30rustc -> rustc_middle part 2Mazdak Farrokhzad-4/+4
2020-03-18Rollup merge of #69920 - Centril:hir-cleanup, r=ZoxcMazdak Farrokhzad-1/+1
Remove some imports to the rustc crate - When we have `NestedVisitorMap::None`, we use `type Map = dyn intravisit::Map<'v>;` instead of the actual map. This doesn't actually result in dynamic dispatch (in the future we may want to use an associated type default to simplify the code). - Use `rustc_session::` imports instead of `rustc::{session, lint}`. r? @Zoxc
2020-03-16use direct imports for `rustc::{lint, session}`.Mazdak Farrokhzad-1/+1
2020-03-03Run format.12101111-1/+3
2020-03-03Don't use static crt by default when build proc-macro.12101111-2/+2
2020-02-28use is_empty() instead of len() == x to determine if structs are empty.Matthias Krüger-1/+1
2020-01-23rustc: Allow cdylibs to link against dylibsMatthew Maurer-9/+11
Previously, rustc mandated that cdylibs could only link against rlibs as dependencies (not dylibs). This commit disables that restriction and tests that it works in a simple case.
2020-01-05Remove rustc_hir reexports in rustc::hir.Mazdak Farrokhzad-1/+1
2020-01-04canonicalize FxHash{Map,Set} importsMazdak Farrokhzad-1/+1
2019-12-22Format the worldMark Rousskov-64/+104
2019-11-28rustc: Move some queries to `rustc_metadata`Vadim Petrochenkov-2/+4
2019-11-11Move injected_panic_runtime to CrateStoreMark Rousskov-3/+2
This was essentially a "query" previously (with no key, just always run once when resolving the crate dependencies), and remains so, just now in a way that isn't on Session. This removes the need for the `Once` as well.
2019-10-14rustc_metadata: Privatize private code and remove dead codeVadim Petrochenkov-1/+1
2019-09-23rustc: Fix mixing crates with different `share_generics`Alex Crichton-1/+0
This commit addresses #64319 by removing the `dylib` crate type from the list of crate type that exports generic symbols. The bug in #64319 arises because a `dylib` crate type was trying to export a symbol in an uptream crate but it miscalculated the symbol name of the uptream symbol. This isn't really necessary, though, since `dylib` crates aren't that heavily used, so we can just conservatively say that the `dylib` crate type never exports generic symbols, forcibly removing them from the exported symbol lists if were to otherwise find them. The fix here happens in two places: * First is in the `local_crate_exports_generics` method, indicating that it's now `false` for the `Dylib` crate type. Only rlibs actually export generics at this point. * Next is when we load exported symbols from upstream crate. If, for our compilation session, the crate may be included from a dynamic library, then its generic symbols are removed. When the crate was linked into a dynamic library its symbols weren't exported, so we can't consider them a candidate to link against. Overally this should avoid situations where we incorrectly calculate the upstream symbol names in the face of differnet `share_generics` options, ultimately... Closes #64319
2019-09-23rustc: Convert `dependency_formats` to a queryAlex Crichton-0/+371
This commit converts a field of `Session`, `dependency_formats`, into a query of `TyCtxt`. This information then also needed to be threaded through to other remaining portions of the linker, but it's relatively straightforward. The only change here is that instead of `HashMap<CrateType, T>` the data structure changed to `Vec<(CrateType, T)>` to make it easier to deal with in queries.