Ernest Hill ([log in to unmask]) wrote: : Does anyone know how the COBOL trap mechanism is supposed to work within a : COBOL subroutine which is called from within a PASCAL TRY-RECOVER block. The : COBOL manual says "Pascal TRY/RECOVER may not work for RANGE errors". : Whatever that means. It's been a long time since I wrote that stuff and worked on MPE/iX. The comment about range errors is probably related to the fact that COBOL trap mechanism uses them for ON SIZE ERROR and $BOUNDS. : I am setting the COBRUNTIME var to MCCCCC which should cause the subroutine : to print a message and continue when an error occurs. This is not happening. : Instead the subroutine is aborting and I am ending up in the RECOVER block. : If I take the TRY-RECOVER out of the PASCAL program, then an error : message is printed and the subroutine continues. I think the COBOL trap handler detects the presence of the RECOVER block and doesn't go into the COBOL part. : This is not what appeared to have been what happened many moons ago. : Does anyone know what the correct behaviour is? : I have a call into HP, but any input would be appreciated. : Ernest Hill What was the escapecode? Does it match any in pasesc.pub.sys? : TRY : savepascaltraps; : coboltrap; : UE0BUFFERS (trans_number : restorepascaltraps; : RECOVER : writeln('In Recovery', escapecode);