def _remove_op_call_stack(self, main_program):
    "\n        Remove op's python call stack with redundant low-level error messages related to\n        transforamtions to avoid confusing users.\n        "
    assert isinstance(main_program, framework.Program)
    for block in main_program.blocks:
        for op in block.ops:
            if op.has_attr('op_callstack'):
                op._remove_attr('op_callstack')
    return main_program
Remove op's python call stack with redundant low-level error messages related to
transforamtions to avoid confusing users.
def _remove_op_call_stack(self, main_program):
    "\n        Remove op's python call stack with redundant low-level error messages related to\n        transforamtions to avoid confusing users.\n        "
    assert isinstance(main_program, framework.Program)
    for block in main_program.blocks:
        for op in block.ops:
            if op.has_attr('op_callstack'):
                op._remove_attr('op_callstack')
    return main_program