mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-15 17:33:38 +00:00
Estimated hours taken: 3
Branches: main
Make the generated equality/comparison predicates for solver types that lack
user-defined equality or comparison predicates throw an exception rather than
treat the values as C pointers.
Document this in the reference manual.
doc/reference_manual.texi:
Document what happens if the user does not specify an equality or
comparison predicate in a solver type definition.
compiler/unify_proc.m:
For solver types without user-defined equality or comparison
predicates generate equality or comparison predicate that throw
an exception rather than treating the values as C pointers.
library/private_builtin.m:
Add some predicate for use by the above.
XXX type name lookups in RTTI don't seem to work properly
with solver types (or at least they have some rather
unexpected results - Mantis bug #40.)
tests/hard_coded/Mmakefile:
tests/hard_coded/solver_default_eq_cmp.{m,exp}
Test the behaviour of equality and comparison for solver
types without user-defined equality and comparison.
3 lines
146 B
Plaintext
3 lines
146 B
Plaintext
Checking equality predicate: call to generated unify/2 for solver type
|
|
Checking comparison predicate: call to generated compare/3 for solver type
|