{: test a compilation error occurs if not all parameters in a group
   share the same type }

{$d+}
program e113( output );

type
   arrayType =   array['1'..'9'] of integer;

var
   aci, aci1 : arrayType;
   aci2      : array['1'..'9'] of integer;

   aii : array[1..9] of integer;

procedure test(var aa1, aa2: array[lo..hi :char ] of integer);
var
   z   : char;
begin
   z := lo;
   aa1[z] := 3;
   aa2[lo] := 3;
end;

begin {e113}

   test(aci,aci1);    { OK }
   test(aci, aci2);   { !!! 2nd param has different type }
   writeln( 'fails: conformant array group type error not detected' );

end. { e113 }

