static CppCompositeType createJ5_syntactic_struct32(VxtManager vxtManager,
			CppCompositeType I3_struct, CppCompositeType GG1_struct, CppCompositeType I_struct,
			CppCompositeType A_struct, CppCompositeType GG2_struct, CppCompositeType GG3_struct,
			CppCompositeType C_struct, CppCompositeType E_struct, CppCompositeType CC1_struct,
			CppCompositeType CC2_struct) {
		CppCompositeType J5_struct = createStruct32("J5", 0); // TODO need without size
		try {
			if (A_struct == null) {
				A_struct = createA_syntactic_struct32(vxtManager);
			}
			if (C_struct == null) {
				C_struct = createC_syntactic_struct32(vxtManager);
			}
			if (E_struct == null) {
				E_struct = createE_syntactic_struct32(vxtManager);
			}
			if (CC1_struct == null) {
				CC1_struct = createCC1_syntactic_struct32(vxtManager);
			}
			if (CC2_struct == null) {
				CC2_struct = createCC2_syntactic_struct32(vxtManager);
			}
			if (I3_struct == null) {
				CppCompositeType G1_struct =
					createG1_syntactic_struct32(vxtManager, C_struct, E_struct);
				CppCompositeType H1_struct =
					createH1_syntactic_struct32(vxtManager, E_struct, C_struct);
				I3_struct = createI3_syntactic_struct32(vxtManager, G1_struct, H1_struct, E_struct,
					C_struct);
			}
			if (GG1_struct == null) {
				GG1_struct = createGG1_syntactic_struct32(vxtManager, CC1_struct);
			}
			if (I_struct == null) {
				CppCompositeType G_struct = createG_syntactic_struct32(vxtManager, C_struct);
				CppCompositeType H_struct = createH_syntactic_struct32(vxtManager, C_struct);
				I_struct = createI_syntactic_struct32(vxtManager, G_struct, H_struct, C_struct);
			}
			if (GG2_struct == null) {
				GG2_struct = createGG2_syntactic_struct32(vxtManager, CC2_struct);
			}
			if (GG3_struct == null) {
				GG3_struct = createGG3_syntactic_struct32(vxtManager, CC2_struct);
			}
			J5_struct.addVirtualSyntacticBaseClass(GG2_struct.getComposite(), GG2_struct);
			J5_struct.addVirtualSyntacticBaseClass(GG3_struct.getComposite(), GG3_struct);
			J5_struct.addDirectSyntacticBaseClass(I3_struct.getComposite(), I3_struct);
			J5_struct.addDirectSyntacticBaseClass(GG1_struct.getComposite(), GG1_struct);
			J5_struct.addDirectSyntacticBaseClass(I_struct.getComposite(), I_struct);
			J5_struct.addDirectSyntacticBaseClass(A_struct.getComposite(), A_struct);
			J5_struct.addMember("j51", intT, false, 0); // TODO nned syntactic without index
		}
		catch (Exception e) {
			String msg = "Error in static initialization of test: " + e;
			Msg.error(null, msg);
			throw new AssertException(msg);
		}
		return J5_struct;
	}
This is not part of the DataTypeManager API... it is only for testing when needing
 to clear results because of another run that creates the same-named types
Ghidra/Features/PDB/src/test/java/ghidra/app/util/pdb/pdbapplicator/CppCompositeTypeTest.java