aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema/TypeLocBuilder.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Sema/TypeLocBuilder.h')
-rw-r--r--lib/Sema/TypeLocBuilder.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Sema/TypeLocBuilder.h b/lib/Sema/TypeLocBuilder.h
index 3570737d11..f0944f1205 100644
--- a/lib/Sema/TypeLocBuilder.h
+++ b/lib/Sema/TypeLocBuilder.h
@@ -87,6 +87,15 @@ class TypeLocBuilder {
Index = Capacity;
}
+ /// \brief Tell the TypeLocBuilder that the type it is storing has been
+ /// modified in some safe way that doesn't affect type-location information.
+ void TypeWasModifiedSafely(QualType T) {
+#ifndef NDEBUG
+ assert(T.getLocalUnqualifiedType() == LastTy.getLocalUnqualifiedType());
+ LastTy = T;
+#endif
+ }
+
/// Pushes space for a new TypeLoc of the given type. Invalidates
/// any TypeLocs previously retrieved from this builder.
template <class TyLocType> TyLocType push(QualType T) {