Why always open array as parameter?

From: Wijck, Bart van <"Wijck,>
Date: Tue, 11 Dec 2001 15:07:12 +0100

All,

Why do I get an incompatible assignment on Do(f) when compiling the
following?

MODULE BarbB;

IMPORT StdLog;

VAR
        f : ARRAY 8 OF CHAR;

(*
--------------------------------------------------------------------------
*)
PROCEDURE Do(fid : ARRAY 8 OF CHAR);
BEGIN
        StdLog.String('SOMETHING'); StdLog.Ln;
END Do;

(*
--------------------------------------------------------------------------
*)
PROCEDURE Test;
BEGIN
        f := "123";
        Do(f); (* HERE *)
END Test;

(*
--------------------------------------------------------------------------
*)

END BarbB.

It's solved by making fid an open array. But why can't one pass fixed arrays
of the same size? Seems odd.

> ____________________________________
> Bart van Wijck
> Senior Business Development Consultant
> Compuware BV
> Telefoon: 020 311 88 57
> Fax : 020 311 88 01
> Mobiel : 06 54 35 23 76
>
>
--------------------------------------------

To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xy

To get a list of valid e-mail commands and instructions on their usage, send a message containing the word "help" to the above address.

Send any problem reports or questions related to this email list to the list owner at
   owner-blackbox{([at]})nowhere.xy
Received on Tue Dec 11 2001 - 14:07:12 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:27:46 UTC