Allow overwriting ExpnId for concurrent decoding

This commit is contained in:
John Kåre Alsaker 2023-08-22 00:50:25 +02:00
parent d06ca0ffaf
commit d9f7005ab6

View File

@ -1277,11 +1277,11 @@ pub fn register_expn_id(
let expn_id = ExpnId { krate, local_id };
HygieneData::with(|hygiene_data| {
let _old_data = hygiene_data.foreign_expn_data.insert(expn_id, data);
debug_assert!(_old_data.is_none());
debug_assert!(_old_data.is_none() || cfg!(parallel_compiler));
let _old_hash = hygiene_data.foreign_expn_hashes.insert(expn_id, hash);
debug_assert!(_old_hash.is_none());
debug_assert!(_old_hash.is_none() || cfg!(parallel_compiler));
let _old_id = hygiene_data.expn_hash_to_expn_id.insert(hash, expn_id);
debug_assert!(_old_id.is_none());
debug_assert!(_old_id.is_none() || cfg!(parallel_compiler));
});
expn_id
}