mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-16 18:03:36 +00:00
We used to generate diagnostics of the form
The predicate symbol predicate `<'/2 is also overloaded here.
The second "predicate" is pure noise. It could never be "function",
even though the code generating that message was prepared for that.
compiler/typecheck.m:
When typechecking a *predicate* call, don't specify the predicate
being called using a data structure that can also refer to functions.
compiler/typecheck_info.m:
When representing an overloaded predicate name, as opposed to
an overloaded function name, don't include a pred_or_func indication
that should *always* be pf_predicate.
compiler/typecheck_errors.m:
When reporting an overloaded predicate name, or talking about a
predicate's argument vector, do not take a pred_or_func indication,
since it should *always* be pf_predicate.
tests/invalid/ambiguous_overloading_error.err_exp:
tests/warnings/ambiguous_overloading.exp:
Don't expect the redundant "predicate" in the overload error message.
tests/invalid/max_error_line_width.err_exp:
tests/invalid/max_error_line_width.m:
The deletion of the redundant "predicate" in overload error messages
made them all fit on one line, robbing this test of its task of testing
longer-than-80-column output lines. Change the test so that the overload
is not between int.< and float.<, but between the unchecked_left_shift
functions in int and uint, since the longer function name yields error
message lines in the length range this test case wants to test.
tests/invalid/ambiguous_overloading_error.m:
tests/invalid/arg_permutation.m:
tests/invalid/assert_in_interface.m:
tests/invalid/bad_detism_category.m:
Fix programming style.
tests/invalid/assert_in_interface.err_exp:
Update a line number.
66 lines
3.9 KiB
Plaintext
66 lines
3.9 KiB
Plaintext
ambiguous_overloading.m:048: In clause for predicate `ambig_overload1'/1:
|
|
ambiguous_overloading.m:048: warning: highly ambiguous overloading.
|
|
ambiguous_overloading.m:048: The following symbol was overloaded in the
|
|
ambiguous_overloading.m:048: following context.
|
|
ambiguous_overloading.m:048: The function symbol `f'/0.
|
|
ambiguous_overloading.m:048: The possible matches are:
|
|
ambiguous_overloading.m:048: the builtin type constructor `character',
|
|
ambiguous_overloading.m:048: the type constructor
|
|
ambiguous_overloading.m:048: `ambiguous_overloading.bar'/0,
|
|
ambiguous_overloading.m:048: the type constructor
|
|
ambiguous_overloading.m:048: `ambiguous_overloading.foo'/0.
|
|
ambiguous_overloading.m:052: In clause for predicate `ambig_overload2'/1:
|
|
ambiguous_overloading.m:052: warning: highly ambiguous overloading.
|
|
ambiguous_overloading.m:052: The following symbols were overloaded in the
|
|
ambiguous_overloading.m:052: following contexts.
|
|
ambiguous_overloading.m:052: The function symbol `a1'/0.
|
|
ambiguous_overloading.m:052: The possible matches are:
|
|
ambiguous_overloading.m:052: the type constructor
|
|
ambiguous_overloading.m:052: `ambiguous_overloading.baz'/0,
|
|
ambiguous_overloading.m:052: the type constructor
|
|
ambiguous_overloading.m:052: `ambiguous_overloading.qux'/0.
|
|
ambiguous_overloading.m:052: The function symbol `a2'/0.
|
|
ambiguous_overloading.m:052: The possible matches are:
|
|
ambiguous_overloading.m:052: the type constructor
|
|
ambiguous_overloading.m:052: `ambiguous_overloading.baz'/0,
|
|
ambiguous_overloading.m:052: the type constructor
|
|
ambiguous_overloading.m:052: `ambiguous_overloading.qux'/0.
|
|
ambiguous_overloading.m:063: In clause for predicate `test_lt'/1:
|
|
ambiguous_overloading.m:063: warning: highly ambiguous overloading.
|
|
ambiguous_overloading.m:063: The following symbol was overloaded in the
|
|
ambiguous_overloading.m:063: following contexts.
|
|
ambiguous_overloading.m:057: The predicate symbol `<'/2.
|
|
ambiguous_overloading.m:057: The possible matches are:
|
|
ambiguous_overloading.m:057: predicate `float.<'/2,
|
|
ambiguous_overloading.m:057: predicate `int.<'/2.
|
|
ambiguous_overloading.m:058: The predicate symbol `<'/2 is also overloaded
|
|
ambiguous_overloading.m:058: here.
|
|
ambiguous_overloading.m:059: The predicate symbol `<'/2 is also overloaded
|
|
ambiguous_overloading.m:059: here.
|
|
ambiguous_overloading.m:060: The predicate symbol `<'/2 is also overloaded
|
|
ambiguous_overloading.m:060: here.
|
|
ambiguous_overloading.m:061: The predicate symbol `<'/2 is also overloaded
|
|
ambiguous_overloading.m:061: here.
|
|
ambiguous_overloading.m:062: The predicate symbol `<'/2 is also overloaded
|
|
ambiguous_overloading.m:062: here.
|
|
ambiguous_overloading.m:084: In clause for predicate
|
|
ambiguous_overloading.m:084: `set_browser_param_from_option_table'/3:
|
|
ambiguous_overloading.m:084: warning: highly ambiguous overloading.
|
|
ambiguous_overloading.m:084: The following symbol was overloaded in the
|
|
ambiguous_overloading.m:084: following contexts.
|
|
ambiguous_overloading.m:079: The function symbol `lookup_bool_option'/2.
|
|
ambiguous_overloading.m:079: The possible matches are:
|
|
ambiguous_overloading.m:079: predicate `getopt.lookup_bool_option'/3,
|
|
ambiguous_overloading.m:079: function `getopt.lookup_bool_option'/2.
|
|
ambiguous_overloading.m:080: The function symbol `lookup_bool_option'/2 is
|
|
ambiguous_overloading.m:080: also overloaded here.
|
|
ambiguous_overloading.m:081: The function symbol `lookup_bool_option'/2 is
|
|
ambiguous_overloading.m:081: also overloaded here.
|
|
ambiguous_overloading.m:082: The function symbol `lookup_bool_option'/2 is
|
|
ambiguous_overloading.m:082: also overloaded here.
|
|
ambiguous_overloading.m:083: The function symbol `lookup_bool_option'/2 is
|
|
ambiguous_overloading.m:083: also overloaded here.
|
|
ambiguous_overloading.m:084: The function symbol `lookup_bool_option'/2 is
|
|
ambiguous_overloading.m:084: also overloaded here.
|
|
For more information, recompile with `-E'.
|