================
Comment at: lib/Serialization/ASTReaderDecl.cpp:1080-1088
@@ -1079,5 +1079,11 @@
VisitDecl(CD);
+ unsigned ContextParamPos = Record[Idx++];
+ CD->setNothrow(Record[Idx++] != 0);
// Body is set by VisitCapturedStmt.
- for (unsigned i = 0; i < CD->NumParams; ++i)
- CD->setParam(i, ReadDeclAs<ImplicitParamDecl>(Record, Idx));
+ for (unsigned i = 0; i < CD->NumParams; ++i) {
+ if (i != ContextParamPos)
+ CD->setParam(i, ReadDeclAs<ImplicitParamDecl>(Record, Idx));
+ else
+ CD->setContextParam(i, ReadDeclAs<ImplicitParamDecl>(Record, Idx));
+ }
}
----------------
Richard Smith wrote:
> Alexey Bataev wrote:
> > Richard Smith wrote:
> > > Do you have test coverage for this?
> > Yes, parallel_codegen.cpp and parallel_ast_print.cpp.
> Do those really test the serialization/deserialization code?
Yes, take a look at these tests. There are 3 passes: 1) initial test "as is";
2) "-emit-pch" pass; 3) "-include-pch" pass. The 2-nd and the 3-rd passes check
serialization/deserialization of AST nodes.
http://reviews.llvm.org/D2883
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits