RPG compiler converts type S to type P?

Posted by derek on Stack Overflow See other posts from Stack Overflow or by derek
Published on 2010-06-11T17:00:56Z Indexed on 2010/06/11 17:02 UTC
Read the original article Hit count: 434

Filed under:
|

Here is my situation: I have program A which looks like this:

Fmfile     IF   E           K DISK    USROPN
d grue            s                   like(dhseqn)
d
C     *ENTRY        PLIST
C                   PARM                    grue
c                   open      mfile
c*** do something with grue
c                   close     mfile
c                   eval      *inlr = *on

dhseqn is a 2,0 S field.

The compile listing shows me this:

 *RNF7031 DHSEQN            P(2,0)                 000200     1000002D
          GRUE              P(2,0)                 000200D     000500M     000700      000800M
                            BASED(_QRNL_PRM+)

And when I call program A with a parameter that has been declared as 2,0 S, I get a decimal data error.

Is this expected, or is this a compiler bug?

© Stack Overflow or respective owner

Related posts about iseries

Related posts about rpgle