Yc
Tells the compiler to create a
precompiled header file.
Syntax
Linux:
None
Windows:
/Yc
[
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 create or use precompiled headers unless you tell it to do so.
Description
This option tells the compiler to create a precompiled
header (PCH) file. It is supported only for single source file compilations.
When
filename
is
specified, the compiler creates a precompiled header file from the headers in
the C/C++ program up to and including the C/C++ header specified.
If you do not specify
filename
, the
compiler compiles all code up to the end of the source file, or to the point in
the source file where a hdrstop occurs. The default name for the resulting file
is the name of the source file with extension .pch.
This option cannot be used in the same compilation as the
/Yu
option.
IDE Equivalent
Visual Studio:
Precompiled Headers >
Precompiled Header File
Eclipse:
None
Alternate Options
None
Example
If option /Fp is used, it names the PCH file. For
example, consider the following command lines:
! specific to C++ icx /c /Ycheader.h /Fpprecomp foo.cpp icx /c /Yc /Fpprecomp foo.cpp
! specific to DPC++ dpcpp-cl /c /Ycheader.h /Fpprecomp foo.cpp dpcpp-cl /c /Yc /Fpprecomp foo.cpp
In both cases, the name of the PCH file is
"precomp.pch".
If the header file name is specified, the file name is
based on the header file name. For example:
icx /c /Ycheader.h foo.cpp ! specific to C++
dpcpp-cl /c /Ycheader.h foo.cpp ! specific to DPC++
In this case, the name of the PCH file is "header.pch".
If no header file name is specified, the file name is
based on the source file name. For example:
icx /c /Yc foo.cpp ! specific to C++
dpcpp-cl /c /Yc foo.cpp ! specific to DPC++
In this case, the name of the PCH file is "foo.pch".