From 0065929599d276ce756a55948e8316615be1e7ec Mon Sep 17 00:00:00 2001 From: Camille GILLOT Date: Mon, 18 Jul 2022 20:41:27 +0200 Subject: Erase regions before comparing signatures of foreign fns. --- .../ui/foreign/issue-99276-same-type-lifetimes.rs | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/test/ui/foreign/issue-99276-same-type-lifetimes.rs (limited to 'src/test') diff --git a/src/test/ui/foreign/issue-99276-same-type-lifetimes.rs b/src/test/ui/foreign/issue-99276-same-type-lifetimes.rs new file mode 100644 index 00000000000..fce603c801f --- /dev/null +++ b/src/test/ui/foreign/issue-99276-same-type-lifetimes.rs @@ -0,0 +1,24 @@ +// Check that we do not ICE when structurally comparing types with lifetimes present. +// check-pass + +pub struct Record<'a> { + pub args: &'a [(usize, &'a str)], +} + +mod a { + extern "Rust" { + fn foo<'a, 'b>(record: &'a super::Record<'b>); + + fn bar<'a, 'b>(record: &'a super::Record<'b>); + } +} + +mod b { + extern "Rust" { + fn foo<'a, 'b>(record: &'a super::Record<'b>); + + fn bar<'a, 'b>(record: &'a super::Record<'b>); + } +} + +fn main() {} -- cgit 1.4.1-3-g733a5