[cfe-dev] Macro history (de-)serialization implementation, need help figuring out some things

Matthieu Monrocq matthieu.monrocq at gmail.com
Sat Sep 1 03:50:37 PDT 2012

On Sat, Sep 1, 2012 at 1:36 AM, Alexander Kornienko <alexfh at google.com>wrote:

> Hi,
> I have a quick-and-dirty implementation of macro history
> (de-)serialization, but it is still not fully working. In particular, I
> still have to teach reading code to distinguish between identifiers that
> have macro definition currently, and those that had one before. I already
> taught ASTWriter to care about currently undefined macros, but I had to add
> HadMacro flag in IdentifierInfo for this purpose (hopefully there was one
> spare bit in 32-bit word for this).
> To complete this I have to gain much deeper understanding of things I'm
> changing, so I'd appreciate if someone explained me several things (or
> pointed me to the documentation if it exists): structure of PCH files and
> what is stored there, the idea behind chained PCHs and how they work, what
> are public/non-public macros (is it related to Objective C only?).
public/non-public macros (sorry, don't know about PCH):

I think it was introduced by Doug when he worked on the module system
(hopefully something for C++1x). The idea was that most macros could be
contained within a module (private macros) and only a specific few would be
declared so as to be exported.

-- Matthieu

> I'm writing this mainly to Douglas and Richard, as they have context of
> what I'm doing, but maybe someone else can help me with these things.
> Thanks in advance!
> --
> Regards,
> Alex
> _______________________________________________
> 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/20120901/8c6dc631/attachment.html>

More information about the cfe-dev mailing list