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

ID 767251
Date 7/13/2023
Public

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

Document Table of Contents

Compiler Limits

The amount of data storage, the size of arrays, and the total size of executable programs are limited only by the amount of process virtual address space available, as determined by system parameters.

The table below shows the limits to the size and complexity of a single Intel® Fortran program unit and to individual statements contained within it:

Language Element

Limit

Actual number of arguments per CALL or function reference

Limited only by memory constraints

Arguments in a function reference in a specification expression

255

Array dimensions

31

(The Fortran 2018 standard supports a maximum array dimension of 15.)

Array elements per dimension

2**31-1 on systems using IA-32 architecture

2**63-1 on systems using Intel® 64 architecture

Limited by current memory configuration.

Character lengths

2**31-1 on systems using IA-32 architecture

2**63-1 on systems using Intel® 64 architecture

Constants: character and Hollerith

7198

Constants: characters read in list-directed I/O

2048 characters

Continuation lines

No fixed limit; at least 255 lines of 132 or fewer characters. Longer lines may reduce the number of allowed continuations, subject to the limit on lexical tokens per statement.

Data and I/O implied DO nesting

31

DO, CASE, FORALL, WHERE, and block IF statement nesting (combined)

512

DO loop index variable

9,223,372,036,854,775,807= 2**63-1

Format group nesting

8

Fortran source line length

fixed form: 72 (or 132 if /extend_source is in effect) characters

free form: 7200 characters

INCLUDE file nesting

20 levels

Labels in computed or assigned GOTO list

Limited only by memory constraints

Lexical tokens per statement

40000

Named common blocks

Limited only by memory constraints

Nesting of array constructor implied DOs

31

Nesting of input/output implied DOs

31

Nesting of interface blocks

Limited only by memory constraints

Nesting of DO, IF, or CASE constructs

Limited only by memory constraints

Nesting of parenthesized formats

Limited only by memory constraints

Number of arguments to MIN and MAX

Limited only by memory constraints

Number of digits in a numeric constant

Limited by statement length

Parentheses nesting in expressions

Limited only by memory constraints

Structure nesting

30

Symbolic name length

63 characters

Width field for a numeric edit descriptor

2**15-1 on systems using IA-32 architecture

2**31-1 on systems using Intel® 64 architecture

For limits of other edit descriptor fields, see Forms for Data Edit Descriptors.

For more information on memory limits for large data objects, see: