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

ID 767251
Date 3/31/2023
Public

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

Document Table of Contents

Glossary S

saved object

A variable that retains its association status, allocation status, definition status, and value after execution of a RETURN or END statement in the scoping unit containing the declaration.

scalar

Pertaining to data items with a rank of zero. A single data object of any intrinsic or derived data type. Contrast with array. See also rank-one object.

scalar memory reference

A reference to a scalar variable, scalar record field, or array element that resolves into a single data item (having a data type) and can be assigned a value with an assignment statement. It is similar to a scalar reference, but it excludes constants, character substrings, and expressions.

scalar reference

A reference to a scalar variable, scalar record field, derived-type component, array element, constant, character substring, or expression that resolves into a single data item having a data type.

scalar variable

A variable name specifying one storage location.

scale factor

A number indicating the location of the decimal point in a real number and, if there is no exponent, the size of the number on input.

scope

The portion of a program in which a declaration or a particular name has meaning. Scope can be global (throughout an executable program), scoping unit (local to the scoping unit), or statement (within a statement, or part of a statement).

scoping unit

The part of the program in which a name has meaning. It is one of the following:

  • A program unit or subprogram

  • A derived-type definition

  • A procedure interface body

Scoping units cannot overlap, though one scoping unit can contain another scoping unit. The outer scoping unit is called the host scoping unit.

screen coordinates

Coordinates relative to the upper left corner of the screen.

section subscript

A subscript list (enclosed in parentheses and appended to the array name) indicating a portion (section) of an array. At least one of the subscripts in the list must be a subscript triplet or vector subscript. The number of section subscripts is the rank of the array. See also array section, vector subscript, and subscript and subscript triplet, which appear below.

seed

A value (which can be assigned to a variable) that is required in order to properly determine the result of a calculation; for example, the argument k in the random number generator (RAN) function syntax:

y = RAN (k)

selector

A mechanism for designating the following:

  • Part of a data object (an array element or section, a substring, a derived type, or a structure component)

  • The set of values for which a CASE block is executed

sequence

A set ordered by a one-to-one correspondence with the numbers 1 through n, where n is the total number of elements in the sequence. A sequence can be empty (contain no elements).

sequential access

A method for retrieving or storing data in which the data (record) is read from, written to, or removed from a file based on the logical order (sequence) of the record in the file. (The record cannot be accessed directly.) Contrast with direct access.

sequential file organization

A file organization in which records are stored one after the other, in the order in which they were written to the file.

shape

The rank and extents of an array. Shape can be represented by a rank-one array (vector) whose elements are the extents in each dimension.

shape conformance

Pertains to the rule concerning operands of binary intrinsic operations in expressions: to be in shape conformance, the two operands must both be arrays of the same shape, or one or both of the operands must be scalars.

short field termination

The use of a comma (,) to terminate the field of a numeric data edit descriptor. This technique overrides the field width (w) specification in the data edit descriptor and therefore avoids padding of the input field. The comma can only terminate fields less than w characters long. See also data edit descriptor.

sibling team

Two teams are sibling teams if they were created by execution of the same FORM TEAM statement.

signal

The software mechanism used to indicate that an exception condition (abnormal event) has been detected. For example, a signal can be generated by a program or hardware error, or by request of another program.

single-precision constant

A processor approximation of the value of a real number that occupies 4 bytes of memory and can assume a positive, negative, or zero value. The precision is less than a constant of double-precision type. For the precise ranges of the single-precision constants, see Data Representation Overview in the Compiler Reference. See also subnormal number, which appears below.

size

The total number of elements in an array (the product of the extents).

source file

A program or portion of a program library, such as an object file, or image file.

specification expression

A restricted expression that is of type integer and has a scalar value. This type of expression appears only in the declaration of array bounds and character lengths.

specification statement

A nonexecutable statement that provides information about the data used in the source program. Such a statement can be used to allocate and initialize variables, arrays, records, and structures, and define other characteristics of names used in a program.

statement

