@@ -448,7 +448,7 @@ class TypedInit : public Init {
448
448
};
449
449
450
450
// / '?' - Represents an uninitialized value.
451
- class UnsetInit : public Init {
451
+ class UnsetInit final : public Init {
452
452
friend detail::RecordKeeperImpl;
453
453
454
454
// / The record keeper that initialized this Init.
@@ -486,7 +486,7 @@ class UnsetInit : public Init {
486
486
487
487
// Represent an argument.
488
488
using ArgAuxType = std::variant<unsigned , const Init *>;
489
- class ArgumentInit : public Init , public FoldingSetNode {
489
+ class ArgumentInit final : public Init, public FoldingSetNode {
490
490
public:
491
491
enum Kind {
492
492
Positional,
@@ -638,7 +638,7 @@ class BitsInit final : public TypedInit,
638
638
};
639
639
640
640
// / '7' - Represent an initialization by a literal integer value.
641
- class IntInit : public TypedInit {
641
+ class IntInit final : public TypedInit {
642
642
int64_t Value;
643
643
644
644
explicit IntInit (RecordKeeper &RK, int64_t V)
@@ -669,7 +669,7 @@ class IntInit : public TypedInit {
669
669
};
670
670
671
671
// / "anonymous_n" - Represent an anonymous record name
672
- class AnonymousNameInit : public TypedInit {
672
+ class AnonymousNameInit final : public TypedInit {
673
673
unsigned Value;
674
674
675
675
explicit AnonymousNameInit (RecordKeeper &RK, unsigned V)
@@ -699,7 +699,7 @@ class AnonymousNameInit : public TypedInit {
699
699
};
700
700
701
701
// / "foo" - Represent an initialization by a string value.
702
- class StringInit : public TypedInit {
702
+ class StringInit final : public TypedInit {
703
703
public:
704
704
enum StringFormat {
705
705
SF_String, // Format as "text"
@@ -845,7 +845,7 @@ class OpInit : public TypedInit {
845
845
846
846
// / !op (X) - Transform an init.
847
847
// /
848
- class UnOpInit : public OpInit , public FoldingSetNode {
848
+ class UnOpInit final : public OpInit, public FoldingSetNode {
849
849
public:
850
850
enum UnaryOp : uint8_t {
851
851
TOLOWER,
@@ -908,7 +908,7 @@ class UnOpInit : public OpInit, public FoldingSetNode {
908
908
};
909
909
910
910
// / !op (X, Y) - Combine two inits.
911
- class BinOpInit : public OpInit , public FoldingSetNode {
911
+ class BinOpInit final : public OpInit, public FoldingSetNode {
912
912
public:
913
913
enum BinaryOp : uint8_t {
914
914
ADD,
@@ -995,7 +995,7 @@ class BinOpInit : public OpInit, public FoldingSetNode {
995
995
};
996
996
997
997
// / !op (X, Y, Z) - Combine two inits.
998
- class TernOpInit : public OpInit , public FoldingSetNode {
998
+ class TernOpInit final : public OpInit, public FoldingSetNode {
999
999
public:
1000
1000
enum TernaryOp : uint8_t {
1001
1001
SUBST,
@@ -1144,7 +1144,7 @@ class CondOpInit final : public TypedInit,
1144
1144
};
1145
1145
1146
1146
// / !foldl (a, b, expr, start, lst) - Fold over a list.
1147
- class FoldOpInit : public TypedInit , public FoldingSetNode {
1147
+ class FoldOpInit final : public TypedInit, public FoldingSetNode {
1148
1148
private:
1149
1149
const Init *Start, *List, *A, *B, *Expr;
1150
1150
@@ -1179,7 +1179,7 @@ class FoldOpInit : public TypedInit, public FoldingSetNode {
1179
1179
};
1180
1180
1181
1181
// / !isa<type>(expr) - Dynamically determine the type of an expression.
1182
- class IsAOpInit : public TypedInit , public FoldingSetNode {
1182
+ class IsAOpInit final : public TypedInit, public FoldingSetNode {
1183
1183
private:
1184
1184
const RecTy *CheckType;
1185
1185
const Init *Expr;
@@ -1213,7 +1213,7 @@ class IsAOpInit : public TypedInit, public FoldingSetNode {
1213
1213
1214
1214
// / !exists<type>(expr) - Dynamically determine if a record of `type` named
1215
1215
// / `expr` exists.
1216
- class ExistsOpInit : public TypedInit , public FoldingSetNode {
1216
+ class ExistsOpInit final : public TypedInit, public FoldingSetNode {
1217
1217
private:
1218
1218
const RecTy *CheckType;
1219
1219
const Init *Expr;
@@ -1246,7 +1246,7 @@ class ExistsOpInit : public TypedInit, public FoldingSetNode {
1246
1246
};
1247
1247
1248
1248
// / 'Opcode' - Represent a reference to an entire variable object.
1249
- class VarInit : public TypedInit {
1249
+ class VarInit final : public TypedInit {
1250
1250
const Init *VarName;
1251
1251
1252
1252
explicit VarInit (const Init *VN, const RecTy *T)
@@ -1320,7 +1320,7 @@ class VarBitInit final : public TypedInit {
1320
1320
};
1321
1321
1322
1322
// / AL - Represent a reference to a 'def' in the description
1323
- class DefInit : public TypedInit {
1323
+ class DefInit final : public TypedInit {
1324
1324
friend class Record ;
1325
1325
1326
1326
const Record *Def;
@@ -1409,7 +1409,7 @@ class VarDefInit final
1409
1409
};
1410
1410
1411
1411
// / X.Y - Represent a reference to a subfield of a variable
1412
- class FieldInit : public TypedInit {
1412
+ class FieldInit final : public TypedInit {
1413
1413
const Init *Rec; // Record we are referring to
1414
1414
const StringInit *FieldName; // Field we are accessing
1415
1415
0 commit comments