# vim: ts=8 sw=8 noexpandtab ft=make

# Automatically generated module dependencies for
# module `check_hlds.mode_constraints' in source file `mode_constraints.m'.
# Generated by Mercury compiler version rotd-2024-07-11
# configured for x86_64-pc-linux-gnu.

# RULE date_file_deps
# target group names:
#   dates_and_err
# source group names:
#   source
#   ancestors
#   long deps
#   short deps
#   type_repn self dep
#   type_repn ancestor dep
check_hlds.mode_constraints.optdate check_hlds.mode_constraints.trans_opt_date mode_constraints.err check_hlds.mode_constraints.c_date check_hlds.mode_constraints.java_date : \
		mode_constraints.m \
	\
		check_hlds.int0 \
	\
		assoc_list.int \
		bool.int \
		builtin.int \
		hlds.int \
		io.int \
		libs.int \
		list.int \
		map.int \
		maybe.int \
		mdbcomp.int \
		mode_robdd.int \
		multi_map.int \
		pair.int \
		parse_tree.int \
		private_builtin.int \
		require.int \
		robdd.int \
		set.int \
		solutions.int \
		sparse_bitset.int \
		string.int \
		term.int \
		varset.int \
		check_hlds.abstract_mode_constraints.int \
		check_hlds.build_mode_constraints.int \
		check_hlds.inst_lookup.int \
		check_hlds.mode_constraint_robdd.int \
		check_hlds.mode_ordering.int \
		check_hlds.mode_util.int \
		check_hlds.ordering_mode_constraints.int \
		check_hlds.prop_mode_constraints.int \
		hlds.goal_form.int \
		hlds.goal_path.int \
		hlds.hhf.int \
		hlds.hlds_clauses.int \
		hlds.hlds_dependency_graph.int \
		hlds.hlds_goal.int \
		hlds.hlds_module.int \
		hlds.hlds_pred.int \
		hlds.hlds_rtti.int \
		hlds.inst_graph.int \
		hlds.passes_aux.int \
		hlds.quantification.int \
		hlds.var_table_hlds.int \
		libs.dependency_graph.int \
		libs.globals.int \
		libs.options.int \
		mdbcomp.goal_path.int \
		mode_robdd.tfeirn.int \
		parse_tree.file_names.int \
		parse_tree.prog_data.int \
		parse_tree.prog_mode.int \
		parse_tree.set_of_var.int \
		parse_tree.vartypes.int \
	\
		analysis.int2 \
		array.int2 \
		bimap.int2 \
		bitmap.int2 \
		char.int2 \
		construct.int2 \
		cord.int2 \
		deconstruct.int2 \
		digraph.int2 \
		enum.int2 \
		getopt.int2 \
		integer.int2 \
		one_or_more.int2 \
		one_or_more_map.int2 \
		ops.int2 \
		pretty_printer.int2 \
		queue.int2 \
		recompilation.int2 \
		set_ordlist.int2 \
		set_tree234.int2 \
		stack.int2 \
		stream.int2 \
		term_context.int2 \
		time.int2 \
		transform_hlds.int2 \
		tree234.int2 \
		type_desc.int2 \
		unit.int2 \
		univ.int2 \
		analysis.framework.int2 \
		analysis.operations.int2 \
		check_hlds.proc_requests.int2 \
		hlds.const_struct.int2 \
		hlds.goal_mode.int2 \
		hlds.hlds_args.int2 \
		hlds.hlds_class.int2 \
		hlds.hlds_cons.int2 \
		hlds.hlds_data.int2 \
		hlds.hlds_inst_mode.int2 \
		hlds.hlds_llds.int2 \
		hlds.hlds_promise.int2 \
		hlds.instmap.int2 \
		hlds.pred_name.int2 \
		hlds.pred_table.int2 \
		hlds.special_pred.int2 \
		hlds.status.int2 \
		libs.file_util.int2 \
		libs.op_mode.int2 \
		libs.optimization_options.int2 \
		libs.polyhedron.int2 \
		libs.trace_params.int2 \
		mdbcomp.feedback.int2 \
		mdbcomp.prim_data.int2 \
		mdbcomp.program_representation.int2 \
		mdbcomp.sym_name.int2 \
		parse_tree.error_spec.int2 \
		parse_tree.maybe_error.int2 \
		parse_tree.module_qual.int2 \
		parse_tree.prog_data_event.int2 \
		parse_tree.prog_data_foreign.int2 \
		parse_tree.prog_data_pragma.int2 \
		parse_tree.prog_data_used_modules.int2 \
		parse_tree.prog_foreign.int2 \
		parse_tree.prog_item.int2 \
		parse_tree.prog_rename.int2 \
		parse_tree.prog_util.int2 \
		parse_tree.var_table.int2 \
		recompilation.record_uses.int2 \
		transform_hlds.term_constr_errors.int2 \
		transform_hlds.term_constr_main_types.int2 \
		transform_hlds.term_errors.int2 \
		transform_hlds.term_util.int2 \
		parse_tree.module_qual.mq_info.int2 \
	\
		check_hlds.mode_constraints.int \
	\
		check_hlds.int

