[cfe-dev] Precompiled header without prefix header ?

Argyrios Kyrtzidis akyrtzi at gmail.com
Wed Mar 20 18:11:08 PDT 2013


On Mar 20, 2013, at 7:24 AM, Fabien Sanglard <fabiensanglard.net at gmail.com> wrote:

> So the documentation at (http://clang.llvm.org/docs/UsersManual.html#usersmanual-precompiled-headers) should be disregarded  ?

There's some misunderstanding, what I said was that you should follow the documentation and use an -include "precomp_common.h" option.
 "precomp_common.h" should be multiple-includes-guarded (e.g. with a guard macro or "#pragma once") thus the #ifndef in

> #ifndef __clang__
>   #include "precomp_common.h"
> #endif

will be unnecessary.

> 
> Fabien
> 
> On Mon, Mar 18, 2013 at 9:41 PM, Argyrios Kyrtzidis <akyrtzi at gmail.com> wrote:
> On Mar 18, 2013, at 12:44 PM, fab <fabiensanglard.net at gmail.com> wrote:
> 
>> I am working on a cross-platform codebase on Clang/MacOS X that is also
>> compiled with Visual Studio on Windows and GCC on Linux.
>> 
>> The source code headers always include "precomp_common.h" at the top of each
>> header files. But according to the Clang documentation
>> (http://clang.llvm.org/docs/UsersManual.html#usersmanual-precompiled-headers)
>> Clang will NOT use the PCH in this case and no speed up will be performed
>> since it was not include via "- include".
>> 
>> Using Clang it seems the only way is to perform a conditional include:
>> 
>> 1.
>> #ifndef __clang__
>>   #include "precomp_common.h"
>> #endif
>> 
>> 2. Add "precomp_common.h" to the prefix header via -include option.
> 
> You don't need to do 1.; by doing 2. the "#include "precomp_common.h" will just be skipped.
> 
>> 
>> I wonder if there is a "cleaner" way to do it.
>> 
>> 
>> 
>> --
>> View this message in context: http://clang-developers.42468.n3.nabble.com/Precompiled-header-without-prefix-header-tp4031029.html
>> Sent from the Clang Developers mailing list archive at Nabble.com.
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
> 
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20130320/a7cfbdce/attachment.html>


More information about the cfe-dev mailing list