# ip, Qip

Determines whether additional interprocedural optimizations for single-file compilation are enabled.

## Syntax

Linux: | -ip -no-ip

macOS: | -ip -no-ip

Windows: | /Qip /Qip-

## Arguments

None

## Default

OFF | Some limited interprocedural optimizations occur, including inline function expansion for calls to functions defined within the current source file. These optimizations are a subset of full intra-file interprocedural optimizations. Note that this setting is not the same as -no-ip (Linux* and macOS) or /Qip- (Windows*).

## Description

This option determines whether additional interprocedural optimizations for single-file compilation are enabled.

The [Q]ip option enables additional interprocedural optimizations for single-file compilation.

Options -no-ip (Linux and macOS) and /Qip- (Windows) may not disable inlining. To ensure that inlining of user-defined functions is disabled, specify -inline-level=0or -fno-inline (Linux and macOS), or specify /Ob0 (Windows). To ensure that inliningof compiler intrinsic functions is disabled, specify -fno-builtin (Linux and macOS) or /Oi- (Windows).

## IDE Equivalent

Visual Studio: Optimization > Interprocedural Optimization

Eclipse: Optimization > Enable Interprocedural Optimizations for Single File Compilation

Xcode: Optimization > Enable Interprocedural Optimization for Single File Compilation

## Alternate Options

None

Parent topic: Interprocedural Optimization Options

## See Also

finline-functions compiler option