aboutsummaryrefslogtreecommitdiff
path: root/contrib/llvm-project/llvm/include/llvm/TableGen/Record.h
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/llvm-project/llvm/include/llvm/TableGen/Record.h')
-rw-r--r--contrib/llvm-project/llvm/include/llvm/TableGen/Record.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/contrib/llvm-project/llvm/include/llvm/TableGen/Record.h b/contrib/llvm-project/llvm/include/llvm/TableGen/Record.h
index 44daad976c12..50df38e695d7 100644
--- a/contrib/llvm-project/llvm/include/llvm/TableGen/Record.h
+++ b/contrib/llvm-project/llvm/include/llvm/TableGen/Record.h
@@ -1558,6 +1558,7 @@ private:
// Location where record was instantiated, followed by the location of
// multiclass prototypes used.
SmallVector<SMLoc, 4> Locs;
+ SmallVector<SMLoc, 0> ForwardDeclarationLocs;
SmallVector<Init *, 0> TemplateArgs;
SmallVector<RecordVal, 0> Values;
SmallVector<AssertionInfo, 0> Assertions;
@@ -1614,7 +1615,7 @@ public:
return Name;
}
- const std::string getNameInitAsString() const {
+ std::string getNameInitAsString() const {
return getNameInit()->getAsUnquotedString();
}
@@ -1623,6 +1624,13 @@ public:
ArrayRef<SMLoc> getLoc() const { return Locs; }
void appendLoc(SMLoc Loc) { Locs.push_back(Loc); }
+ ArrayRef<SMLoc> getForwardDeclarationLocs() const {
+ return ForwardDeclarationLocs;
+ }
+
+ // Update a class location when encountering a (re-)definition.
+ void updateClassLoc(SMLoc Loc);
+
// Make the type that this record should have based on its superclasses.
RecordRecTy *getType();