class TranslationUnit {
ASTContext* Context;
bool OwnsMetaData;
- bool OwnsDecls;
// The default ctor is only invoked during deserialization.
- explicit TranslationUnit() : Context(NULL), OwnsMetaData(true),
- OwnsDecls(true) {}
+ explicit TranslationUnit() : Context(NULL), OwnsMetaData(true){}
public:
explicit TranslationUnit(ASTContext& Ctx)
- : Context(&Ctx), OwnsMetaData(false), OwnsDecls(true) {}
-
- void SetOwnsDecls(bool val) { OwnsDecls = val; }
+ : Context(&Ctx), OwnsMetaData(false) {}
~TranslationUnit();
bool FreeMem, unsigned size_reserve) :
GlobalNestedNameSpecifier(0), CFConstantStringTypeDecl(0),
ObjCFastEnumerationStateTypeDecl(0), SourceMgr(SM), LangOpts(LOpts),
- FreeMemory(FreeMem), Target(t), Idents(idents), Selectors(sels)
-{
+ FreeMemory(FreeMem), Target(t), Idents(idents), Selectors(sels) {
if (size_reserve > 0) Types.reserve(size_reserve);
InitBuiltinTypes();
BuiltinInfo.InitializeBuiltins(idents, Target, LangOpts.NoBuiltin);
// The ASTContext object has the sole references to the IdentifierTable
// Selectors, and the Target information. Go and delete them, since
// the TranslationUnit effectively owns them.
-
- delete &(Context->Idents);
- delete &(Context->Selectors);
- delete &(Context->Target);
+ delete &Context->Idents;
+ delete &Context->Selectors;
+ delete &Context->Target;
delete Context;
}
}
virtual void Initialize(ASTContext &context);
virtual void InitializeTU(TranslationUnit &TU) {
- TU.SetOwnsDecls(false);
Initialize(TU.getContext());
}