# RULE objs_on_mihs
check_hlds.mode_constraints.pic_o check_hlds.mode_constraints.$O : \
		analysis.mih \
		array.mih \
		assoc_list.mih \
		bimap.mih \
		bitmap.mih \
		bool.mih \
		builtin.mih \
		char.mih \
		check_hlds.mih \
		construct.mih \
		cord.mih \
		deconstruct.mih \
		digraph.mih \
		enum.mih \
		getopt.mih \
		hlds.mih \
		integer.mih \
		io.mih \
		libs.mih \
		list.mih \
		map.mih \
		maybe.mih \
		mdbcomp.mih \
		mode_robdd.mih \
		multi_map.mih \
		one_or_more.mih \
		one_or_more_map.mih \
		ops.mih \
		pair.mih \
		parse_tree.mih \
		pretty_printer.mih \
		private_builtin.mih \
		queue.mih \
		recompilation.mih \
		require.mih \
		robdd.mih \
		set.mih \
		set_ordlist.mih \
		set_tree234.mih \
		solutions.mih \
		sparse_bitset.mih \
		stack.mih \
		stream.mih \
		string.mih \
		term.mih \
		term_context.mih \
		time.mih \
		transform_hlds.mih \
		tree234.mih \
		type_desc.mih \
		unit.mih \
		univ.mih \
		varset.mih \
		analysis.framework.mih \
		analysis.operations.mih \
		check_hlds.abstract_mode_constraints.mih \
		check_hlds.build_mode_constraints.mih \
		check_hlds.inst_lookup.mih \
		check_hlds.mode_constraint_robdd.mih \
		check_hlds.mode_ordering.mih \
		check_hlds.mode_util.mih \
		check_hlds.ordering_mode_constraints.mih \
		check_hlds.proc_requests.mih \
		check_hlds.prop_mode_constraints.mih \
		hlds.const_struct.mih \
		hlds.goal_form.mih \
		hlds.goal_mode.mih \
		hlds.goal_path.mih \
		hlds.hhf.mih \
		hlds.hlds_args.mih \
		hlds.hlds_class.mih \
		hlds.hlds_clauses.mih \
		hlds.hlds_cons.mih \
		hlds.hlds_data.mih \
		hlds.hlds_dependency_graph.mih \
		hlds.hlds_goal.mih \
		hlds.hlds_inst_mode.mih \
		hlds.hlds_llds.mih \
		hlds.hlds_module.mih \
		hlds.hlds_pred.mih \
		hlds.hlds_promise.mih \
		hlds.hlds_rtti.mih \
		hlds.inst_graph.mih \
		hlds.instmap.mih \
		hlds.passes_aux.mih \
		hlds.pred_name.mih \
		hlds.pred_table.mih \
		hlds.quantification.mih \
		hlds.special_pred.mih \
		hlds.status.mih \
		hlds.var_table_hlds.mih \
		libs.dependency_graph.mih \
		libs.file_util.mih \
		libs.globals.mih \
		libs.op_mode.mih \
		libs.optimization_options.mih \
		libs.options.mih \
		libs.polyhedron.mih \
		libs.trace_params.mih \
		mdbcomp.feedback.mih \
		mdbcomp.goal_path.mih \
		mdbcomp.prim_data.mih \
		mdbcomp.program_representation.mih \
		mdbcomp.sym_name.mih \
		mode_robdd.tfeirn.mih \
		parse_tree.error_spec.mih \
		parse_tree.file_names.mih \
		parse_tree.maybe_error.mih \
		parse_tree.module_qual.mih \
		parse_tree.prog_data.mih \
		parse_tree.prog_data_event.mih \
		parse_tree.prog_data_foreign.mih \
		parse_tree.prog_data_pragma.mih \
		parse_tree.prog_data_used_modules.mih \
		parse_tree.prog_foreign.mih \
		parse_tree.prog_item.mih \
		parse_tree.prog_mode.mih \
		parse_tree.prog_rename.mih \
		parse_tree.prog_util.mih \
		parse_tree.set_of_var.mih \
		parse_tree.var_table.mih \
		parse_tree.vartypes.mih \
		recompilation.record_uses.mih \
		transform_hlds.term_constr_errors.mih \
		transform_hlds.term_constr_main_types.mih \
		transform_hlds.term_errors.mih \
		transform_hlds.term_util.mih \
		parse_tree.module_qual.mq_info.mih

