================
@@ -8054,6 +8054,41 @@ class DependentBitIntType final : public Type, public
llvm::FoldingSetNode {
}
};
+class PredefinedSugarType final : public Type {
+public:
+ enum Kind { SizeT, SignedSizeT, PtrdiffT };
+ friend class ASTContext;
+
+private:
+ Kind K;
+ QualType Underlying;
----------------
mizvekov wrote:
1) I don't think you need to store an Underlying type, as that is going to be
canonical for the applications we have. If we later come up with an application
where that's not the case, we can always add it back, preferably by tail
allocating it.
2) You can store Kind in the freespace of the type bit fields. See
TypedefTypeBitfields and friends for an example.
https://github.com/llvm/llvm-project/pull/143653
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits