@Test
	public void testApplyDataDifference4() throws Exception {

		// 0x01003aec & 0x1003aed: same struct positioned 0ne byte address different.
		Structure struct_a1 = new StructureDataType("struct_a", 0);
		struct_a1.add(new ByteDataType());
		struct_a1.add(new DWordDataType());

		programBuilder1.applyDataType("0x01003aec", struct_a1, 1);

		programBuilder2.applyDataType("0x1003aed", struct_a1, 1);

		programMerge = new ProgramMergeManager(p1, p2);
		assertEquals(new AddressSet(addr(0x01003aec), addr(0x01003af1)),
			programMerge.getFilteredDifferences());
		mergeCodeUnitDifference(0x01003aec, 0x01003af1);
		assertEquals(new AddressSet(), programMerge.getFilteredDifferences());
	}
Test that programMerge can apply a conflicting data type difference in
Program1 and Program2.
Ghidra/Features/Base/src/test.slow/java/ghidra/program/util/ProgramMerge3Test.java