• Subject: RE: Strange problem in RISC testing
  • From: Scott Mildenberger <Smildenber@xxxxxxxxxxxx>
  • Date: Tue, 19 Dec 2000 09:02:04 -0700

Jeff,

The times I have seen programs 'break' when going to RISC are instances
where programs are usually calling API's and don't have all the parameters
set correctly and some piece of memory is being corrupted.  On the CISC
system the memory that was being corrupted wasn't important but the layout
of memory on the RISC version is different and now something important is
being corrupted.  If you are calling any API's review the parameters very
carefully, if you can't see anything wrong then post here and maybe someone
can spot the problem.

Scott Mildenberger


> -----Original Message-----
> From: Jeff Crosby [mailto:jlcrosby@fwi.com]
> Sent: Tuesday, December 19, 2000 7:50 AM
> To: RPG400-L@midrange.com; IGNITE/400 Mailing List
> Subject: Strange problem in RISC testing
> 
> 
> I'm doing some testing on a new 270 running V4R5.  I've brought
> everything over from my CISC system.  Everything I've tested 
> (up to now)
> has worked without a hitch, save for 1 program.
> 
> This program (LV27) prints vendor address labels.  Within the 
> program I
> use a procedure as follows:
> 
>       Eval     VNDNM = MixedCase(VNDNM)
> 
> to convert the name and address fields to mixed case.  When I 
> run it, I
> almost always get the following error in the job log (statements
> shortened to avoid wrapping):
>                                                               
>                  
>      Message . . . . :   Message  received for RPG procedure 
>        LV27 (C G D F).       
>      Cause . . . . . :   Message  was received by RPG procedure LV27 
>        in program DILGARD/LV27 at statement
> 010400.                                           
> 
> Statement 010400 is one statement beyond the end of the program.  The
> immediately previous message in the job log says:
>                                                               
>                  
>      Message . . . . :   Function check. MCH3601 unmonitored by 
>        QDBGETM at statement *N, instruction
> X'0957'.                                          
>      Cause . . . . . :   An escape exception message was sent to a 
>        program which did not monitor for that message. The full name 
>        of the program to which the unmonitored message was sent is 
>        QDBGETM.  At the time the message was sent the program was 
>        stopped at higher level language statement number(s) *N. If 
>        more than one statement number is shown, the program was a 
>        bound program.  Optimization does not allow a single statement 
>        number to be determined. If *N is shown as a value, it means 
>        the actual value was not available.        
> 
> The MCH3601 it is referring to is this:
>                                                               
>                 
>      Message . . . . :   Pointer not set for location
> referenced.                  
>      Cause . . . . . :   A pointer was used, either directly or as a 
>        basing pointer, that has not been set to an
> address.                               
> 
>                                                               
>                 
> Now for the strange part(s):
> 
> 1) If I run the program in debug mode, it works fine.  Every time.
> 
> 2) If I comment out the "MixedCase" procedure statements, it runs fine
> irrespective of debug mode.
> 
> 3) Once in a great while, the program will run partially through the
> name & address file before bombing.  I am assuming that it 
> has something
> to do with the MixedCase procedure, but I've used it for at least a
> couple of years on CISC with nary a problem.  And I use it in various
> programs, all of which work OK except for this one.
> 
> I have downloaded and applied every RPG PTF available.  I was on the
> latest group PTFs but noticed there are new group PTFs available just
> last week for Database, Hipers, Backup Recovery Solutions, and HTTP
> server, so I have all of those ordered.
> 
> Any help is appreciated.  Thanks.  I'm going to try debugging the
> program containing the procedure next.
> 
> -- 
> -Jeff
> The opinions expressed are my own and not necessarily 
> the opinion of my company.  Unless I say so.
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---

As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

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.