rust/src
David Wood 59e621c196
interp: needs_subst -> ensure_monomorphic_enough
This commit adds a `ensure_monomorphic_enough` utility function which
checks whether a type needs substitution, but only for parameters
that the `unused_generic_params` query considers used.

`ensure_monomorphic_enough` is then used throughout interpret where
`needs_subst` checks previously existed (in particular, for some
pointer casts and for reflection intrinsics more precise).

Signed-off-by: David Wood <david@davidtw.co>
2020-07-31 16:36:42 +01:00
..
bootstrap Auto merge of #74613 - Mark-Simulacrum:revert-gimli, r=nnethercote 2020-07-23 11:14:48 +00:00
build_helper build: Harden env var tracking in build scripts 2020-07-22 19:51:19 +03:00
ci Rollup merge of #74600 - Mark-Simulacrum:try-perf, r=pietroalbini 2020-07-22 16:34:44 -07:00
doc Rollup merge of #74589 - ehuss:update-books, r=ehuss 2020-07-22 09:29:15 -07:00
etc Rollup merge of #73715 - MaulingMonkey:pr-natvis-tuples, r=Amanieu 2020-07-11 08:53:13 -07:00
liballoc Prefer type@str 2020-07-23 02:42:37 +00:00
libcore Rollup merge of #74141 - euclio:typos, r=steveklabnik 2020-07-23 00:42:01 -07:00
libpanic_abort Auto merge of #74395 - Mark-Simulacrum:stage0-next, r=pietroalbini 2020-07-17 03:51:35 +00:00
libpanic_unwind Auto merge of #74395 - Mark-Simulacrum:stage0-next, r=pietroalbini 2020-07-17 03:51:35 +00:00
libproc_macro Introduce restricted-std feature. 2020-07-15 09:57:05 -07:00
libprofiler_builtins build: Avoid unnecessary build script reruns in libstd 2020-07-22 20:06:37 +03:00
librustc_apfloat
librustc_arena Rollup merge of #73378 - matthewjasper:arena-not-special, r=oli-obk 2020-06-20 14:45:00 -07:00
librustc_ast build: Remove unnecessary `cargo:rerun-if-env-changed` annotations 2020-07-22 19:12:32 +03:00
librustc_ast_lowering Suggest borrowing in more unsized fn param cases 2020-07-14 10:50:24 -07:00
librustc_ast_passes tweak wording 2020-07-23 08:14:39 +02:00
librustc_ast_pretty Auto merge of #74175 - nnethercote:more-static-symbols, r=oli-obk 2020-07-15 00:16:25 +00:00
librustc_attr build: Remove unnecessary `build = "build.rs"` annotations 2020-07-22 19:13:02 +03:00
librustc_builtin_macros Remove `ExtCtxt::ident_of`. 2020-07-17 08:28:19 +10:00
librustc_codegen_llvm Rollup merge of #74659 - alexcrichton:wasm-codegen, r=varkor 2020-07-23 00:42:20 -07:00
librustc_codegen_ssa Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_data_structures Auto merge of #69749 - davidtwco:issue-46477-polymorphization, r=eddyb 2020-07-21 03:09:04 +00:00
librustc_driver build: Remove unnecessary `cargo:rerun-if-env-changed` annotations 2020-07-22 19:12:32 +03:00
librustc_error_codes Change error code number 2020-07-22 13:12:34 -07:00
librustc_errors apply bootstrap cfgs 2020-07-16 19:36:49 -04:00
librustc_expand Remove `ExtCtxt::ident_of`. 2020-07-17 08:28:19 +10:00
librustc_feature Rollup merge of #73868 - ecstatic-morse:fix-stable-version, r=jonas-schievink 2020-07-22 16:34:37 -07:00
librustc_fs_util
librustc_graphviz
librustc_hir Increase accuracy of lifetime bound on trait object impl suggestion 2020-07-22 12:25:54 -07:00
librustc_hir_pretty Remove lots of `Symbol::as_str()` calls. 2020-07-15 09:01:35 +10:00
librustc_incremental build: Remove unnecessary `cargo:rerun-if-env-changed` annotations 2020-07-22 19:12:32 +03:00
librustc_index Auto merge of #69749 - davidtwco:issue-46477-polymorphization, r=eddyb 2020-07-21 03:09:04 +00:00
librustc_infer Change error code number 2020-07-22 13:12:34 -07:00
librustc_interface Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_lexer Rollup merge of #73856 - pierwill:pierwill-lexer-doc, r=jonas-schievink 2020-07-06 17:45:17 -07:00
librustc_lint Rollup merge of #74448 - davidtwco:improper-ctypes-definitions-boxes, r=davidtwco 2020-07-17 18:13:47 -07:00
librustc_llvm Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_macros Enforce the static symbol order. 2020-07-16 16:53:24 +10:00
librustc_metadata build: Remove unnecessary `cargo:rerun-if-env-changed` annotations 2020-07-22 19:12:32 +03:00
librustc_middle Auto merge of #74611 - Mark-Simulacrum:revert-74069-bad-niche, r=eddyb 2020-07-23 07:11:01 +00:00
librustc_mir interp: needs_subst -> ensure_monomorphic_enough 2020-07-31 16:36:42 +01:00
librustc_mir_build fetch -> lookup 2020-07-21 23:12:10 +02:00
librustc_parse Rollup merge of #74337 - estebank:ty-parse-recovery, r=varkor 2020-07-15 11:01:26 -07:00
librustc_parse_format Eliminate confusing "globals" terminology. 2020-07-09 14:11:44 +10:00
librustc_passes Auto merge of #74091 - richkadel:llvm-coverage-map-gen-4, r=tmandry 2020-07-19 07:25:18 +00:00
librustc_plugin_impl rustc_metadata: Make crate loading fully speculative 2020-07-18 14:06:04 +04:00
librustc_privacy Auto merge of #72983 - Lezzz:rename-typeck, r=nikomatsakis 2020-07-17 17:25:09 +00:00
librustc_query_system apply bootstrap cfgs 2020-07-16 19:36:49 -04:00
librustc_resolve Rollup merge of #74557 - jakubadamw:issue-74539, r=nagisa 2020-07-20 12:30:32 -07:00
librustc_save_analysis Auto merge of #72983 - Lezzz:rename-typeck, r=nikomatsakis 2020-07-17 17:25:09 +00:00
librustc_serialize
librustc_session Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_span mir: use attribute over `-Z polymorphize-errors` 2020-07-20 19:35:35 +01:00
librustc_symbol_mangling mir: `unused_generic_params` query 2020-07-20 19:35:30 +01:00
librustc_target Rollup merge of #74643 - petrochenkov:noenvrerun, r=Mark-Simulacrum 2020-07-22 16:34:50 -07:00
librustc_trait_selection Use `ty::Instance::resolve` to identify `'static` bound source 2020-07-22 12:25:55 -07:00
librustc_traits Use for<'tcx> fn pointers in Providers, instead of having Providers<'tcx>. 2020-07-05 23:00:14 +03:00
librustc_ty shim: adjust valid shim asserts 2020-07-20 11:23:32 +01:00
librustc_typeck Auto merge of #74509 - matthewjasper:empty-verify, r=nikomatsakis 2020-07-23 13:43:42 +00:00
librustdoc rustdoc: Add explanation when linting against public to private item links 2020-07-22 21:40:51 +02:00
libstd Auto merge of #74613 - Mark-Simulacrum:revert-gimli, r=nnethercote 2020-07-23 11:14:48 +00:00
libterm
libtest Rollup merge of #74033 - ehuss:std-compile-all-platforms, r=Mark-Simulacrum 2020-07-16 17:08:57 -07:00
libunwind build: Remove unnecessary `build = "build.rs"` annotations 2020-07-22 19:13:02 +03:00
llvm-project@86b120e6f3 Update llvm-project to latest origin/rustc/10.0-2020-05-05 commit which includes LVI segfault fix 2020-07-12 18:49:14 +00:00
rtstartup
rustc
rustllvm Generating the coverage map 2020-07-17 11:49:35 -07:00
stdarch@45340c0e2f
test interp: needs_subst -> ensure_monomorphic_enough 2020-07-31 16:36:42 +01:00
tools Update cargo 2020-07-23 08:28:50 -07:00
README.md
stage0.txt Bump to 1.47 2020-07-16 19:36:49 -04:00

README.md

This directory contains the source code of the rust project, including:

  • rustc and its tests
  • libstd
  • Various submodules for tools, like rustdoc, rls, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.