rust/compiler/rustc_middle/src
Dylan DPC e87fcf979f
Rollup merge of #111097 - oli-obk:🚲_layout, r=compiler-errors
Avoid ICEing miri on layout query cycles

Miri has special logic for catching panics during interpretation. Raising a fatal error in rustc uses unwinding to abort compilation. Thus miri ends up catching that fatal error and thinks it saw an ICE. While we should probably change that to ignore `Fatal` payloads, I think it's also neat to continue compilation after a layout query cycle 😆

Query cycles now (in addition to reporting an error just like before), return `Err(Cycle)` instead of raising a fatal error. This allows the interpreter to wind down via the regular error paths.

r? `@RalfJung` for a first round, feel free to reroll for the compiler team once the miri side looks good
2023-05-04 00:17:27 +05:30
..
dep_graph Allow LocalDefId as the argument to def_path_str 2023-04-21 22:27:20 +00:00
hir Remove unused TypeFoldable/TypeVisitable impls. 2023-04-26 15:19:50 +10:00
infer Rollup merge of #110386 - nnethercote:clean-up-traversal-macros, r=lcnr 2023-04-17 18:13:35 +02:00
middle Restrict From<S> for {D,Subd}iagnosticMessage. 2023-05-03 08:44:39 +10:00
mir Rollup merge of #110943 - RalfJung:interpret-unsized-arg-ice, r=oli-obk 2023-05-04 00:17:25 +05:30
query Auto merge of #111028 - compiler-errors:attr-query-no-caching, r=cjgillot 2023-05-02 17:49:39 +00:00
thir offset_of 2023-04-21 02:14:02 -07:00
traits Restrict From<S> for {D,Subd}iagnosticMessage. 2023-05-03 08:44:39 +10:00
ty Rollup merge of #111097 - oli-obk:🚲_layout, r=compiler-errors 2023-05-04 00:17:27 +05:30
util Restrict From<S> for {D,Subd}iagnosticMessage. 2023-05-03 08:44:39 +10:00
arena.rs Split {Idx, IndexVec, IndexSlice} into their own modules 2023-04-24 13:53:35 +00:00
error.rs fix(middle): emit error rather than delay bug when reaching limit 2023-04-03 11:08:14 +08:00
lib.rs Switch impl_tag! from explicit tags to ${index()} 2023-04-24 16:48:37 +00:00
lint.rs Restrict From<S> for {D,Subd}iagnosticMessage. 2023-05-03 08:44:39 +10:00
macros.rs Simplify CloneLiftImpls and TrivialTypeTraversalImpls. 2023-04-16 14:19:50 +10:00
metadata.rs rustc_metadata: Remove Span from ModChild 2023-04-18 17:25:04 +03:00
tests.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
thir.rs Remove unused TypeFoldable/TypeVisitable impls. 2023-04-26 15:19:50 +10:00
values.rs Avoid ICEing miri on layout query cycles 2023-05-02 16:14:20 +00:00