@@ -613,8 +613,8 @@ unifyStructure context term content otherContent =
613 subUnify context (_first context) ext
613 subUnify context (_first context) ext
615 (Record1 fields extension, Record1 otherFields otherExtension) ->
615 (Record1 fields extension, Record1 otherFields otherExtension) ->
616− do firstStructure <- gatherFields context fields extension
616+ do firstStructure <- liftIO $ gatherFields context fields extension
617− secondStructure <- gatherFields context otherFields otherExtension
617+ secondStructure <- liftIO $ gatherFields context otherFields otherExtension
618 unifyRecord context firstStructure secondStructure
618 unifyRecord context firstStructure secondStructure
@@ -714,9 +714,9 @@ data ExtensionStructure
714 | Extension
714 | Extension
717−gatherFields :: Context -> Map.Map Text Variable -> Variable -> Unify RecordStructure
717+gatherFields :: Context -> Map.Map Text Variable -> Variable -> IO RecordStructure
718gatherFields context fields variable =
718gatherFields context fields variable =
719− do desc <- liftIO (UF.descriptor variable)
719+ do desc <- UF.descriptor variable
720 case _content desc of
720 case _content desc of
721 Structure (Record1 subFields subExt) ->
721 Structure (Record1 subFields subExt) ->
722 gatherFields context (Map.union fields subFields) subExt
722 gatherFields context (Map.union fields subFields) subExt