purity_warnings.m:030: In call to predicate `io.write_string'/3: purity_warnings.m:030: warning: unnecessary `semipure' indicator. purity_warnings.m:030: No purity indicator is necessary. purity_warnings.m:031: In call to predicate `io.print'/3: purity_warnings.m:031: warning: unnecessary `impure' indicator. purity_warnings.m:031: No purity indicator is necessary. purity_warnings.m:033: In predicate `impure_pred1'/2: purity_warnings.m:033: warning: declared impure but actually pure. purity_warnings.m:037: In predicate `impure_pred2'/2: purity_warnings.m:037: warning: declared impure but actually semipure. purity_warnings.m:045: In predicate `semipure_pred'/2: purity_warnings.m:045: warning: declared semipure but actually pure. purity_warnings.m:047: In call to predicate `io.write_string'/3: purity_warnings.m:047: warning: unnecessary `semipure' indicator. purity_warnings.m:047: No purity indicator is necessary. purity_warnings.m:077: In predicate `impure_method1a_impl'/2: purity_warnings.m:077: warning: declared impure but actually pure. purity_warnings.m:079: In call to predicate `io.print'/3: purity_warnings.m:079: warning: unnecessary `impure' indicator. purity_warnings.m:079: No purity indicator is necessary. purity_warnings.m:089: In predicate `semipure_method_a_impl'/2: purity_warnings.m:089: warning: declared semipure but actually pure. purity_warnings.m:091: In call to predicate `io.print'/3: purity_warnings.m:091: warning: unnecessary `semipure' indicator. purity_warnings.m:091: No purity indicator is necessary. purity_warnings.m:114: Error: foreign clause for predicate `get_x'/1 has purity purity_warnings.m:114: impure but that predicate has been declared semipure.