File tree Expand file tree Collapse file tree 3 files changed +6
-1
lines changed Expand file tree Collapse file tree 3 files changed +6
-1
lines changed Original file line number Diff line number Diff line change @@ -71,6 +71,10 @@ class FormalAccess {
71
71
virtual void finishImpl (SILGenFunction &SGF) = 0;
72
72
};
73
73
74
+ // FIXME: Misnomer. This is not used for borrowing a formal memory location
75
+ // (ExclusiveBorrowFormalAccess is always used for that). This is only used for
76
+ // formal access from a +0 value, which requires producing a "borrowed"
77
+ // SILValue.
74
78
class SharedBorrowFormalAccess : public FormalAccess {
75
79
SILValue originalValue;
76
80
SILValue borrowedValue;
Original file line number Diff line number Diff line change @@ -235,7 +235,6 @@ class KnownAddressInitialization : public SingleBufferInitialization {
235
235
void finishUninitialized (SILGenFunction &SGF) override {}
236
236
};
237
237
238
- // / Abstract base class for single-buffer initializations.
239
238
class TemporaryInitialization : public SingleBufferInitialization {
240
239
SILValue Addr;
241
240
CleanupHandle Cleanup;
Original file line number Diff line number Diff line change @@ -500,6 +500,8 @@ class InOutConversionScope {
500
500
~InOutConversionScope ();
501
501
};
502
502
503
+ // FIXME: Misnomer. This class is used for both shared (read) and exclusive
504
+ // (modify) formal borrows.
503
505
struct LLVM_LIBRARY_VISIBILITY ExclusiveBorrowFormalAccess : FormalAccess {
504
506
std::unique_ptr<LogicalPathComponent> component;
505
507
ManagedValue base;
You can’t perform that action at this time.
0 commit comments