File tree Expand file tree Collapse file tree 2 files changed +5
-8
lines changed Expand file tree Collapse file tree 2 files changed +5
-8
lines changed Original file line number Diff line number Diff line change @@ -1943,9 +1943,6 @@ class ValueDecl : public Decl {
1943
1943
ValueDeclBits.CheckedRedeclaration = false ;
1944
1944
}
1945
1945
1946
- // / The interface type, mutable because some subclasses compute this lazily.
1947
- mutable Type InterfaceTy;
1948
-
1949
1946
public:
1950
1947
// / \brief Return true if this is a definition of a decl, not a forward
1951
1948
// / declaration (e.g. of a function) that is implemented outside of the
Original file line number Diff line number Diff line change @@ -1645,12 +1645,12 @@ ValueDecl::getSatisfiedProtocolRequirements(bool Sorted) const {
1645
1645
}
1646
1646
1647
1647
bool ValueDecl::hasInterfaceType () const {
1648
- return !!InterfaceTy ;
1648
+ return !TypeAndAccess. getPointer (). isNull () ;
1649
1649
}
1650
1650
1651
1651
Type ValueDecl::getInterfaceType () const {
1652
- assert (InterfaceTy && " No interface type was set" );
1653
- return InterfaceTy ;
1652
+ assert (hasInterfaceType () && " No interface type was set" );
1653
+ return TypeAndAccess. getPointer () ;
1654
1654
}
1655
1655
1656
1656
void ValueDecl::setInterfaceType (Type type) {
@@ -1668,8 +1668,8 @@ void ValueDecl::setInterfaceType(Type type) {
1668
1668
assert (!type->hasTypeVariable () &&
1669
1669
" Archetype in interface type" );
1670
1670
}
1671
-
1672
- InterfaceTy = type;
1671
+
1672
+ TypeAndAccess. setPointer ( type) ;
1673
1673
}
1674
1674
1675
1675
Optional<ObjCSelector> ValueDecl::getObjCRuntimeName () const {
You can’t perform that action at this time.
0 commit comments