# RULE mh_and_mih_on_c
check_hlds.mode_constraints.mh check_hlds.mode_constraints.mih : check_hlds.mode_constraints.c

ifeq ($(findstring java,$(GRADE)),java)

# RULE module_dep_on_java
check_hlds.mode_constraints.module_dep : jmercury/check_hlds__mode_constraints.java

else

# RULE module_dep_on_c
check_hlds.mode_constraints.module_dep : check_hlds.mode_constraints.c

endif # conditional fragment

# RULE self_and_parent_date_deps
# target group names:
#   date files
# source group names:
#   source
#   ancestor int0
#   long dep int3s
#   short dep int3s
check_hlds.mode_constraints.date check_hlds.mode_constraints.date0 check_hlds.date : \
		mode_constraints.m \
	\
		check_hlds.int0 \
	\
		assoc_list.int3 \
		bool.int3 \
		builtin.int3 \
		hlds.int3 \
		io.int3 \
		libs.int3 \
		list.int3 \
		map.int3 \
		maybe.int3 \
		mdbcomp.int3 \
		mode_robdd.int3 \
		multi_map.int3 \
		pair.int3 \
		parse_tree.int3 \
		private_builtin.int3 \
		require.int3 \
		robdd.int3 \
		set.int3 \
		solutions.int3 \
		sparse_bitset.int3 \
		string.int3 \
		term.int3 \
		varset.int3 \
		check_hlds.abstract_mode_constraints.int3 \
		check_hlds.build_mode_constraints.int3 \
		check_hlds.inst_lookup.int3 \
		check_hlds.mode_constraint_robdd.int3 \
		check_hlds.mode_ordering.int3 \
		check_hlds.mode_util.int3 \
		check_hlds.ordering_mode_constraints.int3 \
		check_hlds.prop_mode_constraints.int3 \
		hlds.goal_form.int3 \
		hlds.goal_path.int3 \
		hlds.hhf.int3 \
		hlds.hlds_clauses.int3 \
		hlds.hlds_dependency_graph.int3 \
		hlds.hlds_goal.int3 \
		hlds.hlds_module.int3 \
		hlds.hlds_pred.int3 \
		hlds.hlds_rtti.int3 \
		hlds.inst_graph.int3 \
		hlds.passes_aux.int3 \
		hlds.quantification.int3 \
		hlds.var_table_hlds.int3 \
		libs.dependency_graph.int3 \
		libs.globals.int3 \
		libs.options.int3 \
		mdbcomp.goal_path.int3 \
		mode_robdd.tfeirn.int3 \
		parse_tree.file_names.int3 \
		parse_tree.prog_data.int3 \
		parse_tree.prog_mode.int3 \
		parse_tree.set_of_var.int3 \
		parse_tree.vartypes.int3 \
	\
		analysis.int3 \
		array.int3 \
		bimap.int3 \
		bitmap.int3 \
		char.int3 \
		construct.int3 \
		cord.int3 \
		deconstruct.int3 \
		digraph.int3 \
		enum.int3 \
		getopt.int3 \
		integer.int3 \
		one_or_more.int3 \
		one_or_more_map.int3 \
		ops.int3 \
		pretty_printer.int3 \
		queue.int3 \
		recompilation.int3 \
		set_ordlist.int3 \
		set_tree234.int3 \
		stack.int3 \
		stream.int3 \
		term_context.int3 \
		time.int3 \
		transform_hlds.int3 \
		tree234.int3 \
		type_desc.int3 \
		unit.int3 \
		univ.int3 \
		analysis.framework.int3 \
		analysis.operations.int3 \
		check_hlds.proc_requests.int3 \
		hlds.const_struct.int3 \
		hlds.goal_mode.int3 \
		hlds.hlds_args.int3 \
		hlds.hlds_class.int3 \
		hlds.hlds_cons.int3 \
		hlds.hlds_data.int3 \
		hlds.hlds_inst_mode.int3 \
		hlds.hlds_llds.int3 \
		hlds.hlds_promise.int3 \
		hlds.instmap.int3 \
		hlds.pred_name.int3 \
		hlds.pred_table.int3 \
		hlds.special_pred.int3 \
		hlds.status.int3 \
		libs.file_util.int3 \
		libs.op_mode.int3 \
		libs.optimization_options.int3 \
		libs.polyhedron.int3 \
		libs.trace_params.int3 \
		mdbcomp.feedback.int3 \
		mdbcomp.prim_data.int3 \
		mdbcomp.program_representation.int3 \
		mdbcomp.sym_name.int3 \
		parse_tree.error_spec.int3 \
		parse_tree.maybe_error.int3 \
		parse_tree.module_qual.int3 \
		parse_tree.prog_data_event.int3 \
		parse_tree.prog_data_foreign.int3 \
		parse_tree.prog_data_pragma.int3 \
		parse_tree.prog_data_used_modules.int3 \
		parse_tree.prog_foreign.int3 \
		parse_tree.prog_item.int3 \
		parse_tree.prog_rename.int3 \
		parse_tree.prog_util.int3 \
		parse_tree.var_table.int3 \
		recompilation.record_uses.int3 \
		transform_hlds.term_constr_errors.int3 \
		transform_hlds.term_constr_main_types.int3 \
		transform_hlds.term_errors.int3 \
		transform_hlds.term_util.int3 \
		parse_tree.module_qual.mq_info.int3