An instruction in a programming language that represents a step in a sequence of actions or a set of declarations. In Standard Fortran, an ampersand can be used to continue a statement from one line to another, and a semicolon can be used to separate several statements on one line.

There are two main classes of statements: executable and nonexecutable.

statement function

A computing procedure defined by a single statement in the same program unit in which the procedure is referenced.

statement function definition

A statement that defines a statement function. Its form is the statement function name (followed by its optional dummy arguments in parentheses), followed by an equal sign (=), followed by a numeric, logical, or character expression.

A statement function definition must precede all executable statements and follow all specification statements.

statement keyword

A word that begins the syntax of a statement. All program statements (except assignment statements and statement function definitions) begin with a statement keyword. Examples are INTEGER, DO, IF, and WRITE.

statement label

See label.

static variable

A variable whose storage is allocated for the entire execution of a program.

stopped image

An image that has begun normal termination, either by execution of a STOP statement, or by execution of an END statement or END PROGRAM statement terminating the main program.

storage association

The relationship between two storage sequences when the storage unit of one is the same as the storage unit of the other. Storage association is provided by the COMMON and EQUIVALENCE statements. For modules, pointers, allocatable arrays, and automatic data objects, the SEQUENCE statement defines a storage order for structures.

storage location

An addressable unit of main memory.

storage sequence

A sequence of any number of consecutive storage units. The size of a storage sequence is the number of storage units in the storage sequence. A sequence of storage sequences forms a composite storage sequence. See also storage association and storage unit.

storage unit

In a storage sequence, the number of storage units needed to represent one real, integer, logical, or character value. See also character storage unit, numeric storage unit, and storage sequence.

strictly structured block

A Fortran BLOCK construct. See also loosely structured block.

stride

The increment between subscript values that can optionally be specified in a subscript triplet. If it is omitted, it is assumed to be one.

string edit descriptor

A format descriptor that transfers characters to an output record.

structure

Can be either of the following:

  • A scalar data object of derived (user-defined) type.

  • An aggregate entity containing one or more fields or components.

structure component

Can be either of the following:

  • One of the components of a structure.

  • An array whose elements are components of the elements of an array of derived type.

structure constructor

A mechanism that is used to specify a scalar value of a derived type. A structure constructor is the name of the type followed by a parenthesized list of values for the components of the type.

subnormal number

A computational floating-point result smaller than the lowest value in the normal range of a data type (the smallest representable normalized number). You cannot write a constant for a subnormal number. Older floating-point standard documents used the term denormal; newer standards call such numbers subnormal.

subobject

Part of a data object (parent object) that can be referenced and defined separately from other parts of the data object. A subobject can be an array element, an array section, a substring, a derived type, or a structure component. Subobjects are referenced by designators and can be considered to be data objects themselves. See also designator.

subobject designator

See designator.

subprogram

A function or subroutine subprogram that can be invoked from another program unit to perform a specific task. A subprogram can define more than one procedure if it contains an ENTRY statement. Contrast with main program. See also procedure.

subroutine

A procedure that can return many values, a single value, or no value to the calling program unit (through arguments). A subroutine is invoked by a CALL statement in another program unit.

In recent versions of Fortran, a subroutine can also be used to specify a defined assignment. Such assignments are invoked with an ASSIGNMENT(=) interface block rather than the CALL statement. See also function, statement function, and subroutine subprogram.

subroutine subprogram

A sequence of statements starting with a SUBROUTINE (or optional OPTIONS) statement and ending with the corresponding END statement. See also subroutine.

subscript

A scalar integer expression (enclosed in parentheses and appended to the array name) indicating the position of an array element. The number of subscripts is the rank of the array. See also array element.

subscript triplet

An item in a section subscript list specifying a range of values for the array section. A subscript triplet contains at least one colon and has three optional parts: a lower bound, an upper bound, and a stride. Contrast with vector subscript. See also array section and section subscript.

substring

A contiguous portion of a scalar character string. Do not confuse this with the substring selector in an array section, where the result is another array section, not a substring.

symbolic name

See name.

syntax

The formal structure of a statement or command string.