mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-15 09:23:44 +00:00
compiler/add_mutable_aux_preds.m:
If a mutable has the same name as another mutable defined earlier,
report this fact, and don't try to implement the mutable. If we did
try to implement it, we would get a whole slew of errors about
multiple definitions of all the other kinds of items that we turn
a mutable definition into.
tests/invalid/duplicate_mutable.{m,err_exp}:
Add this test case for the diagnostics we generate for this issue.
tests/invalid/Mmakefile:
Enable the new test case.
18 lines
389 B
Mathematica
18 lines
389 B
Mathematica
%---------------------------------------------------------------------------%
|
|
% vim: ts=4 sw=4 et ft=mercury
|
|
%---------------------------------------------------------------------------%
|
|
|
|
:- module duplicate_mutable.
|
|
|
|
:- interface.
|
|
|
|
:- type foo.
|
|
|
|
:- implementation.
|
|
|
|
:- type foo == int.
|
|
|
|
:- mutable(global, int, 42, ground, [untrailed]).
|
|
|
|
:- mutable(global, int, 43, ground, [untrailed]).
|