# RULE self_and_parent_date0_deps
# target group names:
#   date0s
# source group names:
#   source
#   long dep int3s
#   short dep int3s
check_hlds.mode_constraints.date0 check_hlds.date0 : \
		mode_constraints.m \
	\
		assoc_list.int3 \
		bool.int3 \
		builtin.int3 \
		hlds.int3 \
		io.int3 \
		libs.int3 \
		list.int3 \
		map.int3 \
		maybe.int3 \
		mdbcomp.int3 \
		mode_robdd.int3 \
		multi_map.int3 \
		pair.int3 \
		parse_tree.int3 \
		private_builtin.int3 \
		require.int3 \
		robdd.int3 \
		set.int3 \
		solutions.int3 \
		sparse_bitset.int3 \
		string.int3 \
		term.int3 \
		varset.int3 \
		check_hlds.abstract_mode_constraints.int3 \
		check_hlds.build_mode_constraints.int3 \
		check_hlds.inst_lookup.int3 \
		check_hlds.mode_constraint_robdd.int3 \
		check_hlds.mode_ordering.int3 \
		check_hlds.mode_util.int3 \
		check_hlds.ordering_mode_constraints.int3 \
		check_hlds.prop_mode_constraints.int3 \
		hlds.goal_form.int3 \
		hlds.goal_path.int3 \
		hlds.hhf.int3 \
		hlds.hlds_clauses.int3 \
		hlds.hlds_dependency_graph.int3 \
		hlds.hlds_goal.int3 \
		hlds.hlds_module.int3 \
		hlds.hlds_pred.int3 \
		hlds.hlds_rtti.int3 \
		hlds.inst_graph.int3 \
		hlds.passes_aux.int3 \
		hlds.quantification.int3 \
		hlds.var_table_hlds.int3 \
		libs.dependency_graph.int3 \
		libs.globals.int3 \
		libs.options.int3 \
		mdbcomp.goal_path.int3 \
		mode_robdd.tfeirn.int3 \
		parse_tree.file_names.int3 \
		parse_tree.prog_data.int3 \
		parse_tree.prog_mode.int3 \
		parse_tree.set_of_var.int3 \
		parse_tree.vartypes.int3 \
	\
		analysis.int3 \
		array.int3 \
		bimap.int3 \
		bitmap.int3 \
		char.int3 \
		construct.int3 \
		cord.int3 \
		deconstruct.int3 \
		digraph.int3 \
		enum.int3 \
		getopt.int3 \
		integer.int3 \
		one_or_more.int3 \
		one_or_more_map.int3 \
		ops.int3 \
		pretty_printer.int3 \
		queue.int3 \
		recompilation.int3 \
		set_ordlist.int3 \
		set_tree234.int3 \
		stack.int3 \
		stream.int3 \
		term_context.int3 \
		time.int3 \
		transform_hlds.int3 \
		tree234.int3 \
		type_desc.int3 \
		unit.int3 \
		univ.int3 \
		analysis.framework.int3 \
		analysis.operations.int3 \
		check_hlds.proc_requests.int3 \
		hlds.const_struct.int3 \
		hlds.goal_mode.int3 \
		hlds.hlds_args.int3 \
		hlds.hlds_class.int3 \
		hlds.hlds_cons.int3 \
		hlds.hlds_data.int3 \
		hlds.hlds_inst_mode.int3 \
		hlds.hlds_llds.int3 \
		hlds.hlds_promise.int3 \
		hlds.instmap.int3 \
		hlds.pred_name.int3 \
		hlds.pred_table.int3 \
		hlds.special_pred.int3 \
		hlds.status.int3 \
		libs.file_util.int3 \
		libs.op_mode.int3 \
		libs.optimization_options.int3 \
		libs.polyhedron.int3 \
		libs.trace_params.int3 \
		mdbcomp.feedback.int3 \
		mdbcomp.prim_data.int3 \
		mdbcomp.program_representation.int3 \
		mdbcomp.sym_name.int3 \
		parse_tree.error_spec.int3 \
		parse_tree.maybe_error.int3 \
		parse_tree.module_qual.int3 \
		parse_tree.prog_data_event.int3 \
		parse_tree.prog_data_foreign.int3 \
		parse_tree.prog_data_pragma.int3 \
		parse_tree.prog_data_used_modules.int3 \
		parse_tree.prog_foreign.int3 \
		parse_tree.prog_item.int3 \
		parse_tree.prog_rename.int3 \
		parse_tree.prog_util.int3 \
		parse_tree.var_table.int3 \
		recompilation.record_uses.int3 \
		transform_hlds.term_constr_errors.int3 \
		transform_hlds.term_constr_main_types.int3 \
		transform_hlds.term_errors.int3 \
		transform_hlds.term_util.int3 \
		parse_tree.module_qual.mq_info.int3

