@@ -121,48 +121,12 @@ Status TransactionBaseImpl::TryLock(ColumnFamilyHandle* column_family,
121
121
assume_tracked);
122
122
}
123
123
124
- #if defined(__APPLE__) && _LIBCPP_STD_VER > 14
125
- // miserable hack to access the container member of std::stack
126
- // this is done because on older xcode stl versions
127
- // std::stack::emplace does not work correctly
128
- // this hack should not be ported to new versions
129
- // please consinder to increase the xcode version
130
- // requirements instead.
131
-
132
- template <typename type>
133
- struct access {
134
- inline static type member_pointer;
135
- };
136
-
137
- template <typename type, type pointer>
138
- struct create_access : access<type> {
139
- struct assign_pointer {
140
- assign_pointer () { access <type>::member_pointer = pointer; }
141
- };
142
- inline static assign_pointer by_calling_default_ctor;
143
- };
144
-
145
-
146
- using member_type = autovector<TransactionBaseImpl::SavePoint>;
147
- using container_type = std::stack<TransactionBaseImpl::SavePoint, autovector<TransactionBaseImpl::SavePoint>>;
148
- using private_type = member_type container_type::*;
149
- template struct create_access <private_type, &container_type::c>;
150
- #endif
151
-
152
124
void TransactionBaseImpl::SetSavePoint () {
153
125
if (save_points_ == nullptr ) {
154
126
save_points_.reset (new std::stack<TransactionBaseImpl::SavePoint, autovector<TransactionBaseImpl::SavePoint>>());
155
127
}
156
-
157
- #if defined(__APPLE__) && _LIBCPP_STD_VER > 14
158
- ((*save_points_).*access <private_type>::member_pointer).emplace_back (
159
- snapshot_, snapshot_needed_, snapshot_notifier_,
160
- num_puts_, num_deletes_, num_merges_);
161
-
162
- #else
163
128
save_points_->emplace (snapshot_, snapshot_needed_, snapshot_notifier_,
164
129
num_puts_, num_deletes_, num_merges_);
165
- #endif
166
130
write_batch_.SetSavePoint ();
167
131
}
168
132
0 commit comments