View previous topic :: View next topic
|
Author |
Message |
bhim_s
New User
Joined: 19 Sep 2006 Posts: 46 Location: Australia
|
|
|
|
Hi,
I am working on the change for old Pl1 sources to accommodate the New Enterprise Pl1 compiler. While compiling of a source with the new enterprise PL1 compiler, have got the following error...
Code: |
Message Statement Message Description
IBM1934I S 1544 If a parameter is a structure with nonconstant
extents, only matching structures are supported as
arguments.
|
Following is statement on line 1544
Code: |
1544 | VPAX = AVERAGE(AB611,T611,RTCODE,'ABC'); |
Following the way variables declared which are used in above statement.
Code: |
DCL VPAX FIXED BIN(31) INIT(0);
DCL 1 AB611(MAX61),
2 ETS CHAR(4) INIT((MAX61)(4)' '),
2 ONST PIC'(7)9' INIT((MAX61)0);
DCL T611 FIXED BIN(31) INIT(0);
DCL RTCODE CHAR(4);
DCL AVERAGE EXT ENTRY(1 (*),
2 CHAR(4),
2 FIXED BIN(31)
FIXED BIN(31),
CHAR(*),
CHAR(*))
RETURNS(FIXED BIN(31)); |
.
Please..could any one help me to understand the error and possible solution for this.
Thanks |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Does the manual help?
Quote: |
IBM1934I S
If a parameter is a structure with nonconstant extents, only matching structures are supported as arguments.
Explanation:
Assign the structure to a temporary and pass the temporary, or omit the parameter description in the entry declaration. |
|
|
Back to top |
|
|
bhim_s
New User
Joined: 19 Sep 2006 Posts: 46 Location: Australia
|
|
|
|
I forgot to tell that I have test "Assign the structure to a temporary and pass the temporary" but this doesn't help. I can not Omit the parameter description in the entry declaration. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
Since you're not using a structure now, what happened when you did define a structure, populate it, and pass it? |
|
Back to top |
|
|
bhim_s
New User
Joined: 19 Sep 2006 Posts: 46 Location: Australia
|
|
|
|
Thanks Robert for having the concern about my query. I think I have got the solution,
Actually If you will see the first paramerter defined in the external entry AVERAGE
DCL AVERAGE EXT ENTRY(1 (*),
2 CHAR(4),
2 FIXED BIN(31).....
is having the data type FIXED BIN(31) on level2 while in the structure AB611 which is passed first in AVERAGE
VPAX = AVERAGE(AB611......);
having the variable 2 ONST PIC'(7)9' INIT((MAX61)0); on level2 with different datatype format PIC'(7)9'. I have changed this with Fixed Bin(31) as ...
2 ONST FIXED BIN(31) INIT((MAX61)0);
This change removed the error mentioned above.I am testing it against production.Please correct me if I am not on the right track. |
|
Back to top |
|
|
|