about summary refs log tree commit diff
path: root/compiler/rustc_middle/src/query
diff options
context:
space:
mode:
authorAaron Hill <aa1ronham@gmail.com>2021-12-16 18:32:00 -0500
committerAaron Hill <aa1ronham@gmail.com>2021-12-16 18:32:00 -0500
commit00ce6dc7187a1d572c19d3939fa5876ea6bbcbb1 (patch)
tree4e23694e010e8966b14a79c71767cfc624c98b06 /compiler/rustc_middle/src/query
parent70fba904121c6758e2874176e64db5a68ca14686 (diff)
downloadrust-00ce6dc7187a1d572c19d3939fa5876ea6bbcbb1.tar.gz
rust-00ce6dc7187a1d572c19d3939fa5876ea6bbcbb1.zip
Only cache local adt_def results on disk
An `AdtDef` contains `Span`s, and we don't appear
to actually encode the `SourceFile` for foreign
spans in the incremental cache in some cases.
Diffstat (limited to 'compiler/rustc_middle/src/query')
-rw-r--r--compiler/rustc_middle/src/query/mod.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/rustc_middle/src/query/mod.rs b/compiler/rustc_middle/src/query/mod.rs
index 2a3b50c79bb..22caff1e8d9 100644
--- a/compiler/rustc_middle/src/query/mod.rs
+++ b/compiler/rustc_middle/src/query/mod.rs
@@ -522,7 +522,7 @@ rustc_queries! {
     }
     query adt_def(key: DefId) -> &'tcx ty::AdtDef {
         desc { |tcx| "computing ADT definition for `{}`", tcx.def_path_str(key) }
-        cache_on_disk_if { true }
+        cache_on_disk_if { key.is_local() }
         separate_provide_extern
     }
     query adt_destructor(key: DefId) -> Option<ty::Destructor> {