% The C code generated for this the predicate type_define_in_runtime/1 % declares a local variable that shadows one of the headvars. % % Compile with, e.g. % % mmc --grade hlc.gc --make shadowed_decl.o % % This was first noticed with rotd-2009-03-09 % % shadowed_headvar.m: In function 'shadowed_headvar__type_defined_in_runtime_1_p_0': % shadowed_headvar.m:51: warning: declaration of 'shadowed_headvar__HeadVar__1_1' shadows a parameter % shadowed_headvar.m:25: warning: shadowed declaration is here :- module shadowed_headvar. :- interface. :- import_module list. :- type name == string. :- type e_type ---> e_bool ; e_int ; e_float ; e_string ; e_set(e_type) ; e_contig_array(e_type, e_type) ; e_contig_array2d(e_type, e_type, e_type) ; e_contig_array3d(e_type, e_type, e_type, e_type) ; e_assoc_array(e_type, e_type) ; e_tuple(list(e_type)) ; e_record(list(e_record_field)) ; e_flat_enum(string). :- type e_record_field ---> e_record_field(name, e_type). :- pred type_defined_in_runtime(e_type::in) is semidet. :- implementation. type_defined_in_runtime(e_bool). type_defined_in_runtime(e_int). type_defined_in_runtime(e_float). type_defined_in_runtime(e_string). type_defined_in_runtime(e_set(e_bool)). type_defined_in_runtime(e_set(e_int)). type_defined_in_runtime(e_set(e_float)). type_defined_in_runtime(e_set(e_string)). type_defined_in_runtime(e_contig_array(e_int, e_bool)). type_defined_in_runtime(e_contig_array(e_int, e_int)). type_defined_in_runtime(e_contig_array(e_int, e_float)). type_defined_in_runtime(e_contig_array(e_int, e_string)). type_defined_in_runtime(e_contig_array(e_int, e_set(e_int))). type_defined_in_runtime(e_contig_array2d(e_int, e_int, e_bool)). type_defined_in_runtime(e_contig_array2d(e_int, e_int, e_int)). type_defined_in_runtime(e_contig_array2d(e_int, e_int, e_float)). type_defined_in_runtime(e_contig_array2d(e_int, e_int, e_string)). type_defined_in_runtime(e_contig_array2d(e_int, e_int, e_set(e_int))). type_defined_in_runtime(e_contig_array3d(e_int, e_int, e_int, e_bool)). type_defined_in_runtime(e_contig_array3d(e_int, e_int, e_int, e_int)). type_defined_in_runtime(e_contig_array3d(e_int, e_int, e_int, e_float)). type_defined_in_runtime(e_contig_array3d(e_int, e_int, e_int, e_string)). type_defined_in_runtime(e_contig_array3d(e_int, e_int, e_int, e_set(e_int))).