@Deprecated
	public static ParameterImpl getThisParameter(Function function, PrototypeModel convention) {
		if (convention != null &&
			CompilerSpec.CALLING_CONVENTION_thiscall.equals(convention.getName())) {

			DataType dt = findOrCreateClassStruct(function);
			if (dt == null) {
				dt = DataType.VOID;
			}
			dt = new PointerDataType(dt);
			DataType[] arr = new DataType[2];
			arr[0] = DataType.VOID;
			arr[1] = dt;
			VariableStorage thisStorage =
				convention.getStorageLocations(function.getProgram(), arr, true)[1];
			try {
				return new ParameterImpl("this", 0, dt, thisStorage, false, function.getProgram(),
					SourceType.ANALYSIS);
			}
			catch (InvalidInputException e) {
				Msg.error(VariableUtilities.class,
					"Error while generating 'this' parameter for function at " +
						function.getEntryPoint() + ": " + e.getMessage());
			}
		}
		return null;
	}
Generate a suitable 'this' parameter for the specified function
@param function function for which a <code>this</code> parameter is to be generated
@param convention function calling convention
@return this parameter or null of calling convention is not a 'thiscall'
or some other error prevents it
@deprecated should rely on auto-param instead - try not to use this method which may be eliminated
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/model/listing/VariableUtilities.java