File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -10274,6 +10274,24 @@ class Sema final {
10274
10274
}
10275
10275
};
10276
10276
10277
+ class SavePendingInstantiationsRAII {
10278
+ public:
10279
+ SavePendingInstantiationsRAII(Sema &S):
10280
+ SavedPendingLocalImplicitInstantiations(S), S(S) {
10281
+ SavedPendingInstantiations.swap(S.PendingInstantiations);
10282
+ }
10283
+
10284
+ ~SavePendingInstantiationsRAII() {
10285
+ assert(S.PendingInstantiations.empty() &&
10286
+ "there shouldn't be any pending instantiations");
10287
+ SavedPendingInstantiations.swap(S.PendingInstantiations);
10288
+ }
10289
+ private:
10290
+ LocalEagerInstantiationScope SavedPendingLocalImplicitInstantiations;
10291
+ Sema &S;
10292
+ std::deque<PendingImplicitInstantiation> SavedPendingInstantiations;
10293
+ };
10294
+
10277
10295
void PerformPendingInstantiations(bool LocalOnly = false);
10278
10296
10279
10297
TypeSourceInfo *SubstType(TypeSourceInfo *T,
You can’t perform that action at this time.
0 commit comments