Re: Calling RPGILE program from C
Charles Wilt <[email protected]>
| Newsgroups | gmane.comp.lang.as400.c |
|---|---|
| Message-ID | <CAJ=Tnc7R=bU1rsfqA_YyF_XyZ0HWJtF_oWBoS0+3m-a5NNWa_w@mail.gmail.com> |
Tony, IIRC, When they added linear main functionality, *PGM were allow to be reentrant. So at 6.1.. Charles On Wed, Oct 29, 2014 at 6:56 AM, Tony Cate <[email protected]> wrote: > I am building a trigger mediator and recursion is the issue. As a side note > Charles Wilt's note '...at v5r4 RPG programs aren't reentrant...' surprised > me. At what release are they reentrant? > > Anyway, I looked at Alan Campin's code. It seems really convoluted. > Wouldn't a pass thru C program calling a SRVPGM proc do the same thing? > > John, what do you mean by 'direct'? > > On Tue, Oct 28, 2014 at 5:23 PM, Jon Paris <[email protected]> > wrote: > > > Yup - I was going to suggest the same thing if he needed flexibility. Or > > just do it “direct” if not. > > > > > > Jon Paris > > > > www.partner400.com > > www.SystemiDeveloper.com > > > > On Oct 28, 2014, at 4:44 PM, Jon Paris <[email protected]> wrote: > > > > > Not being funny Tony - but if you are calling an RPG program to do the > > work then why bother with the C at all? > > > > > > > > > Jon Paris > > > > > > www.partner400.com > > > www.SystemiDeveloper.com > > > > > > On Oct 28, 2014, at 4:02 PM, Tony Cate <[email protected]> wrote: > > > > > >> First the code: > > >> > > >> *#include <stdio.h>* > > >> *#include <string.h>* > > >> > > >> *#include <decimal.h> > > >> #include <stdlib.h> > > >> > > >> typedef void RGTRIGCNTL(char[80], decimal(10,0)); > > >> > > >> #pragma linkage(RGTRIGCNTL,fetchable) > > >> > > >> int main(int argc, char *argv[]) > > >> { > > >> char *triggerInfo; > > >> decimal (10,0) triggerLen; > > >> > > >> triggerInfo = argv[1]; > > >> triggerLen = argv[2]; > > >> > > >> RGTRIGCNTL(triggerInfo, &triggerLen); > > >> }* > > >> > > >> *What's going on: trying to write a small C program to attach to file > > triggers.* > > >> > > >> Problems: > > >> > > >> pragma linkage won't allow 'OS' for a parameter. Everything I've read > > >> indicates that's what I want. The only "ID' compiler didn't barf on is > > >> 'fetchable', which is why its there. > > >> > > >> It compiles, but nothing happens when I try to step into RGTRIGCNTL. > > >> > > >> The Dev box is V5R4 (long story). > > >> > > >> The questions: > > >> > > >> Why can't I use 'OS' in linkage? Why isn't my program getting called? > > >> > > >> The last time I wrote a C program was in college, a looong time ago. > > >> -- > > >> *Tony Cate* | Senior Programmer/Analyst | 704.872.2458 x 126 > > >> [image: Auction Edge, Inc.] <http://www.auctionedge.com/> > > >> *AUCTION EDGE, INC.* | *Powering Independent Auctions* > > >> STATESVILLE, NC | 704.872.2458 > > >> -- > > >> This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) > > mailing list > > >> To post a message email: [email protected] > > >> To subscribe, unsubscribe, or change list options, > > >> visit: http://lists.midrange.com/mailman/listinfo/c400-l > > >> or email: [email protected] > > >> Before posting, please take a moment to review the archives > > >> at http://archive.midrange.com/c400-l. > > >> > > > > > > > -- > > This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) > > mailing list > > To post a message email: [email protected] > > To subscribe, unsubscribe, or change list options, > > visit: http://lists.midrange.com/mailman/listinfo/c400-l > > or email: [email protected] > > Before posting, please take a moment to review the archives > > at http://archive.midrange.com/c400-l. > > > > > > > -- > *Tony Cate* | Senior Programmer/Analyst | 704.872.2458 x 126 > [image: Auction Edge, Inc.] <http://www.auctionedge.com/> > *AUCTION EDGE, INC.* | *Powering Independent Auctions* > STATESVILLE, NC | 704.872.2458 > -- > This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) > mailing list > To post a message email: [email protected] > To subscribe, unsubscribe, or change list options, > visit: http://lists.midrange.com/mailman/listinfo/c400-l > or email: [email protected] > Before posting, please take a moment to review the archives > at http://archive.midrange.com/c400-l. > > -- This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list To post a message email: [email protected] To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/c400-l or email: [email protected] Before posting, please take a moment to review the archives at http://archive.midrange.com/c400-l.