[cfe-dev] [PATCH] PCH Support for C++ decls

Andrew Sutton andrew.n.sutton at gmail.com
Fri May 7 08:01:37 PDT 2010


> It would be much easier to handle such additions as separate patches once
> the main patch has gone in. Big patches take much longer to review. We
> haven't quite dealt with all of the issues there yet.
>
> Also, friends are in a state of flux, so it's not worth trying to
> (de-)serialize them now. Once the AST settles down and access control is
> turned on by default, it will make sense to implement PCH support with
> friends.
>


After a couple months of writing papers, a dissertation, making
presentations, and interviewing, I've finally been able to sit down and work
on some code... So I'm resubmitting this patch. Sort of.

I took the previous (big) patch, re-applied it to a fresh checkout, and then
stripped out most of the updates that didn't have anything to do with
namespaces, namespace aliases, linkage specs, using directives, etc. I also
updated the NamespaceDecl to use the PtrUnion for anon/original namespace
pointers.

This might still look like a big patch, but it's not too large. I'm actually
stubbing out most of the other Decls, but will just assert if you try to
serialize them--except (C++) classes, constructors, destructors, and
conversions. These are stubbed out enough to prevent any new regressions
from the test suite, but they don't actually do anything.


> I think fixing conversion functions and the ctor-initializers are crucial
> for this patch to go in.
>

Hopefully, since you've already reviewed most of this, it can be applied in
relatively short order. After its accepted, I can re-patch and update w.r.t.
class (and member) serializations. That should be a much smaller patch, and
its easier for me to focus on.

Andrew Sutton
andrew.n.sutton at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20100507/c39f70b7/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pch-namespaces.patch
Type: text/x-patch
Size: 53823 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20100507/c39f70b7/attachment.bin>


More information about the cfe-dev mailing list