@Override
	public ProgramLocation getProgramLocation() {
		lock.acquire();
		try {
			if (!checkIsValid()) {
				return null;
			}
			Function f = getObject();
			String signature = f.getPrototypeString(false, false);
			return new FunctionReturnTypeFieldLocation(getProgram(), address, 0, signature,
				f.getReturnType().getName());
		}
		finally {
			lock.release();
		}
	}
Construct a new FunctionSymbol
@param symbolMgr the symbol manager.
@param cache symbol object cache
@param address the address for this symbol.
@param record the record for this symbol.
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/symbol/FunctionSymbol.java