@@ -444,7 +444,7 @@ class alignas(1 << DeclAlignInBits) Decl : public ASTAllocated<Decl> {
444444 IsStatic : 1
445445 );
446446
447- SWIFT_INLINE_BITFIELD (VarDecl, AbstractStorageDecl, 2 +1 +1 +1 +1 +1 ,
447+ SWIFT_INLINE_BITFIELD (VarDecl, AbstractStorageDecl, 2 +1 +1 +1 +1 +1 + 1 ,
448448 // / Encodes whether this is a 'let' binding.
449449 Introducer : 2 ,
450450
@@ -462,7 +462,10 @@ class alignas(1 << DeclAlignInBits) Decl : public ASTAllocated<Decl> {
462462 IsPropertyWrapperBackingProperty : 1 ,
463463
464464 // / Whether this is a lazily top-level global variable from the main file.
465- IsTopLevelGlobal : 1
465+ IsTopLevelGlobal : 1 ,
466+
467+ // / Whether this variable has no property wrapper auxiliary variables.
468+ NoPropertyWrapperAuxiliaryVariables : 1
466469 );
467470
468471 SWIFT_INLINE_BITFIELD (ParamDecl, VarDecl, 1 +2 +NumDefaultArgumentKindBits,
@@ -6118,8 +6121,19 @@ enum class PropertyWrapperSynthesizedPropertyKind {
61186121// / VarDecl - 'var' and 'let' declarations.
61196122class VarDecl : public AbstractStorageDecl {
61206123 friend class NamingPatternRequest ;
6124+ friend class PropertyWrapperAuxiliaryVariablesRequest ;
6125+
61216126 NamedPattern *NamingPattern = nullptr ;
61226127
6128+ // / True if this is a top-level global variable from the main source file.
6129+ bool hasNoPropertyWrapperAuxiliaryVariables () const {
6130+ return Bits.VarDecl .NoPropertyWrapperAuxiliaryVariables ;
6131+ }
6132+
6133+ void setHasNoPropertyWrapperAuxiliaryVariables () {
6134+ Bits.VarDecl .NoPropertyWrapperAuxiliaryVariables = true ;
6135+ }
6136+
61236137public:
61246138 enum class Introducer : uint8_t {
61256139 Let = 0 ,
0 commit comments