[m-dev.] for review: fix quantification of "<=>" [2/2]
Fergus Henderson
fjh at cs.mu.OZ.AU
Mon Oct 25 01:56:43 AEST 1999
[continued from part 1]
The remainder of this diff is very boring.
It consists entirely of places where I have added
calls to error/1 for the new HLDS goal bi_implication/2.
====================
Index: compiler/bytecode_gen.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/bytecode_gen.m,v
retrieving revision 1.45
diff -u -d -r1.45 bytecode_gen.m
--- compiler/bytecode_gen.m 1999/07/13 08:52:41 1.45
+++ compiler/bytecode_gen.m 1999/10/21 11:00:32
@@ -252,6 +252,10 @@
GoalExpr = pragma_c_code(_, _, _, _, _, _, _),
Code = node([not_supported]),
ByteInfo = ByteInfo0
+ ;
+ GoalExpr = bi_implication(_, _),
+ % these should have been expanded out by now
+ error("bytecode_gen__goal_expr: unexpected bi_implication")
).
%---------------------------------------------------------------------------%
Index: compiler/code_gen.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/code_gen.m,v
retrieving revision 1.67
diff -u -d -r1.67 code_gen.m
--- compiler/code_gen.m 1999/10/08 02:55:21 1.67
+++ compiler/code_gen.m 1999/10/21 11:01:18
@@ -890,6 +890,9 @@
pragma_c_gen__generate_pragma_c_code(CodeModel, Attributes,
PredId, ModeId, Args, ArgNames, OrigArgTypes, GoalInfo,
PragmaCode, Instr).
+code_gen__generate_goal_2(bi_implication(_, _), _, _, _) -->
+ % these should have been expanded out by now
+ { error("code_gen__generate_goal_2: unexpected bi_implication") }.
%---------------------------------------------------------------------------%
Index: compiler/code_util.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/code_util.m,v
retrieving revision 1.112
diff -u -d -r1.112 code_util.m
--- compiler/code_util.m 1999/09/17 16:22:12 1.112
+++ compiler/code_util.m 1999/10/21 11:02:54
@@ -864,6 +864,10 @@
CTMax is CMax + TMax,
int__min(CTMin, EMin, Min),
int__max(CTMax, EMax, Max).
+code_util__count_recursive_calls_2(bi_implication(_, _),
+ _, _, _, _) :-
+ % these should have been expanded out by now
+ error("code_util__count_recursive_calls_2: unexpected bi_implication").
:- pred code_util__count_recursive_calls_conj(list(hlds_goal),
pred_id, proc_id, int, int, int, int).
Index: compiler/cse_detection.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/cse_detection.m,v
retrieving revision 1.57
diff -u -d -r1.57 cse_detection.m
--- compiler/cse_detection.m 1999/07/13 08:52:45 1.57
+++ compiler/cse_detection.m 1999/10/21 13:49:04
@@ -274,6 +274,10 @@
detect_cse_in_ite(NonLocalsList, Vars, Cond0, Then0, Else0, GoalInfo,
SM, InstMap, CseInfo0, CseInfo, Redo, Goal).
+detect_cse_in_goal_2(bi_implication(_, _), _, _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("detect_cse_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred detect_cse_in_conj(list(hlds_goal), instmap, cse_info, cse_info,
Index: compiler/dead_proc_elim.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/dead_proc_elim.m,v
retrieving revision 1.49
diff -u -d -r1.49 dead_proc_elim.m
--- compiler/dead_proc_elim.m 1999/09/12 04:26:38 1.49
+++ compiler/dead_proc_elim.m 1999/10/21 11:06:18
@@ -485,6 +485,9 @@
Queue = Queue0,
Needed = Needed0
).
+dead_proc_elim__examine_expr(bi_implication(_,_), _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("detect_cse_in_goal_2: unexpected bi_implication").
%-----------------------------------------------------------------------------%
@@ -831,6 +834,9 @@
pre_modecheck_examine_goal(pragma_c_code(_, _, _, _, _, _, _) - _) --> [].
pre_modecheck_examine_goal(unify(_, Rhs, _, _, _) - _) -->
pre_modecheck_examine_unify_rhs(Rhs).
+pre_modecheck_examine_goal(bi_implication(_, _) - _) -->
+ % these should have been expanded out by now
+ { error("pre_modecheck_examine_goal: unexpected bi_implication") }.
:- pred pre_modecheck_examine_unify_rhs(unify_rhs::in,
dead_pred_info::in, dead_pred_info::out) is det.
Index: compiler/deforest.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/deforest.m,v
retrieving revision 1.11
diff -u -d -r1.11 deforest.m
--- compiler/deforest.m 1999/10/15 03:44:43 1.11
+++ compiler/deforest.m 1999/10/21 13:49:24
@@ -219,6 +219,10 @@
deforest__goal(Goal, Goal) -->
{ Goal = unify(_, _, _, _, _) - _ }.
+deforest__goal(bi_implication(_, _) - _, _) -->
+ % these should have been expanded out by now
+ { error("deforest__goal: unexpected bi_implication") }.
+
%-----------------------------------------------------------------------------%
:- pred deforest__disj(list(hlds_goal)::in, list(hlds_goal)::out,
Index: compiler/det_analysis.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/det_analysis.m,v
retrieving revision 1.143
diff -u -d -r1.143 det_analysis.m
--- compiler/det_analysis.m 1999/10/03 04:15:20 1.143
+++ compiler/det_analysis.m 1999/10/21 11:09:16
@@ -676,6 +676,10 @@
Detism = erroneous
).
+det_infer_goal_2(bi_implication(_, _), _, _, _, _, _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("det_infer_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred det_infer_conj(list(hlds_goal), instmap, soln_context, det_info,
Index: compiler/det_report.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/det_report.m,v
retrieving revision 1.57
diff -u -d -r1.57 det_report.m
--- compiler/det_report.m 1999/07/13 08:52:48 1.57
+++ compiler/det_report.m 1999/10/21 11:09:58
@@ -621,6 +621,10 @@
% prog_out__write_context(Context),
% io__write_string(" for modes which don't succeed more than once.\n").
+det_diagnose_goal_2(bi_implication(_, _), _, _, _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("det_diagnose_goal_2: unexpected bi_implication") }.
+
%-----------------------------------------------------------------------------%
:- pred report_generic_call_context(prog_context::in,
Index: compiler/excess.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/excess.m,v
retrieving revision 1.31
diff -u -d -r1.31 excess.m
--- compiler/excess.m 1999/07/13 08:52:52 1.31
+++ compiler/excess.m 1999/10/21 13:50:22
@@ -43,7 +43,7 @@
:- implementation.
:- import_module hlds_goal, goal_util, prog_data, varset, term.
-:- import_module list, bool, map, set, std_util.
+:- import_module list, bool, map, set, std_util, require.
%-----------------------------------------------------------------------------%
@@ -137,6 +137,10 @@
GoalExpr0 = pragma_c_code(_, _, _, _, _, _, _),
Goal = GoalExpr0 - GoalInfo0,
ElimVars = ElimVars0
+ ;
+ GoalExpr0 = bi_implication(_, _),
+ % these should have been expanded out by now
+ error("detect_cse_in_goal_2: unexpected bi_implication")
),
!.
Index: compiler/follow_code.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/follow_code.m,v
retrieving revision 1.53
diff -u -d -r1.53 follow_code.m
--- compiler/follow_code.m 1999/10/15 03:44:43 1.53
+++ compiler/follow_code.m 1999/10/21 11:14:28
@@ -125,6 +125,10 @@
move_follow_code_in_goal_2(pragma_c_code(A,B,C,D,E,F,G),
pragma_c_code(A,B,C,D,E,F,G), _, R, R).
+move_follow_code_in_goal_2(bi_implication(_, _), _, _, _, _) :-
+ % these should have been expanded out by now
+ error("move_follow_code_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
% move_follow_code_in_disj is used both for disjunction and
Index: compiler/follow_vars.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/follow_vars.m,v
retrieving revision 1.54
diff -u -d -r1.54 follow_vars.m
--- compiler/follow_vars.m 1999/07/13 08:52:53 1.54
+++ compiler/follow_vars.m 1999/10/21 11:15:06
@@ -202,6 +202,10 @@
_, _ModuleInfo, FollowVars,
pragma_c_code(A,B,C,D,E,F,G), FollowVars).
+find_follow_vars_in_goal_2(bi_implication(_,_), _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("find_follow_vars_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred find_follow_vars_in_call(pred_id, proc_id, list(prog_var), module_info,
Index: compiler/goal_path.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/goal_path.m,v
retrieving revision 1.6
diff -u -d -r1.6 goal_path.m
--- compiler/goal_path.m 1999/07/13 08:52:54 1.6
+++ compiler/goal_path.m 1999/10/21 13:50:36
@@ -21,7 +21,7 @@
:- implementation.
:- import_module hlds_goal.
-:- import_module int, list, std_util.
+:- import_module int, list, std_util, require.
goal_path__fill_slots(Proc0, _ModuleInfo, Proc) :-
% The ModuleInfo argument is there just for passes_aux
@@ -60,6 +60,9 @@
fill_expr_slots(unify(A,B,C,D,E), _Path0, unify(A,B,C,D,E)).
fill_expr_slots(pragma_c_code(A,B,C,D,E,F,G), _Path0,
pragma_c_code(A,B,C,D,E,F,G)).
+fill_expr_slots(bi_implication(_, _), _, _) :-
+ % these should have been expanded out by now
+ error("fill_expr_slots: unexpected bi_implication").
:- pred fill_conj_slots(list(hlds_goal)::in, goal_path::in, int::in,
list(hlds_goal)::out) is det.
Index: compiler/higher_order.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/higher_order.m,v
retrieving revision 1.57
diff -u -d -r1.57 higher_order.m
--- compiler/higher_order.m 1999/10/15 03:44:45 1.57
+++ compiler/higher_order.m 1999/10/21 16:44:12
@@ -478,6 +478,10 @@
{ Goal = unify(_, _, _, Unify, _) - _ },
check_unify(Unify).
+traverse_goal_2(bi_implication(_, _) - _, _) -->
+ % these should have been expanded out by now
+ { error("traverse_goal_2: unexpected bi_implication") }.
+
% To process a disjunction, we process each disjunct with the
% specialization information before the goal, then merge the
% results to give the specialization information after the
Index: compiler/inlining.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/inlining.m,v
retrieving revision 1.83
diff -u -d -r1.83 inlining.m
--- compiler/inlining.m 1999/10/14 03:40:05 1.83
+++ compiler/inlining.m 1999/10/21 11:26:56
@@ -544,6 +544,10 @@
inlining__inlining_in_goal(pragma_c_code(A, B, C, D, E, F, G) - GoalInfo,
pragma_c_code(A, B, C, D, E, F, G) - GoalInfo) --> [].
+inlining__inlining_in_goal(bi_implication(_, _) - _, _) -->
+ % these should have been expanded out by now
+ { error("inlining__inlining_in_goal: unexpected bi_implication") }.
+
%-----------------------------------------------------------------------------%
inlining__do_inline_call(HeadTypeParams, ArgVars, PredInfo, ProcInfo,
Index: compiler/intermod.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/intermod.m,v
retrieving revision 1.70
diff -u -d -r1.70 intermod.m
--- compiler/intermod.m 1999/10/14 03:40:05 1.70
+++ compiler/intermod.m 1999/10/21 13:53:06
@@ -509,6 +509,11 @@
intermod__traverse_goal(pragma_c_code(A,B,C,D,E,F,G) - Info,
pragma_c_code(A,B,C,D,E,F,G) - Info, yes) --> [].
+intermod__traverse_goal(bi_implication(_, _) - _, _, _) -->
+ % these should have been expanded out by now
+ { error("intermod__traverse_goal: unexpected bi_implication") }.
+
+
:- pred intermod__traverse_list_of_goals(hlds_goals::in, hlds_goals::out,
bool::out, intermod_info::in, intermod_info::out) is det.
Index: compiler/lambda.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/lambda.m,v
retrieving revision 1.57
diff -u -d -r1.57 lambda.m
--- compiler/lambda.m 1999/09/15 19:25:00 1.57
+++ compiler/lambda.m 1999/10/21 16:44:34
@@ -255,6 +255,9 @@
lambda__process_goal_2(pragma_c_code(A,B,C,D,E,F,G), GoalInfo,
pragma_c_code(A,B,C,D,E,F,G) - GoalInfo) -->
[].
+lambda__process_goal_2(bi_implication(_, _), _, _) -->
+ % these should have been expanded out by now
+ { error("lambda__process_goal_2: unexpected bi_implication") }.
:- pred lambda__process_goal_list(list(hlds_goal), list(hlds_goal),
lambda_info, lambda_info).
Index: compiler/lco.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/lco.m,v
retrieving revision 1.12
diff -u -d -r1.12 lco.m
--- compiler/lco.m 1999/07/13 08:53:03 1.12
+++ compiler/lco.m 1999/10/21 13:54:02
@@ -94,6 +94,10 @@
lco_in_goal_2(pragma_c_code(A,B,C,D,E,F,G), _,
pragma_c_code(A,B,C,D,E,F,G)).
+lco_in_goal_2(bi_implication(_, _), _, _) :-
+ % these should have been expanded out by now
+ error("lco_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred lco_in_disj(list(hlds_goal), module_info, list(hlds_goal)).
Index: compiler/live_vars.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/live_vars.m,v
retrieving revision 1.84
diff -u -d -r1.84 live_vars.m
--- compiler/live_vars.m 1999/08/13 01:43:04 1.84
+++ compiler/live_vars.m 1999/10/21 11:30:50
@@ -397,6 +397,11 @@
)
).
+build_live_sets_in_goal_2(bi_implication(_, _), _, _, _, _, _, _, _, _, _, _)
+ :-
+ % these should have been expanded out by now
+ error("build_live_sets_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred build_live_sets_in_conj(list(hlds_goal), set(prog_var), set(prog_var),
Index: compiler/liveness.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/liveness.m,v
retrieving revision 1.101
diff -u -d -r1.101 liveness.m
--- compiler/liveness.m 1999/08/13 01:43:04 1.101
+++ compiler/liveness.m 1999/10/21 16:45:30
@@ -325,6 +325,9 @@
detect_liveness_in_goal_2(pragma_c_code(_,_,_,_,_,_,_), _, _, _, _, _) :-
error("pragma_c_code in detect_liveness_in_goal_2").
+detect_liveness_in_goal_2(bi_implication(_, _), _, _, _, _, _) :-
+ error("bi_implication in detect_liveness_in_goal_2").
+
%-----------------------------------------------------------------------------%
:- pred detect_liveness_in_conj(list(hlds_goal), set(prog_var), live_info,
@@ -528,6 +531,9 @@
detect_deadness_in_goal_2(pragma_c_code(_,_,_,_,_,_,_), _, _, _, _, _) :-
error("pragma_c_code in detect_deadness_in_goal_2").
+detect_deadness_in_goal_2(bi_implication(_, _), _, _, _, _, _) :-
+ error("bi_implication in detect_deadness_in_goal_2").
+
%-----------------------------------------------------------------------------%
:- pred detect_deadness_in_conj(list(hlds_goal), set(prog_var), live_info,
@@ -748,6 +754,10 @@
detect_resume_points_in_goal_2(pragma_c_code(A,B,C,D,E,F,G), _, Liveness,
_, _,
pragma_c_code(A,B,C,D,E,F,G), Liveness).
+
+detect_resume_points_in_goal_2(bi_implication(_, _), _, _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("detect_resume_points_in_goal_2: unexpected bi_implication").
:- pred detect_resume_points_in_conj(list(hlds_goal), set(prog_var), live_info,
set(prog_var), list(hlds_goal), set(prog_var)).
Index: compiler/magic.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/magic.m,v
retrieving revision 1.10
diff -u -d -r1.10 magic.m
--- compiler/magic.m 1999/10/03 04:15:22 1.10
+++ compiler/magic.m 1999/10/21 13:54:22
@@ -1546,6 +1546,10 @@
{ HOMap = HOMap0 }
).
+magic__preprocess_goal_2(bi_implication(_, _) - _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("magic__preprocess_goal_2: unexpected bi_implication") }.
+
% Introduce new variables and assignments to them for any
% duplicates in the list.
:- pred magic__preprocess_call_args(list(prog_var)::in, list(prog_var)::out,
Index: compiler/ml_code_gen.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/ml_code_gen.m,v
retrieving revision 1.9
diff -u -d -r1.9 ml_code_gen.m
--- compiler/ml_code_gen.m 1999/10/08 06:57:52 1.9
+++ compiler/ml_code_gen.m 1999/10/21 16:48:42
@@ -1055,6 +1055,10 @@
_, _, _, _) -->
{ sorry("C interface") }.
+ml_gen_goal_expr(bi_implication(_, _), _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("ml_gen_goal_expr: unexpected bi_implication") }.
+
%-----------------------------------------------------------------------------%
%
% Code for procedure calls
Index: compiler/mode_util.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/mode_util.m,v
retrieving revision 1.117
diff -u -d -r1.117 mode_util.m
--- compiler/mode_util.m 1999/10/15 03:44:52 1.117
+++ compiler/mode_util.m 1999/10/21 16:49:00
@@ -1211,6 +1211,10 @@
recompute_instmap_delta_call(PredId, ProcId,
Args, InstMap, InstMapDelta).
+recompute_instmap_delta_2(_, bi_implication(_, _), _, _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("recompute_instmap_delta_2: unexpected bi_implication") }.
+
%-----------------------------------------------------------------------------%
:- pred recompute_instmap_delta_conj(bool, list(hlds_goal), list(hlds_goal),
Index: compiler/modes.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/modes.m,v
retrieving revision 1.233
diff -u -d -r1.233 modes.m
--- compiler/modes.m 1999/10/15 03:44:55 1.233
+++ compiler/modes.m 1999/10/21 14:04:02
@@ -1184,6 +1184,10 @@
mode_info_unset_call_context,
mode_checkpoint(exit, "pragma_c_code").
+modecheck_goal_expr(bi_implication(_, _), _, _) -->
+ % these should have been expanded out by now
+ { error("modecheck_goal_expr: unexpected bi_implication") }.
+
% given the right-hand-side of a unification, return a list of
% the potentially non-local variables of that unification.
Index: compiler/pd_cost.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/pd_cost.m,v
retrieving revision 1.6
diff -u -d -r1.6 pd_cost.m
--- compiler/pd_cost.m 1999/07/13 08:53:19 1.6
+++ compiler/pd_cost.m 1999/10/21 16:49:16
@@ -36,7 +36,7 @@
:- implementation.
:- import_module hlds_data, prog_data.
-:- import_module int, list, set, std_util.
+:- import_module int, list, set, std_util, require.
%-----------------------------------------------------------------------------%
@@ -102,6 +102,10 @@
InputArgs is Arity // 2, % rough
pd_cost__reg_assign(AssignCost),
Cost is Cost1 + Cost2 + AssignCost * InputArgs.
+
+pd_cost__goal(bi_implication(_, _) - _, _) :-
+ % these should have been expanded out by now
+ error("pd_cost__goal: unexpected bi_implication").
:- pred pd_cost__unify(set(prog_var)::in, unification::in, int::out) is det.
Index: compiler/polymorphism.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/polymorphism.m,v
retrieving revision 1.173
diff -u -d -r1.173 polymorphism.m
--- compiler/polymorphism.m 1999/10/15 03:45:01 1.173
+++ compiler/polymorphism.m 1999/10/21 14:10:50
@@ -1109,6 +1109,9 @@
polymorphism__process_goal(A0, A),
polymorphism__process_goal(B0, B),
polymorphism__process_goal(C0, C).
+polymorphism__process_goal_expr(bi_implication(_, _), _, _) -->
+ % these should have been expanded out by now
+ { error("polymorphism__process_goal_expr: unexpected bi_implication") }.
:- pred polymorphism__process_unify(prog_var, unify_rhs,
unify_mode, unification, unify_context, hlds_goal_info,
Index: compiler/post_typecheck.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/post_typecheck.m,v
retrieving revision 1.15
diff -u -d -r1.15 post_typecheck.m
--- compiler/post_typecheck.m 1999/10/03 04:15:25 1.15
+++ compiler/post_typecheck.m 1999/10/21 17:02:46
@@ -854,6 +854,9 @@
ModuleInfo, PredInfo, Then),
post_typecheck__resolve_data_cons_and_funcs(Else0,
ModuleInfo, PredInfo, Else).
+post_typecheck__resolve_data_cons_and_funcs(bi_implication(_, _) - _, _, _, _) :-
+ % these should have been expanded out by now
+ error("post_typecheck__resolve_data_cons_and_funcs: unexpected bi_implication").
:- pred post_typecheck__resolve_data_cons_and_funcs_list(list(hlds_goal)::in,
module_info::in, pred_info::in, list(hlds_goal)::out) is det.
Index: compiler/rl_exprn.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/rl_exprn.m,v
retrieving revision 1.11
diff -u -d -r1.11 rl_exprn.m
--- compiler/rl_exprn.m 1999/08/25 06:34:02 1.11
+++ compiler/rl_exprn.m 1999/10/21 16:11:30
@@ -668,6 +668,9 @@
{ error("rl_exprn__goal: pragma_c_code not yet implemented") }.
rl_exprn__goal(some(_, _, Goal) - _, Fail, Code) -->
rl_exprn__goal(Goal, Fail, Code).
+rl_exprn__goal(bi_implication(_, _) - _, _, _) -->
+ % these should have been expanded out by now
+ { error("rl_exprn__goal: unexpected bi_implication") }.
:- pred rl_exprn__cases(prog_var::in, list(case)::in, byte_tree::in,
byte_tree::in, byte_tree::out,
Index: compiler/saved_vars.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/saved_vars.m,v
retrieving revision 1.21
diff -u -d -r1.21 saved_vars.m
--- compiler/saved_vars.m 1999/10/15 03:45:06 1.21
+++ compiler/saved_vars.m 1999/10/24 14:42:34
@@ -42,7 +42,7 @@
:- import_module hlds_goal, hlds_out, goal_util, quantification, passes_aux.
:- import_module mode_util, prog_data, term, varset.
-:- import_module bool, list, set, map, std_util.
+:- import_module bool, list, set, map, std_util, require.
%-----------------------------------------------------------------------------%
@@ -137,6 +137,10 @@
GoalExpr0 = pragma_c_code(_, _, _, _, _, _, _),
Goal = GoalExpr0 - GoalInfo0,
SlotInfo = SlotInfo0
+ ;
+ GoalExpr0 = bi_implication(_, _),
+ % these should have been expanded out by now
+ error("saved_vars_in_goal: unexpected bi_implication")
),
!.
@@ -373,6 +377,10 @@
saved_vars_delay_goal(Goals0, Construct, Var,
IsNonLocal, SlotInfo3, Goals1, SlotInfo),
Goals = [Goal1 | Goals1]
+ ;
+ Goal0Expr = bi_implication(_, _),
+ % these should have been expanded out by now
+ error("saved_vars_delay_goal: unexpected bi_implication")
)
;
saved_vars_delay_goal(Goals0, Construct, Var, IsNonLocal,
Index: compiler/simplify.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/simplify.m,v
retrieving revision 1.72
diff -u -d -r1.72 simplify.m
--- compiler/simplify.m 1999/10/15 03:45:06 1.72
+++ compiler/simplify.m 1999/10/21 16:14:38
@@ -1059,6 +1059,10 @@
Goal = Goal0
).
+simplify__goal_2(bi_implication(_, _), _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("simplify__goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred simplify__process_compl_unify(prog_var, prog_var,
Index: compiler/store_alloc.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/store_alloc.m,v
retrieving revision 1.69
diff -u -d -r1.69 store_alloc.m
--- compiler/store_alloc.m 1999/07/13 08:53:31 1.69
+++ compiler/store_alloc.m 1999/10/21 16:15:08
@@ -206,6 +206,10 @@
store_alloc_in_goal_2(pragma_c_code(A, B, C, D, E, F, G), Liveness, _, _,
_, pragma_c_code(A, B, C, D, E, F, G), Liveness).
+store_alloc_in_goal_2(bi_implication(_, _), _, _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("store_alloc_in_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
:- pred store_alloc_in_conj(list(hlds_goal), liveness_info, set(prog_var),
Index: compiler/stratify.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/stratify.m,v
retrieving revision 1.20
diff -u -d -r1.20 stratify.m
--- compiler/stratify.m 1999/07/13 08:53:32 1.20
+++ compiler/stratify.m 1999/10/21 16:54:56
@@ -212,6 +212,9 @@
first_order_check_goal(generic_call(_Var, _Vars, _Modes, _Det),
_GInfo, _Negated, _WholeScc, _ThisPredProcId,
_Error, Module, Module) --> [].
+first_order_check_goal(bi_implication(_, _), _, _, _, _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("first_order_check_goal: unexpected bi_implication") }.
:- pred first_order_check_goal_list(list(hlds_goal), bool,
list(pred_proc_id), pred_proc_id, bool, module_info,
@@ -377,6 +380,9 @@
;
{ Module = Module0 }
).
+higher_order_check_goal(bi_implication(_, _), _, _, _, _, _, _, _, _) -->
+ % these should have been expanded out by now
+ { error("higher_order_check_goal: unexpected bi_implication") }.
:- pred higher_order_check_goal_list(list(hlds_goal), bool, set(pred_proc_id),
pred_proc_id, bool, bool, module_info, module_info,
@@ -817,6 +823,10 @@
check_goal1(pragma_c_code(_IsRec, _CPred, _CProc, _, _, _, _), Calls, Calls,
HasAT, HasAT, CallsHO, CallsHO).
+
+check_goal1(bi_implication(_, _), _, _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("check_goal1: unexpected bi_implication").
:- pred check_goal_list(list(hlds_goal), set(pred_proc_id), set(pred_proc_id),
set(pred_proc_id), set(pred_proc_id), bool, bool).
@@ -904,6 +914,9 @@
get_called_procs(Goal, Calls0, Calls).
get_called_procs(pragma_c_code(_IsRec, _CPred, _CProc, _, _, _, _),
Calls, Calls).
+get_called_procs(bi_implication(_, _), _, _) :-
+ % these should have been expanded out by now
+ error("get_called_procs: unexpected bi_implication").
:- pred check_goal_list(list(hlds_goal), list(pred_proc_id),
list(pred_proc_id)).
Index: compiler/switch_detection.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/switch_detection.m,v
retrieving revision 1.87
diff -u -d -r1.87 switch_detection.m
--- compiler/switch_detection.m 1999/08/31 04:16:13 1.87
+++ compiler/switch_detection.m 1999/10/21 16:20:06
@@ -218,6 +218,9 @@
detect_switches_in_goal_2(pragma_c_code(A,B,C,D,E,F,G), _, _, _, _,
pragma_c_code(A,B,C,D,E,F,G)).
+detect_switches_in_goal_2(bi_implication(_, _), _, _, _, _, _) :-
+ % these should have been expanded out by now
+ error("detect_switches_in_goal_2: unexpected bi_implication").
%-----------------------------------------------------------------------------%
Index: compiler/term_traversal.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/term_traversal.m,v
retrieving revision 1.11
diff -u -d -r1.11 term_traversal.m
--- compiler/term_traversal.m 1999/07/16 06:31:44 1.11
+++ compiler/term_traversal.m 1999/10/21 16:21:12
@@ -288,6 +288,10 @@
Info = Info3
).
+traverse_goal_2(bi_implication(_, _), _, _, _, _) :-
+ % these should have been expanded out by now
+ error("traverse_goal_2traverse_goal_2: unexpected bi_implication").
+
%-----------------------------------------------------------------------------%
% Traverse_conj should be invoked with a reversed list of goals.
Index: compiler/unique_modes.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/unique_modes.m,v
retrieving revision 1.58
diff -u -d -r1.58 unique_modes.m
--- compiler/unique_modes.m 1999/10/15 03:45:10 1.58
+++ compiler/unique_modes.m 1999/10/21 16:23:44
@@ -499,6 +499,10 @@
mode_info_unset_call_context,
mode_checkpoint(exit, "pragma_c_code").
+unique_modes__check_goal_2(bi_implication(_, _), _, _) -->
+ % these should have been expanded out by now
+ { error("unique_modes__check_goal_2: unexpected bi_implication") }.
+
:- pred unique_modes__check_call(pred_id, proc_id, list(prog_var), proc_id,
mode_info, mode_info).
:- mode unique_modes__check_call(in, in, in, out,
Index: compiler/unused_args.m
===================================================================
RCS file: /home/mercury1/repository/mercury/compiler/unused_args.m,v
retrieving revision 1.60
diff -u -d -r1.60 unused_args.m
--- compiler/unused_args.m 1999/08/13 01:43:13 1.60
+++ compiler/unused_args.m 1999/10/21 16:57:12
@@ -523,6 +523,10 @@
error("complicated unifications should only be var-var")
).
+traverse_goal(_, bi_implication(_, _), _, _) :-
+ % these should have been expanded out by now
+ error("traverse_goal: unexpected bi_implication").
+
% add PredProc - HeadVar as an alias for the same element of Args.
:- pred add_pred_call_arg_dep(pred_proc_id::in, list(prog_var)::in,
list(prog_var)::in, var_dep::in, var_dep::out) is det.
@@ -1286,6 +1290,10 @@
fixup_goal_expr(_ModuleInfo, _UnusedVars, _ProcCallInfo, no,
GoalExpr - GoalInfo, GoalExpr - GoalInfo) :-
GoalExpr = pragma_c_code(_, _, _, _, _, _, _).
+
+fixup_goal_expr(_, _, _, _, bi_implication(_, _) - _, _) :-
+ % these should have been expanded out by now
+ error("fixup_goal_expr: unexpected bi_implication").
% Remove useless unifications from a list of conjuncts.
:- pred fixup_conjuncts(module_info::in, list(prog_var)::in, proc_call_info::in,
--
Fergus Henderson <fjh at cs.mu.oz.au> | "I have always known that the pursuit
WWW: <http://www.cs.mu.oz.au/~fjh> | of excellence is a lethal habit"
PGP: finger fjh at 128.250.37.3 | -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions: mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------
More information about the developers
mailing list