• Advertisement
Sign in to follow this  

warning C4727 ?

This topic is 4408 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm using VC++ 2005 Express to write and compile my Math3D library for my engine, but now when I want to compile it in "release mode" it gives me a C4727 warning 1>warning C4727: PCH named d:\my projects\c++ 2005 express\utils\math3d\release\math3d.pch with same timestamp found in d:\My Projects\C++ 2005 Express\Utils\Math3D\Release\Math3Dfunc.obj and d:\My Projects\C++ 2005 Express\Utils\Math3D\Release\Math3Dfunc.obj. Using first PCH. 1>Math3Dfunc.obj : warning LNK4006: ___@@_PchSym_@00@UnbLkilqvxghUxQQLCAAFLvckivhhUfgrohUnzgsDwUivovzhvUxnzgircOlyq@ already defined in stdafx.obj; second definition ignored Why does it complain about that? I have searched and read about this problem and most of them is solved by adding #ifdef /#endif blocks into the header files, But I already have this blocks there. and it says a function with same stamp exists in Math3Dfunc.obj and Math3Dfunc.obj well that isn't verry strange because that is the same file.

Share this post


Link to post
Share on other sites
Advertisement
PCH stands for precompiled header and is an optimization which processes header files that change infrequently and pre-compiles them. This speeds up compilation time somewhat.

I've always found the VC PCH support quite annoying and one of the first things I do on a new project is turning it off. In your case a total clean and rebuild will probably also do the trick.

Greetz,

Illco

Share this post


Link to post
Share on other sites
I have tried to clean and rebuild but that didn't help, but it helped to disable the precompiled headers.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement