         }
 
         log("failed: \(incompatibility)")
-        throw PubgrubError._unresolvable(incompatibility, state)
+        throw PubgrubError._unresolvable(incompatibility, state.incompatibilities)
     }
 
     /// Does a given incompatibility specify that version solving has entirely

            }
        }

        var state: State? {
            switch self {
            case ._unresolvable(_, let state):
                return state
            case .unresolvable:
                return nil
            }

            var error = error

            // If version solving failing, build the user-facing diagnostic.
            if let pubGrubError = error as? PubgrubError, let rootCause = pubGrubError.rootCause, let incompatibilities = pubGrubError.incompatibilities {
                var builder = DiagnosticReportBuilder(
                    root: root,
                    incompatibilities: incompatibilities,
                    provider: self.provider
                )

