tests/debugger/Mmakefile:
tests/debugger/declarative/Mmakefile:
    On my Mac with its old 32 bit C compiler, the hex strings generated
    as part of the output when printing c_pointers includes an initial
    minus sign. Don't let this prevent the replacement of all such
    addresses with a standard 0xXXXX.
Improve messages for errors in functor argument types.

compiler/typecheck_errors.m:
    Given a type error in X = f(Y1, ..., Yn), where the type of one or more
    of the Yi does not match the type of the corresponding argument of f,
    we have for a long time tried to print error messages that mention
    the expected/actual type mismatches only for those arguments.
    However, we used to insist on both the expected and actual types
    being uniquely known. This diff lifts that restriction, so we can
    now generate these more focused messages if e.g. the Yi is "no",
    whose type may be either bool or maybe(T).

    We now also try to suppress any mention of mismatches in which the actual
    type subsumes the expected type. This usually happens when the actual
    argument value is something like [], whose type is list(T), but the
    expected type is a list with a known element type. If there are any
    argument type mismatches for which this is not true, we print error
    messages only about them.

    Don't insist on printing the entire right hand side term on a single
    like as a fixed quoted string. For the kinds of unifications for which
    this improvement is most useful, that term won't fit on one line.

    Be more consistent aboiut putting quotes around types in error messages.

    Move a predicate next to where it is used.

compiler/prog_type.m:
    Provide a missing utility function for the new code in typecheck_errors.m.

tests/invalid/overloading.err_exp:
    Expect the error messages we now generate for this test case.
    This is only 10 lines, compared to the old 44 lines. The first 6
    of those 10 set the context, and the last 4 identify the problem
    exactly. (The motivation for this change was an error like this.)

tests/invalid/type_error_ambiguous.err_exp:
    Expect quotes around types.