@@ -2860,6 +2860,20 @@ class ExternSpecifierAST final : public SpecifierAST {
28602860 auto lastSourceLocation () -> SourceLocation override ;
28612861};
28622862
2863+ class RegisterSpecifierAST final : public SpecifierAST {
2864+ public:
2865+ static constexpr ASTKind Kind = ASTKind::RegisterSpecifier;
2866+
2867+ RegisterSpecifierAST () : SpecifierAST(Kind) {}
2868+
2869+ SourceLocation registerLoc;
2870+
2871+ void accept (ASTVisitor* visitor) override { visitor->visit (this ); }
2872+
2873+ auto firstSourceLocation () -> SourceLocation override ;
2874+ auto lastSourceLocation () -> SourceLocation override ;
2875+ };
2876+
28632877class ThreadLocalSpecifierAST final : public SpecifierAST {
28642878 public:
28652879 static constexpr ASTKind Kind = ASTKind::ThreadLocalSpecifier;
@@ -4791,6 +4805,9 @@ auto visit(Visitor&& visitor, SpecifierAST* ast) {
47914805 case ExternSpecifierAST::Kind:
47924806 return std::invoke (std::forward<Visitor>(visitor),
47934807 static_cast <ExternSpecifierAST*>(ast));
4808+ case RegisterSpecifierAST::Kind:
4809+ return std::invoke (std::forward<Visitor>(visitor),
4810+ static_cast <RegisterSpecifierAST*>(ast));
47944811 case ThreadLocalSpecifierAST::Kind:
47954812 return std::invoke (std::forward<Visitor>(visitor),
47964813 static_cast <ThreadLocalSpecifierAST*>(ast));
@@ -4891,6 +4908,7 @@ template <>
48914908 case NoreturnSpecifierAST::Kind:
48924909 case StaticSpecifierAST::Kind:
48934910 case ExternSpecifierAST::Kind:
4911+ case RegisterSpecifierAST::Kind:
48944912 case ThreadLocalSpecifierAST::Kind:
48954913 case ThreadSpecifierAST::Kind:
48964914 case MutableSpecifierAST::Kind:
0 commit comments