|
As you're intercepting the CRTBND* couldn't you just break this up into individual CRTxxxMOD and CRTPGM steps. This should allow you access to the *MODULE for any last minute fixups (if I'm following you correctly). As for the CPF5D23 I must admit I ran into the same little problem on my first attempt :-) Removing and adding the member cleans it up though. Bruce Vining "Hewitt, Rory" <rory.hewitt@xxxx om> To Sent by: <midrange-l@xxxxxxxxxxxx> midrange-l-bounce cc s@xxxxxxxxxxxx Subject Re: Re: IBM Precompiler API help 07/07/2005 03:26 PM Please respond to Midrange Systems Technical Discussion Bruce, Thanks very much. Your example works for me too, so must be something in my code... :-( Perhaps I'm being too tricky - my precompiler runs due to a routing entry and retrieves the compile message and then calls an RPG program to copy the source from the specified source member into a work array, where it's parsed. The parsing picks up comments in the source which can instruct the precompiler to change the eventual compile command, run additional CL commands before/after the compilation, include /COPY members in CL programs and do scan/replace processing in the source. It then copies the output source array into a source member in a file in QTEMP. The original compile command is changed to point to this source member and the precompiler reroutes the job to QCMDB. The trouble is, what I wanted was to get to the temporary module before it's bound into a program and change it (using QLICOBJD) so that it says that it was created from the original source member, not the temporary source member. Perhaps my reading of the file (in your example, the VINING/QCLSRC file) into the array has changed it sufficiently for the precompiler API to think that it's changed... Certainly I'm not updating the file in any way prior to calling the API's. Anyway, I kind of gave up on that bit - the rest of the precompiler works fine, so I can have my copied CL source and scan/replace processing... And as long as I use DBGVIEW(*LIST) I can still debug the programs. Thanks a lot for the response... Rory p.s. I did find one weird thing. I was running the precompiler on a test CL source member. It kept giving me the CPF5D23 error, so I gave up. However, I now can't compile the program at all! Even when I simply use the CRTBNDCL program with NO precompiler or anything, I still get the CPF5D23 error message. I assume that the precompiler API's have cached some data somewhere so whenever I try to compile the member, it thinks the precompiler API's should still be called... -- This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/midrange-l or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/midrange-l.
As an Amazon Associate we earn from qualifying purchases.
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.