From af19df1a0a59155756f66b8b3791f813773bd081 Mon Sep 17 00:00:00 2001 From: Ayaz Hafiz Date: Tue, 9 Aug 2022 11:39:25 -0700 Subject: [PATCH] Include optional/required mismatch for rigid optionals --- crates/reporting/src/error/type.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/crates/reporting/src/error/type.rs b/crates/reporting/src/error/type.rs index 31e0db1120..b9efd202a3 100644 --- a/crates/reporting/src/error/type.rs +++ b/crates/reporting/src/error/type.rs @@ -2759,7 +2759,15 @@ fn diff_record<'b>( status: { match (&t1, &t2) { (RecordField::Demanded(_), RecordField::Optional(_)) - | (RecordField::Optional(_), RecordField::Demanded(_)) => match diff.status { + | (RecordField::Optional(_), RecordField::Demanded(_)) + | ( + RecordField::Demanded(_) | RecordField::Required(_), + RecordField::RigidOptional(_), + ) + | ( + RecordField::RigidOptional(_), + RecordField::Demanded(_) | RecordField::Required(_), + ) => match diff.status { Status::Similar => { Status::Different(vec![Problem::OptionalRequiredMismatch( field.clone(),