Non-trappable errors

Non-trappable errors are fatal errors that generally prevent further program execution.

If a non-trappable error occurs, neither WHENEVER instructions, nor TRY/CATCH blocks can trap the error.

In case of non-trappable error, the runtime system will do the following:
  1. In GUI mode, display a pop-up window with the error message,
  2. If STARTLOG() was previously called, write an error record to the log file,
  3. Print the error message to stderr,
  4. Stop the program.

Some non-trappable errors such as -1212 can occur at runtime initialization. In such case, the GUI error message box and STARTLOG() output cannot be done.

List of non-trappable FGL errors: -1212, -1260, -1320, -1326, -1328, -1332, -1337, -1338, -1340, -4448, -6000, -6200, -6203, -6204, -6205, -6206, -6207, -6208, -6216, -6217, -6220, -6221, -6222, -6223, -6301, -6302, -6312, -6313, -6316, -6327, -6330, -6366, -6367, -6368, -6606, -8003, -8006, -8007, -8024, -8026, -8070, -8088, -8092, -8107, -8113, -8114, -8126, -8127, -8128, -8130, -8132, -8134, -8135, -8300, -8301, -8303, -8400, -8401, -8500, -8501.

Some non-trappable errors may be trappable in a specific context. But as a general rule, consider the above errors always non-trappable.