The root cause of the problem that caused the programmer not to receive breakpoints in the MRO environment was due to the program being Optimized. Certain breakpoints were not honored while other breakpoints worked fine after we discovered the problem. The symptom of this case was misleading since breakpoints set at #1 or the first line of the procedure division were not honored. Only after we started monitoring by transaction we started to get brarkpoints that the root cause of the problem was discovered.
With the latest more efficient IBM compilers the behavior is more unpredictable.
See the R 10 documentation Topic Symbolic Support for Optimized Applications
Please recompile and link without the Optimization parameter.
CA Application Quality and Testing Tools supports programs that have been optimized, either by the COBOL compiler's OPTIMIZE option or by CA Optimizer or CA Optimizer/II. However, debugging and post mortem analysis of these programs can sometimes result in unexpected behavior.
Often as part of the optimization process, a compiler will relocate individual instructions, statements, or even entire paragraphs so that the optimized program will run more efficiently. This means that some or all of the instructions generated for a given statement may be moved to another statement, or that some or all of the statements in a paragraph may be moved to another paragraph. When this type of optimization occurs, the resulting object program and corresponding listing may not accurately represent the relationship between the source statements and their generated object code, or even between a paragraph label and the statements contained within the paragraph. As a result, there may be times when the breakpoint intercept does not occur, or when the wrong sequence of statements appears to be executed while single-stepping, or when the abending object code does not correspond to the correct source statement. There may also be times when the debugger appears to highlight the wrong statement at a breakpoint intercept or the dump analysis identifies the wrong statement as the abending source statement.