# RULE foreign_deps_for_mh
check_hlds.mode_constraints.$O check_hlds.mode_constraints.pic_o : \
		array.mh \
		bitmap.mh \
		io.mh \
		string.mh \
		time.mh \
		io.stream_ops.mh

# RULE int0_on_date0
check_hlds.mode_constraints.int0 : check_hlds.mode_constraints.date0
	@:

# RULE int_on_date
check_hlds.mode_constraints.int : check_hlds.mode_constraints.date
	@:

# RULE int2_on_date
check_hlds.mode_constraints.int2 : check_hlds.mode_constraints.date
	@:

# RULE int3_on_date3
check_hlds.mode_constraints.int3 : check_hlds.mode_constraints.date3
	@:

# RULE opt_on_opt_date
check_hlds.mode_constraints.opt : check_hlds.mode_constraints.optdate
	@:

# RULE trans_opt_on_trans_opt_date
check_hlds.mode_constraints.trans_opt : check_hlds.mode_constraints.trans_opt_date
	@:

# RULE date0_on_src
check_hlds.mode_constraints.date0 : mode_constraints.m
	$(MCPI) $(ALL_GRADEFLAGS) $(ALL_MCPIFLAGS) check_hlds.mode_constraints

# RULE date_on_src
check_hlds.mode_constraints.date : mode_constraints.m
	$(MCI) $(ALL_GRADEFLAGS) $(ALL_MCIFLAGS) check_hlds.mode_constraints

# RULE date3_on_src
check_hlds.mode_constraints.date3 : mode_constraints.m
	$(MCSI) $(ALL_GRADEFLAGS) $(ALL_MCSIFLAGS) check_hlds.mode_constraints

# RULE opt_date_on_src
check_hlds.mode_constraints.optdate : mode_constraints.m
	$(MCOI) $(ALL_GRADEFLAGS) $(ALL_MCOIFLAGS) check_hlds.mode_constraints

# RULE trans_opt_date_on_src
check_hlds.mode_constraints.trans_opt_date : mode_constraints.m
	$(MCTOI) $(ALL_GRADEFLAGS) $(ALL_MCTOIFLAGS) check_hlds.mode_constraints

# RULE c_date_on_src
check_hlds.mode_constraints.c_date : mode_constraints.m
	$(MCG) $(ALL_GRADEFLAGS) $(ALL_MCGFLAGS) check_hlds.mode_constraints $(ERR_REDIRECT)

# RULE java_date_on_src
check_hlds.mode_constraints.java_date : mode_constraints.m
	$(MCG) $(ALL_GRADEFLAGS) $(ALL_MCGFLAGS) --java-only check_hlds.mode_constraints $(ERR_REDIRECT)

