Intel® Fortran Compiler Classic and Intel® Fortran Compiler Developer Guide and Reference

ID 767251
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

Understand Runtime Errors

During execution, your program may encounter errors or exception conditions. These conditions can result from any of the following:

  • Errors that occur during I/O operations.

  • Invalid input data.

  • Argument errors in calls to the mathematical library.

  • Arithmetic errors.

  • Other system-detected errors.

The Intel® Fortran Runtime Library (RTL) generates appropriate messages and takes action to recover from errors whenever possible.

For a description of many Intel® Fortran runtime error messages, see List of Runtime Error Messages.

There are a few tools and aids that are useful when an application fails and you need to diagnose the error. Compiler-generated machine code listings and linker-generated map files can help you understand the effects of compiler optimizations and to see how your application is laid out in memory. They may help you interpret the information provided in a stack trace at the time of the error. See Generating Listing and Map Files.

Force a Core Dump for Severe Errors

You can force a core dump for severe errors that do not usually cause a core file to be created. Before running the program, set the FOR_DUMP_CORE_FILE environment variable to TRUE to cause severe errors to create a core file. See the "Supported Environments Variables" topic for valid values of TRUE and FALSE.

For instance, the following C shell command sets the FOR_DUMP_CORE_FILE environment variable:

setenv FOR_DUMP_CORE_FILE y

The core file is written to the current directory and can be examined using a debugger.

NOTE:

If you requested a core file to be created on severe errors and you do not get one when expected, the problem might be that your process limit for the allowable size of a core file is set too low (or to zero). See the man page for your shell for information on setting process limits. For example, the C shell command limit (with no arguments) will report your current settings, and limit coredumpsize unlimited will raise the allowable limit to your current system maximum.