# Yu

Tells the compiler to use a precompiled header file.

## Syntax

Linux: | None

Windows: | /Yu[filename]

## Arguments

filename | Is the name of a C/C++ header file, which is included in the source file using an #include preprocessor directive.

## Default

OFF | The compiler does not use precompiled header files unless it is told to do so.

## Description

This option tells the compiler to use a precompiled header (PCH) file.

It is supported for multiple source files when all source files use the same .pchi file.

The compiler treats all code occurring before the header file as precompiled. It skips to just beyond the #include directive associated with the header file, uses the code contained in the PCH file, and then compiles all code after filename.

If you do not specify filename, the compiler will use a PCH with a name based on the source file name. If you specify option /Fp, it will use the PCH specified by that option.

When this option is specified, the compiler ignores all text, including declarations preceding the #include statement of the specified file.

This option cannot be used in the same compilation as the /Yc option.

## IDE Equivalent

Visual Studio: Precompiled Headers > Precompiled Header

Eclipse: None

## Alternate Options

None

## Example

Consider the following command line:

    icx /c /Yuheader.h bar.cpp   ! specific to C++

    dpcpp-cl /c /Yuheader.h bar.cpp   ! specific to DPC++

In this case, the name of the PCH file used is "header.pchi".

In the following command line, no filename is specified:

    icx /Yu bar.cpp   ! specific to C++

    dpcpp-cl /Yu bar.cpp   ! specific to DPC++

In this case, the name of the PCH file used is "bar.pchi".

In the following command line, no filename is specified, but option /Fp is specified:

    icx /Yu /Fpprecomp bar.cpp   ! specific to C++

    dpcpp-cl /Yu /Fpprecomp bar.cpp   ! specific to DPC++

In this case, the name of the PCH file used is "precomp.pchi".

Parent topic: Output, Debug, and Precompiled Header (PCH) Options

## See Also

Yc compiler option