FPT and WinFPT Reference Manual - Command-line Commands

| SimCon Home | Reference Manual Home |


CHANGE MULTIPLE ASSIGNMENTS TO SEPARATE STATEMENTS

Syntax:

[DO NOT] CHANGE MULTIPLE ASSIGNMENTS TO SEPARATE STATEMENTS

Function:

Multiple assignment statements are statements of the form, for example,

I=J=K=0

They are accepted by some, but not by all, Fortran systems. This command converts them to separate statements. Note that there are two ways in which this could be done. The statement:

R1=R2=R3=RFUN(I,P)

could be converted to:

R1=RFUN(I,P) R2=RFUN(I,P) R3=RFUN(I,P)

or to

R3=RFUN(I,P) R2=R3 R1=R2

Usually, the final right-hand side quantity is a constant or does not change in the execution of the multiple assignment, so the two alternatives are equivalent. If the right hand side is a function or an expression containing any of the variables assigned, the alternatives can produce different results. FPT generates code using the second convention, which is the observed behaviour under Encore (Gould-SEL) MPX Fortran. A diagnostic is embedded in the code to indicate that a change has been made. For example:

R3=RFUN(I,P) !------------^-------------------------------------------------- !!! FPT - 2282 Multiple assignment statement has been separated !--------------------------------------------------------------- R2=R3 R1=R2

The diagnostic may be suppressed by the SUPPRESS ERROR command.

Where to use this command:

Operating system command line

Yes


Configuration file, config.fsp

Yes


Specification (FSP) files, *.fsp

Yes


Interactively, to FPT> prompt:

Yes


Interactive command files

Yes


Embedded in the Fortran code

Yes


Default:

No change is made by default.

See also:

SUPPRESS ERROR


Copyright ©1995 to 2014 Software Validation Ltd. All rights reserved.