× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



If I'm not wrong there is a 16 bytes boundary for return
variables in cl programs.
--- Vernon Hamberg <vhamberg@attbi.com> wrote:
> There's something in the knowledge base about character
> return values.
>
> >Question: How would a character string be returned to
> ILE CL/400 from ILE
> >C/400?
> >
> >Answer: Below is an example of how to return character
> data to a ILE
> >CL/400 module from a ILE C/400 module. Note that ILE
> C/400 handles
> >character strings as arrays. CL does not support arrays.
> The only way to
> >return data is through a structure.
> >
> >ILE CL/400 source:
> >
> >PGM
> >DCL VAR(&INCHAR) TYPE(*CHAR) LEN(4) VALUE('ONE ')
> >DCL VAR(&OUTCHAR) TYPE(*CHAR) LEN(4)
> >DCL VAR(&MSG) TYPE(*CHAR) LEN(4)
> >CALLPRC PRC('increment') PARM(&INCHAR) RTNVAL(&OUTCHAR)
> >DMPCLPGM
> >CHGVAR VAR(&MSG) VALUE(&OUTCHAR)
> >SNDMSG MSG(&MSG) TOUSR(STANLEY)
> >ENDPGM
> >
> >ILE C/400 Source:
> >
> >typedef struct {
> >char first;
> >char second;
> >char third;
> >char fourth;
> >} retstr;
> >
> >retstr increment(char *a)
> >{
> >retstr rtnval;
> >rtnval.first = 'T';
> >rtnval.second = 'W';
> >rtnval.third = 'O';
> >rtnval.fourth = ' ';
> >return rtnval;
> >}
>
> I did not like the individual characters in the struct. I
> found that it
> could be a char array inside the struct
>
> >typedef struct {
> >       char first??(4??);
> >} retstr;
>
> This means that APIs would have to return a struct (for
> character return
> values) to be used in CL.
>
> At 08:57 AM 4/1/02 -0500, you wrote:
> >This is a multipart message in MIME format.
> >--
> >[ Picked text/plain from multipart/alternative ]
> >How's about the prototype for the service program?
> >
> >Rob Berendt
> >--
> >"They that can give up essential liberty to obtain a
> little temporary
> >safety deserve neither liberty nor safety."
> >Benjamin Franklin
> >
> >
> >
> >
> >"Phil" <sublime78ska@attbi.com>
> >Sent by: midrange-l-admin@midrange.com
> >03/30/2002 10:34 AM
> >Please respond to midrange-l
> >
> >
> >         To:     "MIDRANGE-L" <MIDRANGE-L@midrange.com>
> >         cc:
> >         Fax to:
> >         Subject:        CALLPRC with RTNVAL
> >
> >
> >I'm having trouble with the data returned from a srvpgm
> which is called
> >from
> >a CL with CALLPRC:
> >
> >      PGM        parm(&parm)
> >      dcl &parm *char 121
> >
> >      if cond(%sst(&parm 1 1) *eq ' ') then(do)
> >        chgvar &parm value(' ')
> >        callprc prc(getParm) rtnval(&parm)
> >      enddo
> >
> >The srvpgm (RPG) returns the correct data, and works
> fine when called by
> >an
> >RPG pgm.  The srvpgm exports the parm.
> >
> >The problem is the value of parm is not correct.
> >
> >Can anyone tell me what I've got wrong?
> >
> >Thanks,
> >
> >Phil
> >
> >
> >
> >_______________________________________________
> >This is the Midrange Systems Technical Discussion
> (MIDRANGE-L) mailing
> >list
> >To post a message email: MIDRANGE-L@midrange.com
> >To subscribe, unsubscribe, or change list options,
> >visit:
> http://lists.midrange.com/cgi-bin/listinfo/midrange-l
> >or email: MIDRANGE-L-request@midrange.com
> >Before posting, please take a moment to review the
> archives
> >at http://archive.midrange.com/midrange-l.
> >
> >
> >
> >_______________________________________________
> >This is the Midrange Systems Technical Discussion
> (MIDRANGE-L) mailing list
> >To post a message email: MIDRANGE-L@midrange.com
> >To subscribe, unsubscribe, or change list options,
> >visit:
> http://lists.midrange.com/cgi-bin/listinfo/midrange-l
> >or email: MIDRANGE-L-request@midrange.com
> >Before posting, please take a moment to review the
> archives
> >at http://archive.midrange.com/midrange-l.
>
> _______________________________________________
> This is the Midrange Systems Technical Discussion
> (MIDRANGE-L) mailing list
> To post a message email: MIDRANGE-L@midrange.com
> To subscribe, unsubscribe, or change list options,
> visit:
> http://lists.midrange.com/cgi-bin/listinfo/midrange-l
> or email: MIDRANGE-L-request@midrange.com
> Before posting, please take a moment to review the
> archives
> at http://archive.midrange.com/midrange-l.
>


__________________________________________________
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.