RPG (IBM i / AS/400) · Runtime error

MCH3601

What does MCH3601 mean in RPG (IBM i / AS/400)?

A pointer was used, directly or as a basing pointer, that was never set to a valid address. Common triggers are a parameter size mismatch between calling and called programs, an optional parameter the caller did not supply, or a function that returns a pointer without a match and the return value was used without checking it.

MCH3601IBM i / OS/400 · ILE RPG

Condition

A pointer was used, directly or as a basing pointer, that was never set to a valid address. Common triggers are a parameter size mismatch between calling and called programs, an optional parameter the caller did not supply, or a function that returns a pointer without a match and the return value was used without checking it.

Fix

Start from the failing statement in the job log and work backward through every CALL, CALLB, and CALLP involved, checking parameter counts and lengths on both sides. Confirm every optional parameter is tested before use, and that any pointer-returning call is checked for a null result before dereferencing it.

Related runtime error