Advertencia del compilador (nivel 1) C4727
PCH denominado pch_file con la misma marca de tiempo que se encuentra en obj_file_1 y obj_file_2. Se usa el primer PCH.
Nota:
En Visual Studio 2017 y versiones anteriores, el encabezado precompilado se denomina stdafx.h de manera predeterminada y, en Visual Studio 2019 y versiones posteriores, se denomina pch.h de manera predeterminada.
La advertencia C4727 se produce al compilar varios compilados con /Yc y donde el compilador pudo marcar todos los archivos .obj con la misma marca de tiempo .pch.
Para resolverla, compile un archivo de origen con /Yc /c (crea pch), mientras los demás se compilan por separado con /Yu /c (usa pch) y, a continuación, vincúlelos.
Por lo tanto, si hizo lo siguiente y se genera la advertencia C4727:
cl /clr /GL a.cpp b.cpp c.cpp /Ycstdafx.h
En su lugar, podría hacer lo siguiente:
cl /clr /GL a.cpp /Ycstdafx.h /c
cl /clr /GL b.cpp c.cpp /Yustdafx.h /link a.obj
cl /clr /GL a.cpp b.cpp c.cpp /Ycpch.h
En su lugar, podría hacer lo siguiente:
cl /clr /GL a.cpp /Ycpch.h /c
cl /clr /GL b.cpp c.cpp /Yupch.h /link a.obj
Para obtener más información, vea