public boolean dedupeConflicts(DataType dataType) {
		if (!(dataType instanceof DataTypeDB)) {
			return false;
		}

		lock.acquire();
		try {
			if (dataType instanceof Pointer || dataType instanceof Array) {
				dataType = DataTypeUtilities.getBaseDataType(dataType);
			}
			if (dataType == null || !contains(dataType)) {
				return false;
			}
			List<DataType> relatedByName = findDataTypesSameLocation(dataType);
			if (relatedByName.size() < 2) {
				return false;
			}
			Collections.sort(relatedByName, DataTypeComparator.INSTANCE);

			boolean success = false;
			for (int n = relatedByName.size() - 1; n != 0; n--) {
				DataType targetDt = relatedByName.get(n);

				for (int m = 0; m < n; m++) {
					DataType candidate = relatedByName.get(m);
					if (candidate.isEquivalent(targetDt)) {
						try {
							replace(targetDt, candidate);
							success = true;
							break;
						}
						catch (DataTypeDependencyException e) {
							throw new AssertionError("Unexpected condition", e);
						}
					}
				}
			}
			return success;
		}
		finally {
			lock.release();
		}
	}
De-duplicate equivalent conflict datatypes which share a common base data type name and
are found to be equivalent.

@param dataType data type whose related conflict types should be de-duplicated
@return true if one or more datatypes were de-duplicted or dde-conflicted, else false
Ghidra/Framework/SoftwareModeling/src/main/java/ghidra/program/database/data/DataTypeManagerDB.java