I've got an ILE RPG program that calls service program. The service program is composed of one module, written in ILE C.
I compile the C module with the usual CRTCMOD DBGVIEW(*ALL), and then do the CRTSRVPGM command. All's fine.
I compile the RPGLE program with CRTRPGMOD DBGVIEW(*ALL), and then do a CRTPGM command, binding to the service program. All's fine.
I start the debugger on the RPG program, and set a breakpoint where I want to call the C function. All's fine.
I call the RPGLE program. The breakpoint trips, and I see the RPGLE program displayed. I press F22 to drill into the service program, and the debugger tells me source is unavailable.
How does THAT happen? The ILE C module information in DSPSRVPGM shows DBGVIEW(*ALL).