private void doSetPinned(boolean pinned) {
		lock.acquire();
		try {
			checkDeleted();
			if (pinned == isPinned()) {
				return;
			}
			if (record != null) {
				updatePinnedFlag(pinned);
				updateRecord();
				symbolMgr.symbolAnchoredFlagChanged(this);
			}
		}
		finally {
			lock.release();
		}
	}
Constructs a new MemorySymbol which corresponds to the specified symbol key and has
no record.  This is intended to support dynamic label cases which do not have a record
and do not support an external address.
@param mgr the symbol manager
@param cache symbol object cache
@param addr the address associated with the symbol
@param key this must be the absolute encoding of addr
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/symbol/MemorySymbol.java