# ffp-contract

Controls when the compiler is permitted to form fused floating-point operations, such as fused multiply-add (FMA). Fused operations are allowed to produce more precise results than performing the individual operations separately.

## Syntax

Linux: | -ffp-contract=keyword

Windows: | None

## Arguments

keyword | Possible values are:
fast | Fuses floating-point operations across statements.
on | Fuses floating-point operations within the same statement.
off | Does not fuse floating-point operations.

## Default

-ffp-contract=fast | Fuses floating-point operations across statements. However, if option -fp-model=strict is specified, the default is -ffp-contract=off.

## Description

This option controls when the compiler is permitted to form fused floating-point operations, such as fused multiply-add (FMA). Fused operations are allowed to produce more precise results than performing the individual operations separately.

## IDE Equivalent

None

## Alternate Options

None

Parent topic: Floating-Point Options

## See Also

fp-model, fp compiler option